discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

damaged STL file?

J
jon
Sun, Feb 25, 2018 4:09 PM

This file will not slice properly.  NetFabb says that it has no defects,
but even after repairing it, it will not slice properly. Can any of you
find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!

Jon

--
Sent from my desktop computer.
I do not receive emails while away from my desk,
nor do I receive texts on my main phone number
(which is a land line).
If you know that I am on the road, please text me.
If you know that I am home, please email me.

This file will not slice properly.  NetFabb says that it has no defects, but even after repairing it, it will not slice properly. Can any of you find a problem with it, and if so, with what tools? http://www.jonbondy.com/sample.stl Thanks! Jon -- Sent from my desktop computer. I do not receive emails while away from my desk, nor do I receive texts on my main phone number (which is a land line). If you know that I am on the road, please text me. If you know that I am home, please email me.
NH
nop head
Sun, Feb 25, 2018 4:18 PM

NetFabb tells me it has degenerate triangles near each eye, the nose and
the chin. It can remove them if you tell it to, it doesn't by default.

On 25 February 2018 at 16:09, jon jon@jonbondy.com wrote:

This file will not slice properly.  NetFabb says that it has no defects,
but even after repairing it, it will not slice properly. Can any of you
find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!

Jon

--
Sent from my desktop computer.
I do not receive emails while away from my desk,
nor do I receive texts on my main phone number
(which is a land line).
If you know that I am on the road, please text me.
If you know that I am home, please email me.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

NetFabb tells me it has degenerate triangles near each eye, the nose and the chin. It can remove them if you tell it to, it doesn't by default. On 25 February 2018 at 16:09, jon <jon@jonbondy.com> wrote: > This file will not slice properly. NetFabb says that it has no defects, > but even after repairing it, it will not slice properly. Can any of you > find a problem with it, and if so, with what tools? > > http://www.jonbondy.com/sample.stl > > Thanks! > > Jon > > -- > Sent from my desktop computer. > I do not receive emails while away from my desk, > nor do I receive texts on my main phone number > (which is a land line). > If you know that I am on the road, please text me. > If you know that I am home, please email me. > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
CC
Chris Camacho
Sun, Feb 25, 2018 4:34 PM

the prusa version of sli3r seems to be able to handle it, but I think I
can see the problem areas, either side of the nostrils there are two
holes after slicing, it may help you track down the issue...

On 25/02/18 16:09, jon wrote:

This file will not slice properly.  NetFabb says that it has no
defects, but even after repairing it, it will not slice properly. Can
any of you find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!

Jon

the prusa version of sli3r seems to be able to handle it, but I think I can see the problem areas, either side of the nostrils there are two holes after slicing, it may help you track down the issue... On 25/02/18 16:09, jon wrote: > This file will not slice properly.  NetFabb says that it has no > defects, but even after repairing it, it will not slice properly. Can > any of you find a problem with it, and if so, with what tools? > > http://www.jonbondy.com/sample.stl > > Thanks! > > Jon >
RP
Ronaldo Persiano
Sun, Feb 25, 2018 4:36 PM

I had no trouble rendering it with OpenSCAD or slicing it with Simplify3d.

I had no trouble rendering it with OpenSCAD or slicing it with Simplify3d.
F
fred_dot_u
Sun, Feb 25, 2018 4:44 PM

I loaded the STL file into Meshmixer, Analysis, Inspector and had no errors.
I loaded the STL file into S3D and checked for non-manifold edges, none
found. When the second test on the list was run, Identify Self Intersecting
Surfaces, both the front and back faces of the monolith have an alert that
begins at the point of the chin, running downward to the right (referenced
from the front, protruding portion) to the intersection of the monolith and
the base.
http://forum.openscad.org/file/t824/facetestslice.jpg

I'm not sure why Meshmixer misses it.

When I run the preview in S3D, it proceeds beyond the alleged failure point
with no indication of failure, even though I did not perform the suggested
repair:

http://forum.openscad.org/file/t824/facetestslice2.jpg

Not necessarily a slicing or model error, the face gets rather thin and
becomes open above the nostrils:

http://forum.openscad.org/file/t824/facetestslice3.jpg

I'm not particularly qualified in Blender 2.75.1, but am aware there are 3D
modeling tools within. I ran the All Checks and the return was substantial.
I don't know enough to resolve them within Blender, however:

http://forum.openscad.org/file/t824/facetestslice4.jpg

--
Sent from: http://forum.openscad.org/

I loaded the STL file into Meshmixer, Analysis, Inspector and had no errors. I loaded the STL file into S3D and checked for non-manifold edges, none found. When the second test on the list was run, Identify Self Intersecting Surfaces, both the front and back faces of the monolith have an alert that begins at the point of the chin, running downward to the right (referenced from the front, protruding portion) to the intersection of the monolith and the base. <http://forum.openscad.org/file/t824/facetestslice.jpg> I'm not sure why Meshmixer misses it. When I run the preview in S3D, it proceeds beyond the alleged failure point with no indication of failure, even though I did not perform the suggested repair: <http://forum.openscad.org/file/t824/facetestslice2.jpg> Not necessarily a slicing or model error, the face gets rather thin and becomes open above the nostrils: <http://forum.openscad.org/file/t824/facetestslice3.jpg> I'm not particularly qualified in Blender 2.75.1, but am aware there are 3D modeling tools within. I ran the All Checks and the return was substantial. I don't know enough to resolve them within Blender, however: <http://forum.openscad.org/file/t824/facetestslice4.jpg> -- Sent from: http://forum.openscad.org/
RP
Ronaldo Persiano
Sun, Feb 25, 2018 4:44 PM


2018-02-25 13:34 GMT-03:00 Chris Camacho chris@bedroomcoders.co.uk:

the prusa version of sli3r seems to be able to handle it, but I think I
can see the problem areas, either side of the nostrils there are two holes
after slicing, it may help you track down the issue...

You are right but I don't see how this could be indigestible to any
reasonable slicer.

​ 2018-02-25 13:34 GMT-03:00 Chris Camacho <chris@bedroomcoders.co.uk>: > the prusa version of sli3r seems to be able to handle it, but I think I > can see the problem areas, either side of the nostrils there are two holes > after slicing, it may help you track down the issue... You are right but I don't see how this could be indigestible to any reasonable slicer. ​ ​
J
jon
Sun, Feb 25, 2018 4:45 PM

Interesting.  When I look at the STL using NetFabb as a viewer, I don't
see holes (which is why I was mystified).  Both IdeaMaker and CraftWare
come up with bizarre slices (IdeaMaker does worse than CraftWare).  Here
is the IdeaMaker slice.  I would like to keep using IdeaMaker, so what I
was looking for was a way to modify/fix the STL.  The fact that I cannot
see the holes in NetFabb makes that difficult to do.

On 2/25/2018 11:34 AM, Chris Camacho wrote:

the prusa version of sli3r seems to be able to handle it, but I think
I can see the problem areas, either side of the nostrils there are two
holes after slicing, it may help you track down the issue...

On 25/02/18 16:09, jon wrote:

This file will not slice properly. NetFabb says that it has no
defects, but even after repairing it, it will not slice properly. Can
any of you find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!

Jon

--
Sent from my desktop computer.
I do not receive emails while away from my desk,
nor do I receive texts on my main phone number
(which is a land line).
If you know that I am on the road, please text me.
If you know that I am home, please email me.

Interesting.  When I look at the STL using NetFabb as a viewer, I don't see holes (which is why I was mystified).  Both IdeaMaker and CraftWare come up with bizarre slices (IdeaMaker does worse than CraftWare).  Here is the IdeaMaker slice.  I would like to keep using IdeaMaker, so what I was looking for was a way to modify/fix the STL.  The fact that I cannot see the holes in NetFabb makes that difficult to do. On 2/25/2018 11:34 AM, Chris Camacho wrote: > the prusa version of sli3r seems to be able to handle it, but I think > I can see the problem areas, either side of the nostrils there are two > holes after slicing, it may help you track down the issue... > > > On 25/02/18 16:09, jon wrote: >> This file will not slice properly. NetFabb says that it has no >> defects, but even after repairing it, it will not slice properly. Can >> any of you find a problem with it, and if so, with what tools? >> >> http://www.jonbondy.com/sample.stl >> >> Thanks! >> >> Jon >> > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org -- Sent from my desktop computer. I do not receive emails while away from my desk, nor do I receive texts on my main phone number (which is a land line). If you know that I am on the road, please text me. If you know that I am home, please email me.
J
jon
Sun, Feb 25, 2018 4:59 PM

Very cool!

I can see where the slicer got confused.  There is that narrow part, and
with the spiral slicing, it needs to put two beads of filament where
there is barely room for one.  Still, I agree with the other comments
that a good slicer would work around the problem.  The IdeaMaker slicer
is set up to support the Raise3D N2 printer, so switching slicers would
involve a different kind of adventure.  Probably easier to tweak the STL.

Thanks for all of your help, and so quickly!   You guys rock!

Jon

On 2/25/2018 11:44 AM, fred_dot_u wrote:

I loaded the STL file into Meshmixer, Analysis, Inspector and had no errors.
I loaded the STL file into S3D and checked for non-manifold edges, none
found. When the second test on the list was run, Identify Self Intersecting
Surfaces, both the front and back faces of the monolith have an alert that
begins at the point of the chin, running downward to the right (referenced
from the front, protruding portion) to the intersection of the monolith and
the base.
http://forum.openscad.org/file/t824/facetestslice.jpg

I'm not sure why Meshmixer misses it.

When I run the preview in S3D, it proceeds beyond the alleged failure point
with no indication of failure, even though I did not perform the suggested
repair:

http://forum.openscad.org/file/t824/facetestslice2.jpg

Not necessarily a slicing or model error, the face gets rather thin and
becomes open above the nostrils:

http://forum.openscad.org/file/t824/facetestslice3.jpg

I'm not particularly qualified in Blender 2.75.1, but am aware there are 3D
modeling tools within. I ran the All Checks and the return was substantial.
I don't know enough to resolve them within Blender, however:

http://forum.openscad.org/file/t824/facetestslice4.jpg

--
Sent from: http://forum.openscad.org/


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Sent from my desktop computer.
I do not receive emails while away from my desk,
nor do I receive texts on my main phone number
(which is a land line).
If you know that I am on the road, please text me.
If you know that I am home, please email me.

Very cool! I can see where the slicer got confused.  There is that narrow part, and with the spiral slicing, it needs to put two beads of filament where there is barely room for one.  Still, I agree with the other comments that a good slicer would work around the problem.  The IdeaMaker slicer is set up to support the Raise3D N2 printer, so switching slicers would involve a different kind of adventure.  Probably easier to tweak the STL. Thanks for all of your help, and so quickly!   You guys rock! Jon On 2/25/2018 11:44 AM, fred_dot_u wrote: > I loaded the STL file into Meshmixer, Analysis, Inspector and had no errors. > I loaded the STL file into S3D and checked for non-manifold edges, none > found. When the second test on the list was run, Identify Self Intersecting > Surfaces, both the front and back faces of the monolith have an alert that > begins at the point of the chin, running downward to the right (referenced > from the front, protruding portion) to the intersection of the monolith and > the base. > <http://forum.openscad.org/file/t824/facetestslice.jpg> > > I'm not sure why Meshmixer misses it. > > When I run the preview in S3D, it proceeds beyond the alleged failure point > with no indication of failure, even though I did not perform the suggested > repair: > > <http://forum.openscad.org/file/t824/facetestslice2.jpg> > > Not necessarily a slicing or model error, the face gets rather thin and > becomes open above the nostrils: > > <http://forum.openscad.org/file/t824/facetestslice3.jpg> > > I'm not particularly qualified in Blender 2.75.1, but am aware there are 3D > modeling tools within. I ran the All Checks and the return was substantial. > I don't know enough to resolve them within Blender, however: > > <http://forum.openscad.org/file/t824/facetestslice4.jpg> > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > > -- Sent from my desktop computer. I do not receive emails while away from my desk, nor do I receive texts on my main phone number (which is a land line). If you know that I am on the road, please text me. If you know that I am home, please email me.
CA
Carsten Arnholm
Sun, Feb 25, 2018 8:26 PM

On 25. feb. 2018 17:09, jon wrote:

This file will not slice properly.  NetFabb says that it has no defects,
but even after repairing it, it will not slice properly. Can any of you
find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!
Jon

Hi Jon,

Maybe this helps. I did a quick test and my utility found and fixed some
issues:

download link (2 day expiry)
https://www.expirebox.com/download/0bcbf69f4f408349b2b48b8605957954.html

More details in the log below

abm_polyfix -zip sample.stl

Parameters:
input_file = sample.stl
zip =

polyhedron 0 ================= volume=73528.4, dtol=0.01, atol=1e-06,
maxiter=10
iteration 0: vertices=249000 faces=83000
warning: 7 zero area faces.
warning: nonmanifold edges: uc(1)=249000
merged 207669 vertices
removed 343 collapsed or zero area faces
split 1 face
total changes=208013
no warnings

iteration 1: vertices=41331 faces=82658
merged 4 vertices
removed 8 collapsed or zero area faces
total changes=12
no warnings

iteration 2: vertices=41327 faces=82650
merged 2 vertices
removed 4 collapsed or zero area faces
total changes=6
no warnings

iteration 3: vertices=41325 faces=82646
total changes=0
no warnings

Summary:
polyhedron 0: vertices=41325 faces=82646 : no warnings

Writing: sample_polyfix.zip

... abm_polyfix finished, time used: 0d 00h 00m 05s

Regards
Carsten Arnholm

On 25. feb. 2018 17:09, jon wrote: > This file will not slice properly.  NetFabb says that it has no defects, > but even after repairing it, it will not slice properly. Can any of you > find a problem with it, and if so, with what tools? > > http://www.jonbondy.com/sample.stl > > Thanks! > Jon Hi Jon, Maybe this helps. I did a quick test and my utility found and fixed some issues: download link (2 day expiry) https://www.expirebox.com/download/0bcbf69f4f408349b2b48b8605957954.html More details in the log below abm_polyfix -zip sample.stl Parameters: input_file = sample.stl zip = polyhedron 0 ================= volume=73528.4, dtol=0.01, atol=1e-06, maxiter=10 iteration 0: vertices=249000 faces=83000 warning: 7 zero area faces. warning: nonmanifold edges: uc(1)=249000 merged 207669 vertices removed 343 collapsed or zero area faces split 1 face total changes=208013 no warnings iteration 1: vertices=41331 faces=82658 merged 4 vertices removed 8 collapsed or zero area faces total changes=12 no warnings iteration 2: vertices=41327 faces=82650 merged 2 vertices removed 4 collapsed or zero area faces total changes=6 no warnings iteration 3: vertices=41325 faces=82646 total changes=0 no warnings Summary: polyhedron 0: vertices=41325 faces=82646 : no warnings Writing: sample_polyfix.zip ... abm_polyfix finished, time used: 0d 00h 00m 05s Regards Carsten Arnholm
RP
Ronaldo Persiano
Sun, Feb 25, 2018 10:16 PM

I don't think Netfab or any other software will be able to repair the
"holes" in your stl because the file represents a watertight model (with
some degenerated triangles). In fact, the holes are model genus like in a
torus or in a perforated cube. To repair it manually is a very hard task
due to the high number of triangles. So, either you regenerate the model
increasing its thickness (in such a way the negative mask doesn't touch the
positive one), or give up using spiral vase.

2018-02-25 13:45 GMT-03:00 jon jon@jonbondy.com:

Interesting.  When I look at the STL using NetFabb as a viewer, I don't
see holes (which is why I was mystified).  Both IdeaMaker and CraftWare
come up with bizarre slices (IdeaMaker does worse than CraftWare).  Here is
the IdeaMaker slice.  I would like to keep using IdeaMaker, so what I was
looking for was a way to modify/fix the STL.  The fact that I cannot see
the holes in NetFabb makes that difficult to do.

I don't think Netfab or any other software will be able to repair the "holes" in your stl because the file represents a watertight model (with some degenerated triangles). In fact, the holes are model genus like in a torus or in a perforated cube. To repair it manually is a very hard task due to the high number of triangles. So, either you regenerate the model increasing its thickness (in such a way the negative mask doesn't touch the positive one), or give up using spiral vase. 2018-02-25 13:45 GMT-03:00 jon <jon@jonbondy.com>: > Interesting. When I look at the STL using NetFabb as a viewer, I don't > see holes (which is why I was mystified). Both IdeaMaker and CraftWare > come up with bizarre slices (IdeaMaker does worse than CraftWare). Here is > the IdeaMaker slice. I would like to keep using IdeaMaker, so what I was > looking for was a way to modify/fix the STL. The fact that I cannot see > the holes in NetFabb makes that difficult to do. > >
RP
Ronaldo Persiano
Mon, Feb 26, 2018 12:07 AM

Revising the model with Simplify3d, I can see the holes in it only after
slicing. It seems that the distance between the front and back surfaces in
those areas is much smaller than the filament thread diameter and the
slicer ignore them. Also, there is no observable holes when the model is
loaded in Sketchup (I load it with a fair scale up). So, it seems that
there is no genus in the model but a very very thin wall in some areas.

2018-02-25 19:16 GMT-03:00 Ronaldo Persiano rcmpersiano@gmail.com:

I don't think Netfab or any other software will be able to repair the
"holes" in your stl because the file represents a watertight model (with
some degenerated triangles). In fact, the holes are model genus like in a
torus or in a perforated cube. To repair it manually is a very hard task
due to the high number of triangles. So, either you regenerate the model
increasing its thickness (in such a way the negative mask doesn't touch the
positive one), or give up using spiral vase.

Revising the model with Simplify3d, I can see the holes in it only after slicing. It seems that the distance between the front and back surfaces in those areas is much smaller than the filament thread diameter and the slicer ignore them. Also, there is no observable holes when the model is loaded in Sketchup (I load it with a fair scale up). So, it seems that there is no genus in the model but a very very thin wall in some areas. 2018-02-25 19:16 GMT-03:00 Ronaldo Persiano <rcmpersiano@gmail.com>: > I don't think Netfab or any other software will be able to repair the > "holes" in your stl because the file represents a watertight model (with > some degenerated triangles). In fact, the holes are model genus like in a > torus or in a perforated cube. To repair it manually is a very hard task > due to the high number of triangles. So, either you regenerate the model > increasing its thickness (in such a way the negative mask doesn't touch the > positive one), or give up using spiral vase. >
M
MichaelAtOz
Mon, Feb 26, 2018 12:56 AM

jon_bondy wrote

Interesting.  When I look at the STL using NetFabb as a viewer, I don't
see holes (which is why I was mystified). 

As Nophead said (his post was delayed, needing approval due to its size
BTW), NetFabb shows it has degenerate triangles. Unlike other issues, it
does not flag these with the big RED Cross.
You need to click on the Red Cross icon, make sure the check box is
selected, also press Update.

You see them as red lines:
http://forum.openscad.org/file/t359/jon_face_sample.jpg

These can generally be fixed (I've had ones it could not), via
Repair/Remove-Degenerated-Faces, I also do an auto repair after JIC.
Nopehead's post/email has the fixed STL attached.

BTW Jon, did you flatten the face to reduce overhangs?? Sorta looks that
way...


Admin - PM me if you need anything, or if I've done something stupid...

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it! http://www.ourfairdeal.org/  time is running out!

Sent from: http://forum.openscad.org/

jon_bondy wrote > Interesting.  When I look at the STL using NetFabb as a viewer, I don't > see holes (which is why I was mystified).  As Nophead said (his post was delayed, needing approval due to its size BTW), NetFabb shows it has degenerate triangles. Unlike other issues, it does not flag these with the big RED Cross. You need to click on the Red Cross icon, make sure the check box is selected, also press Update. You see them as red lines: <http://forum.openscad.org/file/t359/jon_face_sample.jpg> These can generally be fixed (I've had ones it could not), via Repair/Remove-Degenerated-Faces, I also do an auto repair after JIC. Nopehead's post/email has the fixed STL attached. BTW Jon, did you flatten the face to reduce overhangs?? Sorta looks that way... ----- Admin - PM me if you need anything, or if I've done something stupid... Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above. The TPP is no simple “trade agreement.” Fight it! http://www.ourfairdeal.org/ time is running out! -- Sent from: http://forum.openscad.org/
J
jon
Mon, Feb 26, 2018 2:32 AM

Carsten:

That certainly did fix the problem!  Your tool gets better and better!

Thanks!

Jon

On 2/25/2018 3:26 PM, Carsten Arnholm wrote:

On 25. feb. 2018 17:09, jon wrote:

This file will not slice properly. NetFabb says that it has no
defects, but even after repairing it, it will not slice properly. Can
any of you find a problem with it, and if so, with what tools?

http://www.jonbondy.com/sample.stl

Thanks!
Jon

Hi Jon,

Maybe this helps. I did a quick test and my utility found and fixed
some issues:

download link (2 day expiry)
https://www.expirebox.com/download/0bcbf69f4f408349b2b48b8605957954.html

More details in the log below

abm_polyfix -zip sample.stl

Parameters:
  input_file = sample.stl
         zip =

polyhedron 0 ================= volume=73528.4, dtol=0.01, atol=1e-06,
maxiter=10
iteration 0: vertices=249000 faces=83000
             warning: 7 zero area faces.
             warning: nonmanifold edges: uc(1)=249000
             merged 207669 vertices
             removed 343 collapsed or zero area faces
             split 1 face
             total changes=208013
             no warnings

iteration 1: vertices=41331 faces=82658
             merged 4 vertices
             removed 8 collapsed or zero area faces
             total changes=12
             no warnings

iteration 2: vertices=41327 faces=82650
             merged 2 vertices
             removed 4 collapsed or zero area faces
             total changes=6
             no warnings

iteration 3: vertices=41325 faces=82646
             total changes=0
             no warnings

Summary:
             polyhedron 0: vertices=41325 faces=82646 : no warnings

Writing: sample_polyfix.zip

... abm_polyfix finished, time used: 0d 00h 00m 05s

Regards
Carsten Arnholm


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

--
Sent from my desktop computer.
I do not receive emails while away from my desk,
nor do I receive texts on my main phone number
(which is a land line).
If you know that I am on the road, please text me.
If you know that I am home, please email me.

Carsten: That certainly did fix the problem!  Your tool gets better and better! Thanks! Jon On 2/25/2018 3:26 PM, Carsten Arnholm wrote: > On 25. feb. 2018 17:09, jon wrote: >> This file will not slice properly. NetFabb says that it has no >> defects, but even after repairing it, it will not slice properly. Can >> any of you find a problem with it, and if so, with what tools? >> >> http://www.jonbondy.com/sample.stl >> >> Thanks! >> Jon > > Hi Jon, > > Maybe this helps. I did a quick test and my utility found and fixed > some issues: > > download link (2 day expiry) > https://www.expirebox.com/download/0bcbf69f4f408349b2b48b8605957954.html > > More details in the log below > > abm_polyfix -zip sample.stl > > Parameters: >   input_file = sample.stl >          zip = > > polyhedron 0 ================= volume=73528.4, dtol=0.01, atol=1e-06, > maxiter=10 > iteration 0: vertices=249000 faces=83000 >              warning: 7 zero area faces. >              warning: nonmanifold edges: uc(1)=249000 >              merged 207669 vertices >              removed 343 collapsed or zero area faces >              split 1 face >              total changes=208013 >              no warnings > > iteration 1: vertices=41331 faces=82658 >              merged 4 vertices >              removed 8 collapsed or zero area faces >              total changes=12 >              no warnings > > iteration 2: vertices=41327 faces=82650 >              merged 2 vertices >              removed 4 collapsed or zero area faces >              total changes=6 >              no warnings > > iteration 3: vertices=41325 faces=82646 >              total changes=0 >              no warnings > > Summary: >              polyhedron 0: vertices=41325 faces=82646 : no warnings > > Writing: sample_polyfix.zip > > ... abm_polyfix finished, time used: 0d 00h 00m 05s > > > Regards > Carsten Arnholm > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org -- Sent from my desktop computer. I do not receive emails while away from my desk, nor do I receive texts on my main phone number (which is a land line). If you know that I am on the road, please text me. If you know that I am home, please email me.
G
Gadgetmind
Mon, Feb 26, 2018 9:31 AM

On 25/02/18 20:26, Carsten Arnholm wrote:

Maybe this helps. I did a quick test and my utility found and fixed
some issues:

I guess I'm been asleep, which utility?

On 25/02/18 20:26, Carsten Arnholm wrote: > > Maybe this helps. I did a quick test and my utility found and fixed > some issues: I guess I'm been asleep, which utility?
A
arnholm@arnholm.org
Mon, Feb 26, 2018 10:36 AM

On 2018-02-26 10:31, Gadgetmind wrote:

On 25/02/18 20:26, Carsten Arnholm wrote:

Maybe this helps. I did a quick test and my utility found and fixed
some issues:

I guess I'm been asleep, which utility?

It is a C++ utility I wrote (working name "abm_polyfix") for analyzing
and repairing polyhedra, reading from STL or AMF. It eliminates/merges
close vertices, eliminates zero area faces of various kinds, plus fixes
some non-manifold issues by splitting faces, etc.

Carsten Arnholm

On 2018-02-26 10:31, Gadgetmind wrote: > On 25/02/18 20:26, Carsten Arnholm wrote: > >> Maybe this helps. I did a quick test and my utility found and fixed >> some issues: > > I guess I'm been asleep, which utility? It is a C++ utility I wrote (working name "abm_polyfix") for analyzing and repairing polyhedra, reading from STL or AMF. It eliminates/merges close vertices, eliminates zero area faces of various kinds, plus fixes some non-manifold issues by splitting faces, etc. Carsten Arnholm
G
Gadgetmind
Mon, Feb 26, 2018 10:51 AM

On 26/02/18 10:36, arnholm@arnholm.org wrote:

It is a C++ utility I wrote (working name "abm_polyfix") for analyzing
and repairing polyhedra, reading from STL or AMF. It eliminates/merges
close vertices, eliminates zero area faces of various kinds, plus
fixes some non-manifold issues by splitting faces, etc.

Cool. Is it available for others to try? Linux friendly?

On 26/02/18 10:36, arnholm@arnholm.org wrote: > It is a C++ utility I wrote (working name "abm_polyfix") for analyzing > and repairing polyhedra, reading from STL or AMF. It eliminates/merges > close vertices, eliminates zero area faces of various kinds, plus > fixes some non-manifold issues by splitting faces, etc. Cool. Is it available for others to try? Linux friendly?
A
arnholm@arnholm.org
Mon, Feb 26, 2018 3:41 PM

On 2018-02-26 11:51, Gadgetmind wrote:

On 26/02/18 10:36, arnholm@arnholm.org wrote:

It is a C++ utility I wrote (working name "abm_polyfix") for
analyzing and repairing polyhedra, reading from STL or AMF. It
eliminates/merges close vertices, eliminates zero area faces of
various kinds, plus fixes some non-manifold issues by splitting
faces, etc.

Cool. Is it available for others to try? Linux friendly?

The idea is to eventually provide a web service with this + more. This
is ongoing, if delayed. "abm_polyfix" runs on Windows and Linux like
everything I do.

In general I think the thread illustrates the somewhat fuzzy nature of
repairing problematic polyhedra in general and STL files in particular
(STLs do not provide any topology, it must be guessed). Several repair
tools exist but they appear to make different assumptions leading to
different results.

Carsten Arnholm

On 2018-02-26 11:51, Gadgetmind wrote: > On 26/02/18 10:36, arnholm@arnholm.org wrote: > >> It is a C++ utility I wrote (working name "abm_polyfix") for >> analyzing and repairing polyhedra, reading from STL or AMF. It >> eliminates/merges close vertices, eliminates zero area faces of >> various kinds, plus fixes some non-manifold issues by splitting >> faces, etc. > > Cool. Is it available for others to try? Linux friendly? The idea is to eventually provide a web service with this + more. This is ongoing, if delayed. "abm_polyfix" runs on Windows and Linux like everything I do. In general I think the thread illustrates the somewhat fuzzy nature of repairing problematic polyhedra in general and STL files in particular (STLs do not provide any topology, it must be guessed). Several repair tools exist but they appear to make different assumptions leading to different results. Carsten Arnholm
JB
Jordan Brown
Mon, Feb 26, 2018 5:35 PM

On 2/26/2018 7:41 AM, arnholm@arnholm.org wrote:

In general I think the thread illustrates the somewhat fuzzy nature of
repairing problematic polyhedra in general and STL files in particular
(STLs do not provide any topology, it must be guessed). Several repair
tools exist but they appear to make different assumptions leading to
different results.

Are there other file formats that would be better?  Getting designers
like OpenSCAD and slicers to both implement something new would be
tough, but if there are clear benefits maybe it could be done.

On 2/26/2018 7:41 AM, arnholm@arnholm.org wrote: > In general I think the thread illustrates the somewhat fuzzy nature of > repairing problematic polyhedra in general and STL files in particular > (STLs do not provide any topology, it must be guessed). Several repair > tools exist but they appear to make different assumptions leading to > different results. Are there other file formats that would be better?  Getting designers like OpenSCAD and slicers to *both* implement something new would be tough, but if there are clear benefits maybe it could be done.
CA
Carsten Arnholm
Mon, Feb 26, 2018 7:44 PM

On 26. feb. 2018 18:35, Jordan Brown wrote:

Are there other file formats that would be better?  Getting designers
like OpenSCAD and slicers to both implement something new would be
tough, but if there are clear benefits maybe it could be done.

Yes, there are better formats (see below), but STL seems so entrenched
that it is very hard to get wide enough support for anything else. Some
requirements to a non-STL format I guess would be

  1. Suited for polyhedron exchange between CAD applications, not just CAD
    to slicers.

  2. Unambiguous format, with explicit topology

  3. Efficient binary storage, plus equivalent ascii text version with
    same info. Binary/Ascii should be transparent to users.

  4. It must be very simple.

etc.

OpenSCAD already support other 3D formats in addition to STL

OFF - http://paulbourke.net/dataformats/off/
AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format

Both of the above satisfy 1) and 2). AMF in its simplest form is quite
nice, but not terribly efficient, plus in my opinion it forgets 4) so it
will never become universal. OFF is a nice contender, but it does not
seem to be simple enough to be popular.

STL is both wasteful and ambiguous, it is just a sea of free floating
triangles. The binary format does not contain the same info as the text
format, etc. Its popularity is due to history only.

It seems to me super simplicity is a key. So any alternative format
should be even simpler than STL. Given that existing alternatives are
not very popular, we might as well propose something new to compete,
making simplicity the key feature while fixing some of the STL issues.
In my mind it could be something like

  • simple file header to identify ASCII/Binary
  • vertex coordinates stored only once
  • triangle faces only
  • faces defined by references to vertices, implicit normals

In other words, just the bare minimum, equivalent to the info that goes
into OpenSCAD polyhedron command. The text format would be more compact
than STL and simpler to read. The binary format would also be more
compact than STL since coordinates would be mentioned only once, and
therefore also not have any issues with interpretation.

You could say it is far too simple. But if you want it to be widely
adopted it must be extremely simple and fast. We could call it STL2 and
say it is how STL should have been defined in 1985 or so :-)

I don't have any illusions it would be successful, but if it was adopted
I think it would be helpful in avoiding some of the "damaged STL" issues
(not all) and enable easier sharing of models between various applications.

Just my thoughts, nothing else.

Carsten Arnholm

On 26. feb. 2018 18:35, Jordan Brown wrote: > Are there other file formats that would be better?  Getting designers > like OpenSCAD and slicers to *both* implement something new would be > tough, but if there are clear benefits maybe it could be done. Yes, there are better formats (see below), but STL seems so entrenched that it is very hard to get wide enough support for anything else. Some requirements to a non-STL format I guess would be 1) Suited for polyhedron exchange between CAD applications, not just CAD to slicers. 2) Unambiguous format, with explicit topology 3) Efficient binary storage, plus equivalent ascii text version with same info. Binary/Ascii should be transparent to users. 4) It must be *very* simple. etc. OpenSCAD already support other 3D formats in addition to STL OFF - http://paulbourke.net/dataformats/off/ AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format Both of the above satisfy 1) and 2). AMF in its simplest form is quite nice, but not terribly efficient, plus in my opinion it forgets 4) so it will never become universal. OFF is a nice contender, but it does not seem to be simple enough to be popular. STL is both wasteful and ambiguous, it is just a sea of free floating triangles. The binary format does not contain the same info as the text format, etc. Its popularity is due to history only. It seems to me super simplicity is a key. So any alternative format should be even simpler than STL. Given that existing alternatives are not very popular, we might as well propose something new to compete, making simplicity the key feature while fixing some of the STL issues. In my mind it could be something like * simple file header to identify ASCII/Binary * vertex coordinates stored only once * triangle faces only * faces defined by references to vertices, implicit normals In other words, just the bare minimum, equivalent to the info that goes into OpenSCAD polyhedron command. The text format would be more compact than STL and simpler to read. The binary format would also be more compact than STL since coordinates would be mentioned only once, and therefore also not have any issues with interpretation. You could say it is far too simple. But if you want it to be widely adopted it must be extremely simple and fast. We could call it STL2 and say it is how STL should have been defined in 1985 or so :-) I don't have any illusions it would be successful, but if it was adopted I think it would be helpful in avoiding some of the "damaged STL" issues (not all) and enable easier sharing of models between various applications. Just my thoughts, nothing else. Carsten Arnholm
NH
nop head
Mon, Feb 26, 2018 8:00 PM

STL is unambiguous if it is written correctly and only used to represent a
manifold model with no self intersections. That is sufficient for 3D
printing as all 3D printed objects are manifold.

While other representations can also represent non-manifold objects it
pushes the problem downstream. How do you print a non-manifold object?

On 26 February 2018 at 19:44, Carsten Arnholm arnholm@arnholm.org wrote:

On 26. feb. 2018 18:35, Jordan Brown wrote:

Are there other file formats that would be better?  Getting designers
like OpenSCAD and slicers to both implement something new would be tough,
but if there are clear benefits maybe it could be done.

Yes, there are better formats (see below), but STL seems so entrenched
that it is very hard to get wide enough support for anything else. Some
requirements to a non-STL format I guess would be

  1. Suited for polyhedron exchange between CAD applications, not just CAD
    to slicers.

  2. Unambiguous format, with explicit topology

  3. Efficient binary storage, plus equivalent ascii text version with same
    info. Binary/Ascii should be transparent to users.

  4. It must be very simple.

etc.

OpenSCAD already support other 3D formats in addition to STL

OFF - http://paulbourke.net/dataformats/off/
AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format

Both of the above satisfy 1) and 2). AMF in its simplest form is quite
nice, but not terribly efficient, plus in my opinion it forgets 4) so it
will never become universal. OFF is a nice contender, but it does not seem
to be simple enough to be popular.

STL is both wasteful and ambiguous, it is just a sea of free floating
triangles. The binary format does not contain the same info as the text
format, etc. Its popularity is due to history only.

It seems to me super simplicity is a key. So any alternative format should
be even simpler than STL. Given that existing alternatives are not very
popular, we might as well propose something new to compete, making
simplicity the key feature while fixing some of the STL issues. In my mind
it could be something like

  • simple file header to identify ASCII/Binary
  • vertex coordinates stored only once
  • triangle faces only
  • faces defined by references to vertices, implicit normals

In other words, just the bare minimum, equivalent to the info that goes
into OpenSCAD polyhedron command. The text format would be more compact
than STL and simpler to read. The binary format would also be more compact
than STL since coordinates would be mentioned only once, and therefore also
not have any issues with interpretation.

You could say it is far too simple. But if you want it to be widely
adopted it must be extremely simple and fast. We could call it STL2 and say
it is how STL should have been defined in 1985 or so :-)

I don't have any illusions it would be successful, but if it was adopted I
think it would be helpful in avoiding some of the "damaged STL" issues (not
all) and enable easier sharing of models between various applications.

Just my thoughts, nothing else.

Carsten Arnholm


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

STL is unambiguous if it is written correctly and only used to represent a manifold model with no self intersections. That is sufficient for 3D printing as all 3D printed objects are manifold. While other representations can also represent non-manifold objects it pushes the problem downstream. How do you print a non-manifold object? On 26 February 2018 at 19:44, Carsten Arnholm <arnholm@arnholm.org> wrote: > On 26. feb. 2018 18:35, Jordan Brown wrote: > >> Are there other file formats that would be better? Getting designers >> like OpenSCAD and slicers to *both* implement something new would be tough, >> but if there are clear benefits maybe it could be done. >> > > Yes, there are better formats (see below), but STL seems so entrenched > that it is very hard to get wide enough support for anything else. Some > requirements to a non-STL format I guess would be > > 1) Suited for polyhedron exchange between CAD applications, not just CAD > to slicers. > > 2) Unambiguous format, with explicit topology > > 3) Efficient binary storage, plus equivalent ascii text version with same > info. Binary/Ascii should be transparent to users. > > 4) It must be *very* simple. > > etc. > > OpenSCAD already support other 3D formats in addition to STL > > OFF - http://paulbourke.net/dataformats/off/ > AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format > > Both of the above satisfy 1) and 2). AMF in its simplest form is quite > nice, but not terribly efficient, plus in my opinion it forgets 4) so it > will never become universal. OFF is a nice contender, but it does not seem > to be simple enough to be popular. > > STL is both wasteful and ambiguous, it is just a sea of free floating > triangles. The binary format does not contain the same info as the text > format, etc. Its popularity is due to history only. > > It seems to me super simplicity is a key. So any alternative format should > be even simpler than STL. Given that existing alternatives are not very > popular, we might as well propose something new to compete, making > simplicity the key feature while fixing some of the STL issues. In my mind > it could be something like > > * simple file header to identify ASCII/Binary > * vertex coordinates stored only once > * triangle faces only > * faces defined by references to vertices, implicit normals > > In other words, just the bare minimum, equivalent to the info that goes > into OpenSCAD polyhedron command. The text format would be more compact > than STL and simpler to read. The binary format would also be more compact > than STL since coordinates would be mentioned only once, and therefore also > not have any issues with interpretation. > > You could say it is far too simple. But if you want it to be widely > adopted it must be extremely simple and fast. We could call it STL2 and say > it is how STL should have been defined in 1985 or so :-) > > I don't have any illusions it would be successful, but if it was adopted I > think it would be helpful in avoiding some of the "damaged STL" issues (not > all) and enable easier sharing of models between various applications. > > Just my thoughts, nothing else. > > > Carsten Arnholm > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
DM
doug moen
Mon, Feb 26, 2018 8:29 PM

3MF is a superior alternative to AMF.

  • It is less ambiguous, due to explicit rules on how to interpret certain
    non-manifold models that AMF leaves undefined. Specifically, it allows self
    intersection and overlapping triangles. Here's one reason why this is
    important. The union operation is not closed with respect to manifold
    meshes. If you union two manifold meshes, the result may not be manifold. I
    feel this is actually a defect in the definition of "manifold", because I
    think it's intolerable if you can't union two arbitrary shapes and be
    guaranteed to get a meaningful result. In any case, 3MF fixes this by
    defining the result of the union of two manifold meshes to be a valid 3MF
    model in all cases. AMF does not do this.
  • 3MF is an open standard, and AMF is not (you have to pay money for a copy
    of the AMF standard, and you can't redistribute your copy of this secret,
    proprietary information.)
  • 3MF has an open source library on github which interprets the standard.
  • Nop head asks "how do you print a non-manifold object?". Well, the 3MF
    standard and the associated library implementation gives some unambiguous
    answers to that, for the cases that I mention above.

OpenSCAD has a 3MF implementation underway:
https://github.com/openscad/openscad/pull/1802.

The Cura slicer used to have an AMF implementation, but got rid of it, and
they now implement 3MF instead.

I feel it is not productive or useful at this point to design yet another
mesh file format.

On 26 February 2018 at 14:44, Carsten Arnholm arnholm@arnholm.org wrote:

On 26. feb. 2018 18:35, Jordan Brown wrote:

Are there other file formats that would be better?  Getting designers
like OpenSCAD and slicers to both implement something new would be tough,
but if there are clear benefits maybe it could be done.

Yes, there are better formats (see below), but STL seems so entrenched
that it is very hard to get wide enough support for anything else. Some
requirements to a non-STL format I guess would be

  1. Suited for polyhedron exchange between CAD applications, not just CAD
    to slicers.

  2. Unambiguous format, with explicit topology

  3. Efficient binary storage, plus equivalent ascii text version with same
    info. Binary/Ascii should be transparent to users.

  4. It must be very simple.

etc.

OpenSCAD already support other 3D formats in addition to STL

OFF - http://paulbourke.net/dataformats/off/
AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format

Both of the above satisfy 1) and 2). AMF in its simplest form is quite
nice, but not terribly efficient, plus in my opinion it forgets 4) so it
will never become universal. OFF is a nice contender, but it does not seem
to be simple enough to be popular.

STL is both wasteful and ambiguous, it is just a sea of free floating
triangles. The binary format does not contain the same info as the text
format, etc. Its popularity is due to history only.

It seems to me super simplicity is a key. So any alternative format should
be even simpler than STL. Given that existing alternatives are not very
popular, we might as well propose something new to compete, making
simplicity the key feature while fixing some of the STL issues. In my mind
it could be something like

  • simple file header to identify ASCII/Binary
  • vertex coordinates stored only once
  • triangle faces only
  • faces defined by references to vertices, implicit normals

In other words, just the bare minimum, equivalent to the info that goes
into OpenSCAD polyhedron command. The text format would be more compact
than STL and simpler to read. The binary format would also be more compact
than STL since coordinates would be mentioned only once, and therefore also
not have any issues with interpretation.

You could say it is far too simple. But if you want it to be widely
adopted it must be extremely simple and fast. We could call it STL2 and say
it is how STL should have been defined in 1985 or so :-)

I don't have any illusions it would be successful, but if it was adopted I
think it would be helpful in avoiding some of the "damaged STL" issues (not
all) and enable easier sharing of models between various applications.

Just my thoughts, nothing else.

Carsten Arnholm


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

3MF is a superior alternative to AMF. * It is less ambiguous, due to explicit rules on how to interpret certain non-manifold models that AMF leaves undefined. Specifically, it allows self intersection and overlapping triangles. Here's one reason why this is important. The union operation is not closed with respect to manifold meshes. If you union two manifold meshes, the result may not be manifold. I feel this is actually a defect in the definition of "manifold", because I think it's intolerable if you can't union two arbitrary shapes and be guaranteed to get a meaningful result. In any case, 3MF fixes this by defining the result of the union of two manifold meshes to be a valid 3MF model in all cases. AMF does not do this. * 3MF is an open standard, and AMF is not (you have to pay money for a copy of the AMF standard, and you can't redistribute your copy of this secret, proprietary information.) * 3MF has an open source library on github which interprets the standard. * Nop head asks "how do you print a non-manifold object?". Well, the 3MF standard and the associated library implementation gives some unambiguous answers to that, for the cases that I mention above. OpenSCAD has a 3MF implementation underway: https://github.com/openscad/openscad/pull/1802. The Cura slicer used to have an AMF implementation, but got rid of it, and they now implement 3MF instead. I feel it is not productive or useful at this point to design yet another mesh file format. On 26 February 2018 at 14:44, Carsten Arnholm <arnholm@arnholm.org> wrote: > On 26. feb. 2018 18:35, Jordan Brown wrote: > >> Are there other file formats that would be better? Getting designers >> like OpenSCAD and slicers to *both* implement something new would be tough, >> but if there are clear benefits maybe it could be done. >> > > Yes, there are better formats (see below), but STL seems so entrenched > that it is very hard to get wide enough support for anything else. Some > requirements to a non-STL format I guess would be > > 1) Suited for polyhedron exchange between CAD applications, not just CAD > to slicers. > > 2) Unambiguous format, with explicit topology > > 3) Efficient binary storage, plus equivalent ascii text version with same > info. Binary/Ascii should be transparent to users. > > 4) It must be *very* simple. > > etc. > > OpenSCAD already support other 3D formats in addition to STL > > OFF - http://paulbourke.net/dataformats/off/ > AMF - https://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format > > Both of the above satisfy 1) and 2). AMF in its simplest form is quite > nice, but not terribly efficient, plus in my opinion it forgets 4) so it > will never become universal. OFF is a nice contender, but it does not seem > to be simple enough to be popular. > > STL is both wasteful and ambiguous, it is just a sea of free floating > triangles. The binary format does not contain the same info as the text > format, etc. Its popularity is due to history only. > > It seems to me super simplicity is a key. So any alternative format should > be even simpler than STL. Given that existing alternatives are not very > popular, we might as well propose something new to compete, making > simplicity the key feature while fixing some of the STL issues. In my mind > it could be something like > > * simple file header to identify ASCII/Binary > * vertex coordinates stored only once > * triangle faces only > * faces defined by references to vertices, implicit normals > > In other words, just the bare minimum, equivalent to the info that goes > into OpenSCAD polyhedron command. The text format would be more compact > than STL and simpler to read. The binary format would also be more compact > than STL since coordinates would be mentioned only once, and therefore also > not have any issues with interpretation. > > You could say it is far too simple. But if you want it to be widely > adopted it must be extremely simple and fast. We could call it STL2 and say > it is how STL should have been defined in 1985 or so :-) > > I don't have any illusions it would be successful, but if it was adopted I > think it would be helpful in avoiding some of the "damaged STL" issues (not > all) and enable easier sharing of models between various applications. > > Just my thoughts, nothing else. > > Carsten Arnholm > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
RP
Ronaldo Persiano
Mon, Feb 26, 2018 8:36 PM

I agree that STL is a waster format. But Arnholm four point proposal does
not assure a manifold definition neither it is more restrict than STL
format. In fact, any model expressed in a STL file may be expressed by an
OpenSCAD command whether it is a manifold or not.

Besides, with the advent of multi-material 3D print, a more general format
will be demanded representing a partition of the space in many adjacent
volumes to be filled with different materials. Although each of those
volumes might be a manifold, the whole model is not anymore.

I agree that STL is a waster format. But Arnholm four point proposal does not assure a manifold definition neither it is more restrict than STL format. In fact, any model expressed in a STL file may be expressed by an OpenSCAD command whether it is a manifold or not. Besides, with the advent of multi-material 3D print, a more general format will be demanded representing a partition of the space in many adjacent volumes to be filled with different materials. Although each of those volumes might be a manifold, the whole model is not anymore.
NH
nop head
Mon, Feb 26, 2018 8:46 PM

I have never seen a physical solid object that isn't manifold. Surely that
is impossible, so if everything you can 3D print is manifold why do need to
represent non-manifolds. They only exist mathematically, not physically.

On 26 February 2018 at 20:36, Ronaldo Persiano rcmpersiano@gmail.com
wrote:

I agree that STL is a waster format. But Arnholm four point proposal does
not assure a manifold definition neither it is more restrict than STL
format. In fact, any model expressed in a STL file may be expressed by an
OpenSCAD command whether it is a manifold or not.

Besides, with the advent of multi-material 3D print, a more general format
will be demanded representing a partition of the space in many adjacent
volumes to be filled with different materials. Although each of those
volumes might be a manifold, the whole model is not anymore.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

I have never seen a physical solid object that isn't manifold. Surely that is impossible, so if everything you can 3D print is manifold why do need to represent non-manifolds. They only exist mathematically, not physically. On 26 February 2018 at 20:36, Ronaldo Persiano <rcmpersiano@gmail.com> wrote: > I agree that STL is a waster format. But Arnholm four point proposal does > not assure a manifold definition neither it is more restrict than STL > format. In fact, any model expressed in a STL file may be expressed by an > OpenSCAD command whether it is a manifold or not. > > Besides, with the advent of multi-material 3D print, a more general format > will be demanded representing a partition of the space in many adjacent > volumes to be filled with different materials. Although each of those > volumes might be a manifold, the whole model is not anymore. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > >
RP
Ronaldo Persiano
Mon, Feb 26, 2018 9:27 PM

I have never seen a physical solid object that isn't manifold. Surely that
is impossible, so if everything you can 3D print is manifold why do need to
represent non-manifolds. They only exist mathematically, not physically.


Consider two same axis cylinders joined end to end by an union operation.
If they have the same diameter, the union will be a longer cylinder. But if
the top cylinder should be 3D printed with a opaque filament and the bottom
one with a translucent one, the longer cylinder is not a good model for
printing it. We may want a two distinct volume with a common face. That is
not neither the union of two cylinders nor a manifold.

​I agree with you but 3D printing is not the only goal of CAD system in
general and of OpenSCAD in special. It would be legitimate to use OpenSCAD
for illustration, for instance. In an illustration of a car, why must the
motor hood have a thickness instead of being just the top hood surface?
Another non-manifold object.

> I have never seen a physical solid object that isn't manifold. Surely that > is impossible, so if everything you can 3D print is manifold why do need to > represent non-manifolds. They only exist mathematically, not physically. > ​ Consider two same axis cylinders joined end to end by an union operation. If they have the same diameter, the union will be a longer cylinder. But if the top cylinder should be 3D printed with a opaque filament and the bottom one with a translucent one, the longer cylinder is not a good model for printing it. We may want a two distinct volume with a common face. That is not neither the union of two cylinders nor a manifold. ​I agree with you but 3D printing is not the only goal of CAD system in general and of OpenSCAD in special. It would be legitimate to use OpenSCAD for illustration, for instance. In an illustration of a car, why must the motor hood have a thickness instead of being just the top hood surface? Another non-manifold object.
NH
nop head
Mon, Feb 26, 2018 10:59 PM

Yes STL can't represent two manifolds touching but even if it could you
can't use it for multi-materials because there is no way to associate
properties. The simple solution is to use multiple STLs as I did nearly
nine years ago now
http://hydraraptor.blogspot.co.uk/2009/11/hacking-with-erik.html.

Yes STL is no good for illustrations or CAD interchange, it was only ever
intended for 3D printing.

On 26 February 2018 at 21:27, Ronaldo Persiano rcmpersiano@gmail.com
wrote:

I have never seen a physical solid object that isn't manifold. Surely that

is impossible, so if everything you can 3D print is manifold why do need to
represent non-manifolds. They only exist mathematically, not physically.


Consider two same axis cylinders joined end to end by an union operation.
If they have the same diameter, the union will be a longer cylinder. But if
the top cylinder should be 3D printed with a opaque filament and the bottom
one with a translucent one, the longer cylinder is not a good model for
printing it. We may want a two distinct volume with a common face. That is
not neither the union of two cylinders nor a manifold.

​I agree with you but 3D printing is not the only goal of CAD system in
general and of OpenSCAD in special. It would be legitimate to use
OpenSCAD for illustration, for instance. In an illustration of a car, why
must the motor hood have a thickness instead of being just the top hood
surface? Another non-manifold object.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

Yes STL can't represent two manifolds touching but even if it could you can't use it for multi-materials because there is no way to associate properties. The simple solution is to use multiple STLs as I did nearly nine years ago now http://hydraraptor.blogspot.co.uk/2009/11/hacking-with-erik.html. Yes STL is no good for illustrations or CAD interchange, it was only ever intended for 3D printing. On 26 February 2018 at 21:27, Ronaldo Persiano <rcmpersiano@gmail.com> wrote: > > I have never seen a physical solid object that isn't manifold. Surely that >> is impossible, so if everything you can 3D print is manifold why do need to >> represent non-manifolds. They only exist mathematically, not physically. >> > ​ > Consider two same axis cylinders joined end to end by an union operation. > If they have the same diameter, the union will be a longer cylinder. But if > the top cylinder should be 3D printed with a opaque filament and the bottom > one with a translucent one, the longer cylinder is not a good model for > printing it. We may want a two distinct volume with a common face. That is > not neither the union of two cylinders nor a manifold. > > ​I agree with you but 3D printing is not the only goal of CAD system in > general and of OpenSCAD in special. It would be legitimate to use > OpenSCAD for illustration, for instance. In an illustration of a car, why > must the motor hood have a thickness instead of being just the top hood > surface? Another non-manifold object. > > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > >
RP
Ronaldo Persiano
Tue, Feb 27, 2018 12:44 AM

Yes STL can't represent
​​
two manifolds touching but even if it could you
​​
can't use it for multi-materials because there is no way to associate
properties. The simple solution is to use multiple STLs as I did nearly
nine years ago now http://hydraraptor.blogspot.co.uk/2009/11/hacking-with-
erik.html.

​You are right saying that STL can't be used for multi-materials because
there is no way to associate properties. But it can represent

two manifolds touching. Given the STL of a cube, add two more triangles
subdividing the rectangle joining two opposed cube edges. If you want,
duplicate each of these triangles with opposed normals.

My point is: we need a model more general  than manifolds to comprise
things like multi-material 3D printing without hacked solutions. May be 3MF
is the solution.

> > > Yes STL can't represent > ​​ > two manifolds touching but even if it could you > ​​ > can't use it for multi-materials because there is no way to associate > properties. The simple solution is to use multiple STLs as I did nearly > nine years ago now http://hydraraptor.blogspot.co.uk/2009/11/hacking-with- > erik.html. > ​You are right saying that STL can't be used for multi-materials because there is no way to associate properties. But it can represent ​ two manifolds touching. Given the STL of a cube, add two more triangles subdividing the rectangle joining two opposed cube edges. If you want, duplicate each of these triangles with opposed normals. My point is: we need a model more general than manifolds to comprise things like multi-material 3D printing without hacked solutions. May be 3MF is the solution.
A
arnholm@arnholm.org
Tue, Feb 27, 2018 8:08 AM

On 2018-02-26 21:29, doug moen wrote:

3MF is a superior alternative to AMF.

That may be so. I agree that any proprietary nature of AMF is another
argument against it.

I had a very quick glance at the 3MF specs. The PDF is 50+ pages and
talks about many non-trivial aspects unrelated to the model itself.
Although it seems well documented, it does not quite meet my simplicity
requirement (#4). It is also XML based. I really like XML, but it means
it will not be super fast, and not compact.

There are very odd requirements in 3MF that the model must be in the
positive octant of the coordinate space. This tells me the format is not
generally intended for data exchange between application (failing my
#1), but probably intended specifically for 3d printers. So it isn't
what I had in mind.

  • It is less ambiguous, due to explicit rules on how to interpret
    certain non-manifold models that AMF leaves undefined. Specifically,
    it allows self intersection and overlapping triangles.

Ok, I will be blunt and say this is likely to kill it as a useful format
for exchange. It will cause problems. Consider implementing a 3MF
importer in OpenSCAD.

Here's one
reason why this is important. The union operation is not closed with
respect to manifold meshes. If you union two manifold meshes, the
result may not be manifold.

union() {
cube(100);
translate([100,100,0])cube(100);
}

The above example will typically result in a model which is explicitly
not allowed in 3MF, unless you duplicate the common edge.

https://3mf.io/wp-content/uploads/2017/10/3MF_Core_Spec_v1.2_28129.pdf
page 28

  • 3MF is an open standard, and AMF is not (you have to pay money for a
    copy of the AMF standard, and you can't redistribute your copy of this
    secret, proprietary information.)

Good point.

OpenSCAD has a 3MF implementation underway:
https://github.com/openscad/openscad/pull/1802.

That's interesting.

I feel it is not productive or useful at this point to design yet
another mesh file format.

My feeling is that if 3MF is the alternative, then STL will continue to
dominate due to its inertia. I may draft an alternative if nobody else
is interested. It will be either successful or ignored, so no harm done
:-) I guess 3MF will be useful for its purpose, but in my opinion there
should be a simpler and more compact alternative, and it isn't today's
STL.

Carsten Arnholm

On 2018-02-26 21:29, doug moen wrote: > 3MF is a superior alternative to AMF. That may be so. I agree that any proprietary nature of AMF is another argument against it. I had a very quick glance at the 3MF specs. The PDF is 50+ pages and talks about many non-trivial aspects unrelated to the model itself. Although it seems well documented, it does not quite meet my simplicity requirement (#4). It is also XML based. I really like XML, but it means it will not be super fast, and not compact. There are very odd requirements in 3MF that the model must be in the positive octant of the coordinate space. This tells me the format is not generally intended for data exchange between application (failing my #1), but probably intended specifically for 3d printers. So it isn't what I had in mind. > * It is less ambiguous, due to explicit rules on how to interpret > certain non-manifold models that AMF leaves undefined. Specifically, > it allows self intersection and overlapping triangles. Ok, I will be blunt and say this is likely to kill it as a useful format for exchange. It will cause problems. Consider implementing a 3MF importer in OpenSCAD. > Here's one > reason why this is important. The union operation is not closed with > respect to manifold meshes. If you union two manifold meshes, the > result may not be manifold. union() { cube(100); translate([100,100,0])cube(100); } The above example will typically result in a model which is explicitly not allowed in 3MF, unless you duplicate the common edge. https://3mf.io/wp-content/uploads/2017/10/3MF_Core_Spec_v1.2_28129.pdf page 28 > * 3MF is an open standard, and AMF is not (you have to pay money for a > copy of the AMF standard, and you can't redistribute your copy of this > secret, proprietary information.) Good point. > OpenSCAD has a 3MF implementation underway: > https://github.com/openscad/openscad/pull/1802. That's interesting. > I feel it is not productive or useful at this point to design yet > another mesh file format. My feeling is that if 3MF is the alternative, then STL will continue to dominate due to its inertia. I may draft an alternative if nobody else is interested. It will be either successful or ignored, so no harm done :-) I guess 3MF will be useful for its purpose, but in my opinion there should be a simpler and more compact alternative, and it isn't today's STL. Carsten Arnholm
G
Gadgetmind
Tue, Feb 27, 2018 8:30 AM

On 26/02/18 22:59, nop head wrote:

The simple solution is to use multiple STLs

I was musing on this recently.

I wanted to print a triangular prism on its side (toblerone!) with the
top flattened and a V notch then cut in this to let me stand a thin
object in it.

It wouldn't need any infill other than where the flat/notch on the top
was. I can design an object that's all the outside faces (with
thickness) and a support designed in, but would it actually work? Would
OpenSCAD cope/barf and would a slicer be happy with an object with
interior voids?

On 26/02/18 22:59, nop head wrote: > The simple solution is to use multiple STLs I was musing on this recently. I wanted to print a triangular prism on its side (toblerone!) with the top flattened and a V notch then cut in this to let me stand a thin object in it. It wouldn't need any infill other than where the flat/notch on the top was. I can design an object that's all the outside faces (with thickness) and a support designed in, but would it actually work? Would OpenSCAD cope/barf and would a slicer be happy with an object with interior voids?
NH
nop head
Tue, Feb 27, 2018 8:58 AM

I really like XML, but it means it will not be super fast, and not

compact.

IIRC 3ML has a zip wrapper to make the XML compact. It won't be supper fast
though but compared to OpenSCAD rendering and slicer execution time, not to
mention 3D printing time, I doubt speed will be an issue.

On 27 February 2018 at 08:08, arnholm@arnholm.org wrote:

On 2018-02-26 21:29, doug moen wrote:

3MF is a superior alternative to AMF.

That may be so. I agree that any proprietary nature of AMF is another
argument against it.

I had a very quick glance at the 3MF specs. The PDF is 50+ pages and talks
about many non-trivial aspects unrelated to the model itself. Although it
seems well documented, it does not quite meet my simplicity requirement
(#4). It is also XML based. I really like XML, but it means it will not be
super fast, and not compact.

There are very odd requirements in 3MF that the model must be in the
positive octant of the coordinate space. This tells me the format is not
generally intended for data exchange between application (failing my #1),
but probably intended specifically for 3d printers. So it isn't what I had
in mind.

  • It is less ambiguous, due to explicit rules on how to interpret

certain non-manifold models that AMF leaves undefined. Specifically,
it allows self intersection and overlapping triangles.

Ok, I will be blunt and say this is likely to kill it as a useful format
for exchange. It will cause problems. Consider implementing a 3MF importer
in OpenSCAD.

Here's one

reason why this is important. The union operation is not closed with
respect to manifold meshes. If you union two manifold meshes, the
result may not be manifold.

union() {
cube(100);
translate([100,100,0])cube(100);
}

The above example will typically result in a model which is explicitly not
allowed in 3MF, unless you duplicate the common edge.

https://3mf.io/wp-content/uploads/2017/10/3MF_Core_Spec_v1.2_28129.pdf
page 28

  • 3MF is an open standard, and AMF is not (you have to pay money for a

copy of the AMF standard, and you can't redistribute your copy of this
secret, proprietary information.)

Good point.

OpenSCAD has a 3MF implementation underway:

That's interesting.

I feel it is not productive or useful at this point to design yet

another mesh file format.

My feeling is that if 3MF is the alternative, then STL will continue to
dominate due to its inertia. I may draft an alternative if nobody else is
interested. It will be either successful or ignored, so no harm done :-) I
guess 3MF will be useful for its purpose, but in my opinion there should be
a simpler and more compact alternative, and it isn't today's STL.

Carsten Arnholm


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

> I really like XML, but it means it will not be super fast, and not compact. IIRC 3ML has a zip wrapper to make the XML compact. It won't be supper fast though but compared to OpenSCAD rendering and slicer execution time, not to mention 3D printing time, I doubt speed will be an issue. On 27 February 2018 at 08:08, <arnholm@arnholm.org> wrote: > On 2018-02-26 21:29, doug moen wrote: > >> 3MF is a superior alternative to AMF. >> > > That may be so. I agree that any proprietary nature of AMF is another > argument against it. > > I had a very quick glance at the 3MF specs. The PDF is 50+ pages and talks > about many non-trivial aspects unrelated to the model itself. Although it > seems well documented, it does not quite meet my simplicity requirement > (#4). It is also XML based. I really like XML, but it means it will not be > super fast, and not compact. > > There are very odd requirements in 3MF that the model must be in the > positive octant of the coordinate space. This tells me the format is not > generally intended for data exchange between application (failing my #1), > but probably intended specifically for 3d printers. So it isn't what I had > in mind. > > * It is less ambiguous, due to explicit rules on how to interpret >> certain non-manifold models that AMF leaves undefined. Specifically, >> it allows self intersection and overlapping triangles. >> > > Ok, I will be blunt and say this is likely to kill it as a useful format > for exchange. It will cause problems. Consider implementing a 3MF importer > in OpenSCAD. > > Here's one >> reason why this is important. The union operation is not closed with >> respect to manifold meshes. If you union two manifold meshes, the >> result may not be manifold. >> > > union() { > cube(100); > translate([100,100,0])cube(100); > } > > The above example will typically result in a model which is explicitly not > allowed in 3MF, unless you duplicate the common edge. > > https://3mf.io/wp-content/uploads/2017/10/3MF_Core_Spec_v1.2_28129.pdf > page 28 > > * 3MF is an open standard, and AMF is not (you have to pay money for a >> copy of the AMF standard, and you can't redistribute your copy of this >> secret, proprietary information.) >> > > Good point. > > OpenSCAD has a 3MF implementation underway: >> https://github.com/openscad/openscad/pull/1802. >> > > That's interesting. > > I feel it is not productive or useful at this point to design yet >> another mesh file format. >> > > My feeling is that if 3MF is the alternative, then STL will continue to > dominate due to its inertia. I may draft an alternative if nobody else is > interested. It will be either successful or ignored, so no harm done :-) I > guess 3MF will be useful for its purpose, but in my opinion there should be > a simpler and more compact alternative, and it isn't today's STL. > > > > Carsten Arnholm > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
MS
Mark Schafer
Tue, Feb 27, 2018 9:44 AM

I wrote a simple amf to openscad polyhedron format converter here:
- https://github.com/Neon22/amf-to-openscad-polyhedron

The xml is annoying but if you only need some of the format represented then this is a start...?

On 2/27/2018 9:30 PM, Gadgetmind wrote:

On 26/02/18 22:59, nop head wrote:

The simple solution is to use multiple STLs

I was musing on this recently.

I wanted to print a triangular prism on its side (toblerone!) with the top flattened and a V notch then cut in this to let me stand a thin object in it.

It wouldn't need any infill other than where the flat/notch on the top was. I can design an object that's all the outside faces (with thickness) and a support designed in, but would it actually work? Would OpenSCAD cope/barf and would a slicer be happy with an object with interior voids?

<pre wrap="">_______________________________________________
OpenSCAD mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Discuss@lists.openscad.org">Discuss@lists.openscad.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org">http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org</a>