discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

What are degenerate facets anyway?

CA
Carsten Arnholm
Sun, Feb 25, 2024 4:24 PM

On 2024-02-25 16:42, nop head wrote:

If you export an STL file from OpenSCAD then the vertices of triangles
that meet have exactly the same numerical value.

Read what I said "You can get away with 'feeling' as long as the
software(s) you are using all apply the same rules, but chances are they
are not exactly the same and hence you get many threads like this."

You are applying additional constraints that serves your purpose using
only one software, and that is fine. But what you claim is not generally
valid. As you explain, you still have some issues even with using only
OpenSCAD and you have to apply even more rules to get around it.

Even in your special case you would be better off using something else
than STL. But whatever.

Carsten Arnholm

On 2024-02-25 16:42, nop head wrote: > If you export an STL file from OpenSCAD then the vertices of triangles > that meet have exactly the same numerical value. Read what I said "You can get away with 'feeling' as long as the software(s) you are using all apply the same rules, but chances are they are not exactly the same and hence you get many threads like this." You are applying additional constraints that serves your purpose using only one software, and that is fine. But what you claim is not generally valid. As you explain, you still have some issues even with using only OpenSCAD and you have to apply even more rules to get around it. Even in your special case you would be better off using something else than STL. But whatever. Carsten Arnholm
CA
Carsten Arnholm
Sun, Feb 25, 2024 4:31 PM

On 2024-02-25 16:48, Chun Kit LAM via Discuss wrote:

The problem is that even if some vertices are distinct topologically,
they are considered the same if you look at their coordinates, e.g.
when two objects touch each other. And this can happen even if
OpenSCAD exports the exact numerical representation without any
truncation/rounding/snapping whatever.

That is a very good point. An additional argument why coordinate
matching is bad practice, leads to errors while at the same time
completely unnecessary given already existing alternatives.

Carsten Arnholm

On 2024-02-25 16:48, Chun Kit LAM via Discuss wrote: > The problem is that even if some vertices are distinct topologically, > they are considered the same if you look at their coordinates, e.g. > when two objects touch each other. And this can happen even if > OpenSCAD exports the exact numerical representation without any > truncation/rounding/snapping whatever. That is a very good point. An additional argument why coordinate matching is bad practice, leads to errors while at the same time completely unnecessary given already existing alternatives. Carsten Arnholm
P
pca006132
Sun, Feb 25, 2024 5:12 PM

On Mon, Feb 26, 2024, 12:50 AM Rogier Wolff via Discuss <
discuss@lists.openscad.org> wrote:

Binary STL by the way uses an array of vertices and indexes into the
vertex-array. So you could distinguis between different points in a
geometry that happen to have the same coordinates.

Do you have any reference to this? I don't see this on Wikipedia, nor from
the implementation of export_stl.cc in openscad.

On Mon, Feb 26, 2024, 12:50 AM Rogier Wolff via Discuss < discuss@lists.openscad.org> wrote: > Binary STL by the way uses an array of vertices and indexes into the > vertex-array. So you could distinguis between different points in a > geometry that happen to have the same coordinates. > Do you have any reference to this? I don't see this on Wikipedia, nor from the implementation of export_stl.cc in openscad. >
CA
Carsten Arnholm
Sun, Feb 25, 2024 5:52 PM

On 2024-02-25 15:54, Rogier Wolff wrote:

Binary STL by the way uses an array of vertices and indexes into the
vertex-array.

This is not correct. I have implemented binary STL.

Carsten Arnholm

On 2024-02-25 15:54, Rogier Wolff wrote: > Binary STL by the way uses an array of vertices and indexes into the > vertex-array. This is not correct. I have implemented binary STL. Carsten Arnholm
RW
Rogier Wolff
Sun, Feb 25, 2024 7:06 PM

On Mon, Feb 26, 2024 at 01:12:35AM +0800, pca006132 via Discuss wrote:

On Mon, Feb 26, 2024, 12:50 AM Rogier Wolff via Discuss <
discuss@lists.openscad.org> wrote:

Binary STL by the way uses an array of vertices and indexes into the
vertex-array. So you could distinguis between different points in a
geometry that happen to have the same coordinates.

Do you have any reference to this? I don't see this on Wikipedia, nor from
the implementation of export_stl.cc in openscad.

OK. It seems I was wrong. Sorry.

I recently did the math: does this strategy save space in the file. It
100% guaranteed does! Apparently when this was designed they didn't
think this was important. (because they DID find it important, the binary
variant was designed...)

Roger.

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233    **
f equals m times a. When your f is steady, and your m is going down
your a is going up.  -- Chris Hadfield about flying up the space shuttle.

On Mon, Feb 26, 2024 at 01:12:35AM +0800, pca006132 via Discuss wrote: > On Mon, Feb 26, 2024, 12:50 AM Rogier Wolff via Discuss < > discuss@lists.openscad.org> wrote: > > > Binary STL by the way uses an array of vertices and indexes into the > > vertex-array. So you could distinguis between different points in a > > geometry that happen to have the same coordinates. > > > > Do you have any reference to this? I don't see this on Wikipedia, nor from > the implementation of export_stl.cc in openscad. OK. It seems I was wrong. Sorry. I recently did the math: does this strategy save space in the file. It 100% guaranteed does! Apparently when this was designed they didn't think this was important. (because they DID find it important, the binary variant was designed...) Roger. -- ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 ** ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** f equals m times a. When your f is steady, and your m is going down your a is going up. -- Chris Hadfield about flying up the space shuttle.
GB
Glenn Butcher
Sun, Feb 25, 2024 7:12 PM

So, looking for a common denominator in my OpenSCAD->Chitubox:Basic
workflow, the only other alternative is .obj.  I've just tried an
export/import, works just fine. Looking through the file definition in
Wikipedia, no mention of triangles rather, definition of polygons and
their constituent vertices.  Am I making progress getting off .stl?

On 2/25/2024 9:24 AM, Carsten Arnholm via Discuss wrote:

On 2024-02-25 16:42, nop head wrote:

If you export an STL file from OpenSCAD then the vertices of triangles
that meet have exactly the same numerical value.

Read what I said "You can get away with 'feeling' as long as the
software(s) you are using all apply the same rules, but chances are
they are not exactly the same and hence you get many threads like this."

You are applying additional constraints that serves your purpose using
only one software, and that is fine. But what you claim is not
generally valid. As you explain, you still have some issues even with
using only OpenSCAD and you have to apply even more rules to get
around it.

Even in your special case you would be better off using something else
than STL. But whatever.

Carsten Arnholm


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

So, looking for a common denominator in my OpenSCAD->Chitubox:Basic workflow, the only other alternative is .obj.  I've just tried an export/import, works just fine. Looking through the file definition in Wikipedia, no mention of triangles rather, definition of polygons and their constituent vertices.  Am I making progress getting off .stl? On 2/25/2024 9:24 AM, Carsten Arnholm via Discuss wrote: > On 2024-02-25 16:42, nop head wrote: >> If you export an STL file from OpenSCAD then the vertices of triangles >> that meet have exactly the same numerical value. > > Read what I said "You can get away with 'feeling' as long as the > software(s) you are using all apply the same rules, but chances are > they are not exactly the same and hence you get many threads like this." > > You are applying additional constraints that serves your purpose using > only one software, and that is fine. But what you claim is not > generally valid. As you explain, you still have some issues even with > using only OpenSCAD and you have to apply even more rules to get > around it. > > Even in your special case you would be better off using something else > than STL. But whatever. > > Carsten Arnholm > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org