discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Ovals

F
FourthDr
Sun, Sep 2, 2018 9:47 AM

I see in the documentation how to create a sphere. But how would I create an
oval shape?

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

I see in the documentation how to create a sphere. But how would I create an oval shape? -- Sent from: http://forum.openscad.org/
NH
nop head
Sun, Sep 2, 2018 10:12 AM

Use scale() with different scale factors on each axis on a circle, cylinder
or sphere.

On 2 September 2018 at 10:47, FourthDr who_doctor@hotmail.com wrote:

I see in the documentation how to create a sphere. But how would I create
an
oval shape?

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


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

Use scale() with different scale factors on each axis on a circle, cylinder or sphere. On 2 September 2018 at 10:47, FourthDr <who_doctor@hotmail.com> wrote: > I see in the documentation how to create a sphere. But how would I create > an > oval shape? > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
F
FourthDr
Tue, Sep 4, 2018 5:20 AM

Hi Nophead:

I'm actually looking to create an ogive nose cone with a spherical point.
There was a model on Thingiverse someone made that included what looked like
a nice set of cones snub ogive, ogive, and conical, plus a few others. But
when I tried to cut it to fit my printer it crashed OpenSCAD. Upon closer
inspection, the model was full of errors that where not easily fixed. So I
thought I'd try and make my own. I'm looking to create the cone plus a base
that fits a body tube and includes a loop to attach a shock cord for a model
rocket. See attached model:  nosecone.zip
http://forum.openscad.org/file/t1425/nosecone.zip

Model Rocket Kit https://www.thingiverse.com/thing:685617

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

Hi Nophead: I'm actually looking to create an ogive nose cone with a spherical point. There was a model on Thingiverse someone made that included what looked like a nice set of cones snub ogive, ogive, and conical, plus a few others. But when I tried to cut it to fit my printer it crashed OpenSCAD. Upon closer inspection, the model was full of errors that where not easily fixed. So I thought I'd try and make my own. I'm looking to create the cone plus a base that fits a body tube and includes a loop to attach a shock cord for a model rocket. See attached model: nosecone.zip <http://forum.openscad.org/file/t1425/nosecone.zip> Model Rocket Kit <https://www.thingiverse.com/thing:685617> -- Sent from: http://forum.openscad.org/
CM
christophe malvasio
Tue, Sep 4, 2018 7:04 AM

the nosecone of this rocket does not look oval
basic : hull( ){translate([0,0,($Z-$1_
diameter])sphere($1_diameter);cylinder($2_diameter);}
printers are not very good with spheres
Le mar. 4 sept. 2018 à 07:21, FourthDr who_doctor@hotmail.com a écrit :

Hi Nophead:

I'm actually looking to create an ogive nose cone with a spherical point.
There was a model on Thingiverse someone made that included what looked like
a nice set of cones snub ogive, ogive, and conical, plus a few others. But
when I tried to cut it to fit my printer it crashed OpenSCAD. Upon closer
inspection, the model was full of errors that where not easily fixed. So I
thought I'd try and make my own. I'm looking to create the cone plus a base
that fits a body tube and includes a loop to attach a shock cord for a model
rocket. See attached model:  nosecone.zip
http://forum.openscad.org/file/t1425/nosecone.zip

Model Rocket Kit https://www.thingiverse.com/thing:685617

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


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

the nosecone of this rocket does not look oval basic : hull( ){translate([0,0,($Z-$1_ diameter])sphere($1_diameter);cylinder($2_diameter);} printers are not very good with spheres Le mar. 4 sept. 2018 à 07:21, FourthDr <who_doctor@hotmail.com> a écrit : > > Hi Nophead: > > I'm actually looking to create an ogive nose cone with a spherical point. > There was a model on Thingiverse someone made that included what looked like > a nice set of cones snub ogive, ogive, and conical, plus a few others. But > when I tried to cut it to fit my printer it crashed OpenSCAD. Upon closer > inspection, the model was full of errors that where not easily fixed. So I > thought I'd try and make my own. I'm looking to create the cone plus a base > that fits a body tube and includes a loop to attach a shock cord for a model > rocket. See attached model: nosecone.zip > <http://forum.openscad.org/file/t1425/nosecone.zip> > > Model Rocket Kit <https://www.thingiverse.com/thing:685617> > > > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
T
Troberg
Tue, Sep 4, 2018 7:21 AM

How I would have done the nose cone:

A succession of spheres of appropriate sizes (just calculate the diameter at
different heights), hull() them together. It doesn't take many spheres to
get a good, smooth surface.

Then, of course, cut off the bottom with difference().

If you want it hollow, make another, scale it down a bit, and use
difference() to hollow the first one out.

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

How I would have done the nose cone: A succession of spheres of appropriate sizes (just calculate the diameter at different heights), hull() them together. It doesn't take many spheres to get a good, smooth surface. Then, of course, cut off the bottom with difference(). If you want it hollow, make another, scale it down a bit, and use difference() to hollow the first one out. -- Sent from: http://forum.openscad.org/
NH
nop head
Tue, Sep 4, 2018 8:03 AM

I had to look up https://en.wikipedia.org/wiki/Ogive. Looks like you can
rotate_extrude the intersection of a circle and a square.

On 4 September 2018 at 08:21, Troberg troberg.anders@gmail.com wrote:

How I would have done the nose cone:

A succession of spheres of appropriate sizes (just calculate the diameter
at
different heights), hull() them together. It doesn't take many spheres to
get a good, smooth surface.

Then, of course, cut off the bottom with difference().

If you want it hollow, make another, scale it down a bit, and use
difference() to hollow the first one out.

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


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

I had to look up https://en.wikipedia.org/wiki/Ogive. Looks like you can rotate_extrude the intersection of a circle and a square. On 4 September 2018 at 08:21, Troberg <troberg.anders@gmail.com> wrote: > How I would have done the nose cone: > > A succession of spheres of appropriate sizes (just calculate the diameter > at > different heights), hull() them together. It doesn't take many spheres to > get a good, smooth surface. > > Then, of course, cut off the bottom with difference(). > > If you want it hollow, make another, scale it down a bit, and use > difference() to hollow the first one out. > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
F
FourthDr
Tue, Sep 4, 2018 9:32 AM

Troberg:

Not quite sure I visualize how you are suggesting I code up a cone. Would
that produce a true ogive? And then how would I add a spherical tip instead
of the usual point? Have some example code?

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

Troberg: Not quite sure I visualize how you are suggesting I code up a cone. Would that produce a true ogive? And then how would I add a spherical tip instead of the usual point? Have some example code? -- Sent from: http://forum.openscad.org/
NH
nop head
Tue, Sep 4, 2018 10:31 AM

From the diagram on Wikipedia I saw that half the cross section of an ogive

is the intersection of a circle and a rectangle.

To blunt the point you need to position another circle that is tangential
to the first one and truncate the ogive at the tangential point and then
hull it with a semi circle.

Using the formula here: http://mathworld.wolfram.com/TangentCircles.html

On 4 September 2018 at 10:32, FourthDr who_doctor@hotmail.com wrote:

Troberg:

Not quite sure I visualize how you are suggesting I code up a cone. Would
that produce a true ogive? And then how would I add a spherical tip instead
of the usual point? Have some example code?

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


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

>From the diagram on Wikipedia I saw that half the cross section of an ogive is the intersection of a circle and a rectangle. To blunt the point you need to position another circle that is tangential to the first one and truncate the ogive at the tangential point and then hull it with a semi circle. Using the formula here: http://mathworld.wolfram.com/TangentCircles.html On 4 September 2018 at 10:32, FourthDr <who_doctor@hotmail.com> wrote: > Troberg: > > Not quite sure I visualize how you are suggesting I code up a cone. Would > that produce a true ogive? And then how would I add a spherical tip instead > of the usual point? Have some example code? > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
C
cbernhardt
Tue, Sep 4, 2018 3:00 PM

Or, if you have access to a CAD program that creates DXF files you could draw
the ogive shape as a cross section of a shell and import it.
http://forum.openscad.org/file/t1309/ogive.jpg

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

Or, if you have access to a CAD program that creates DXF files you could draw the ogive shape as a cross section of a shell and import it. <http://forum.openscad.org/file/t1309/ogive.jpg> -- Sent from: http://forum.openscad.org/
J
jsc
Tue, Sep 4, 2018 3:44 PM

On the subject of rocket nosecones, I created an OpenSCAD model some time ago
to generate Haack series shapes:

https://www.thingiverse.com/thing:804129

These shapes are calculated to minimize drag in supersonic flows, so not
something that is functionally useful for model rockets. Still, I thought it
might be of interest.

Some work would need to be done to make it suitable for fitting to a rocket.

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

On the subject of rocket nosecones, I created an OpenSCAD model some time ago to generate Haack series shapes: https://www.thingiverse.com/thing:804129 These shapes are calculated to minimize drag in supersonic flows, so not something that is functionally useful for model rockets. Still, I thought it might be of interest. Some work would need to be done to make it suitable for fitting to a rocket. -- Sent from: http://forum.openscad.org/
RD
Revar Desmera
Tue, Sep 4, 2018 8:41 PM

On Sep 4, 2018, at 8:44 AM, jsc jsc@alum.mit.edu wrote:

On the subject of rocket nosecones, I created an OpenSCAD model some time ago
to generate Haack series shapes:

https://www.thingiverse.com/thing:804129

These shapes are calculated to minimize drag in supersonic flows, so not
something that is functionally useful for model rockets. Still, I thought it
might be of interest.

Some work would need to be done to make it suitable for fitting to a rocket.

Of course I only see this post AFTER I wrote my own.  :)
Well, I might as well post it:

pi = 3.1415926536;

function haack(x, L, R, C) = let(
h = acos(1-(2x/L))
) (R/sqrt(pi)) * sqrt(h
pi/180 - sin(2h)/2 + Cpow(sin(h),3));

function haack_series(L, R, C, steps) = [
for(i = [0:steps]) let(x = i*L/steps) [x, haack(x, L, R, C)]
];

// L is the length of the nosecone.
// R is the radius of the nosecone base.
// C should be 0 for a Von-Kármán ogive.
// steps is the granularity of the shape along the length.
module haack_nosecone(L, R, C=0, steps=100) {
pts=concat(
haack_series(L, R, C, steps),
[[L, R], [L, 0], [0, 0]]
);
translate([0,0,L]) {
rotate_extrude(angle=360, convexity=2) {
rotate([0,0,-90]) polygon(points=pts);
}
}
}

haack_nosecone(L=80, R=50, C=0);

  • Revar
> On Sep 4, 2018, at 8:44 AM, jsc <jsc@alum.mit.edu> wrote: > > On the subject of rocket nosecones, I created an OpenSCAD model some time ago > to generate Haack series shapes: > > https://www.thingiverse.com/thing:804129 > > These shapes are calculated to minimize drag in supersonic flows, so not > something that is functionally useful for model rockets. Still, I thought it > might be of interest. > > Some work would need to be done to make it suitable for fitting to a rocket. > Of course I only see this post AFTER I wrote my own. :) Well, I might as well post it: pi = 3.1415926536; function haack(x, L, R, C) = let( h = acos(1-(2*x/L)) ) (R/sqrt(pi)) * sqrt(h*pi/180 - sin(2*h)/2 + C*pow(sin(h),3)); function haack_series(L, R, C, steps) = [ for(i = [0:steps]) let(x = i*L/steps) [x, haack(x, L, R, C)] ]; // L is the length of the nosecone. // R is the radius of the nosecone base. // C should be 0 for a Von-Kármán ogive. // steps is the granularity of the shape along the length. module haack_nosecone(L, R, C=0, steps=100) { pts=concat( haack_series(L, R, C, steps), [[L, R], [L, 0], [0, 0]] ); translate([0,0,L]) { rotate_extrude(angle=360, convexity=2) { rotate([0,0,-90]) polygon(points=pts); } } } haack_nosecone(L=80, R=50, C=0); - Revar
F
FourthDr
Wed, Sep 5, 2018 12:16 AM

RevarBat:

Thanks for the code. I'll have to tinker with it a while. I also found this
code on another discussion forum, I added the sphere and was trying to merge
it with the cone.

// rotate-extrude test
// by Oliver Fenn
$fn=64; // Bem .: 2nd power

// Shaping function x from [x0: xe], steadily increasing in [x0: xe]
x0=0.0;
xe=1.0;
// Examples:
// x, xx, xxx,
// 1-sin(acos(x)), 1-cos(90x), 1-cos(180x), sin(90x)
// log(x+1), 1-1/(x+1)
function f(x) = 1-sin(acos(x)); // ball, at half the height of the diameter!

// Two-dimensional polygon determined by f (x), x from [x0: xe]
module shape (start, end, to)
{
steps = (end-start)/to;
polygon
(
[
for(x=[start:steps:(end+steps)])
(x<=end)?[x-start, f(x)-f(start)]:[0, f(end)-f(start)]
]
);
} // shape

// cone over radius and height
module cone_r (rad, height)
{
hfact = height/(f(xe)-f(x0));
translate([34, 34, height])
mirror([0, 0, 1])
scale([rad/(xe-x0), rad/(xe-x0), hfact]) // Scale the cone to size
rotate_extrude()
shape(x0, xe, $fn);
} // cone_r

// construction
{
//added by FourthDr
translate([34,34,112.5])
sphere(3., $fn=100);
}
cone_r(16.945, 114.94);
// join cone_r and sphere

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

RevarBat: Thanks for the code. I'll have to tinker with it a while. I also found this code on another discussion forum, I added the sphere and was trying to merge it with the cone. // rotate-extrude test // by Oliver Fenn $fn=64; // Bem .: 2nd power // Shaping function x from [x0: xe], steadily increasing in [x0: xe] x0=0.0; xe=1.0; // Examples: // x, xx, xxx, // 1-sin(acos(x)), 1-cos(90x), 1-cos(180x), sin(90x) // log(x+1), 1-1/(x+1) function f(x) = 1-sin(acos(x)); // ball, at half the height of the diameter! // Two-dimensional polygon determined by f (x), x from [x0: xe] module shape (start, end, to) { steps = (end-start)/to; polygon ( [ for(x=[start:steps:(end+steps)]) (x<=end)?[x-start, f(x)-f(start)]:[0, f(end)-f(start)] ] ); } // shape // cone over radius and height module cone_r (rad, height) { hfact = height/(f(xe)-f(x0)); translate([34, 34, height]) mirror([0, 0, 1]) scale([rad/(xe-x0), rad/(xe-x0), hfact]) // Scale the cone to size rotate_extrude() shape(x0, xe, $fn); } // cone_r // construction { //added by FourthDr translate([34,34,112.5]) sphere(3., $fn=100); } cone_r(16.945, 114.94); // join cone_r and sphere -- Sent from: http://forum.openscad.org/
F
FourthDr
Wed, Sep 5, 2018 1:02 AM

The whole reason for this exercise in the first place is because I needed to
cut the part into two to fit my printer using the pizzlecut library. I think
I can eventually get this working since it's just basically a geometric
shape problem.

But with other models, this is a huge problem. I can't just easily redesign
more complex designs/shapes. Especially, since I don't always have the
original design files just an stl file. So any time there is some problem no
matter how small with the model OpenSCAD throws a hissyfit. Sometimes I can
"fix" the model where OpenSCAD will accept it. Bust most of the time not.

Case and point, I have two models attached below that I need cut into two
parts. They both look and preview fine. My slic3r has no problems. But when
I try to cut them, OpenSCAD will not render them. And in worst case such as
with the nose cone will actually crash OpenSCAD with a C++ error.

It's too bad there is not a way to just cut with defects and all. It just
needs to be accepted by a slicer and look ok to the eye. A diagnostic tool
of some sort that could fix these problem would be great. Or that could
point out problems and give suggestions on fixing them so OpenSCAD will
accept the file.

I'm trying to get these two attached stl files split by tomorrow. I've been
tinkering with them for months. So far without success. Any one interested
in seeing if they can find and correct the two files for me? And maybe give
some tips and or suggest some software tools I have not already tried?
Cryptic CGAL errors don't really help me find and fix what OpenSCAD is
complaining about.

back-cover-no-stand-2.stl
http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl
LCD_face_plate_LCD_hole_open(repaired).stl
http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl
puzzlecutlib3.scad http://forum.openscad.org/file/t1425/puzzlecutlib3.scad

Thanks for all the help.

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

The whole reason for this exercise in the first place is because I needed to cut the part into two to fit my printer using the pizzlecut library. I think I can eventually get this working since it's just basically a geometric shape problem. But with other models, this is a huge problem. I can't just easily redesign more complex designs/shapes. Especially, since I don't always have the original design files just an stl file. So any time there is some problem no matter how small with the model OpenSCAD throws a hissyfit. Sometimes I can "fix" the model where OpenSCAD will accept it. Bust most of the time not. Case and point, I have two models attached below that I need cut into two parts. They both look and preview fine. My slic3r has no problems. But when I try to cut them, OpenSCAD will not render them. And in worst case such as with the nose cone will actually crash OpenSCAD with a C++ error. It's too bad there is not a way to just cut with defects and all. It just needs to be accepted by a slicer and look ok to the eye. A diagnostic tool of some sort that could fix these problem would be great. Or that could point out problems and give suggestions on fixing them so OpenSCAD will accept the file. I'm trying to get these two attached stl files split by tomorrow. I've been tinkering with them for months. So far without success. Any one interested in seeing if they can find and correct the two files for me? And maybe give some tips and or suggest some software tools I have not already tried? Cryptic CGAL errors don't really help me find and fix what OpenSCAD is complaining about. back-cover-no-stand-2.stl <http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl> _LCD_face_plate_LCD_hole_open_(repaired).stl <http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl> puzzlecutlib3.scad <http://forum.openscad.org/file/t1425/puzzlecutlib3.scad> Thanks for all the help. -- Sent from: http://forum.openscad.org/
CM
christophe malvasio
Wed, Sep 5, 2018 6:26 AM

i suggest you to code in openscad the entire objects/parts from your
view of the stl
it will make you print faster ;)
Le mer. 5 sept. 2018 à 03:03, FourthDr who_doctor@hotmail.com a écrit :

The whole reason for this exercise in the first place is because I needed to
cut the part into two to fit my printer using the pizzlecut library. I think
I can eventually get this working since it's just basically a geometric
shape problem.

But with other models, this is a huge problem. I can't just easily redesign
more complex designs/shapes. Especially, since I don't always have the
original design files just an stl file. So any time there is some problem no
matter how small with the model OpenSCAD throws a hissyfit. Sometimes I can
"fix" the model where OpenSCAD will accept it. Bust most of the time not.

Case and point, I have two models attached below that I need cut into two
parts. They both look and preview fine. My slic3r has no problems. But when
I try to cut them, OpenSCAD will not render them. And in worst case such as
with the nose cone will actually crash OpenSCAD with a C++ error.

It's too bad there is not a way to just cut with defects and all. It just
needs to be accepted by a slicer and look ok to the eye. A diagnostic tool
of some sort that could fix these problem would be great. Or that could
point out problems and give suggestions on fixing them so OpenSCAD will
accept the file.

I'm trying to get these two attached stl files split by tomorrow. I've been
tinkering with them for months. So far without success. Any one interested
in seeing if they can find and correct the two files for me? And maybe give
some tips and or suggest some software tools I have not already tried?
Cryptic CGAL errors don't really help me find and fix what OpenSCAD is
complaining about.

back-cover-no-stand-2.stl
http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl
LCD_face_plate_LCD_hole_open(repaired).stl
http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl
puzzlecutlib3.scad http://forum.openscad.org/file/t1425/puzzlecutlib3.scad

Thanks for all the help.

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


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

i suggest you to code in openscad the entire objects/parts from your view of the stl it will make you print faster ;) Le mer. 5 sept. 2018 à 03:03, FourthDr <who_doctor@hotmail.com> a écrit : > > The whole reason for this exercise in the first place is because I needed to > cut the part into two to fit my printer using the pizzlecut library. I think > I can eventually get this working since it's just basically a geometric > shape problem. > > But with other models, this is a huge problem. I can't just easily redesign > more complex designs/shapes. Especially, since I don't always have the > original design files just an stl file. So any time there is some problem no > matter how small with the model OpenSCAD throws a hissyfit. Sometimes I can > "fix" the model where OpenSCAD will accept it. Bust most of the time not. > > Case and point, I have two models attached below that I need cut into two > parts. They both look and preview fine. My slic3r has no problems. But when > I try to cut them, OpenSCAD will not render them. And in worst case such as > with the nose cone will actually crash OpenSCAD with a C++ error. > > It's too bad there is not a way to just cut with defects and all. It just > needs to be accepted by a slicer and look ok to the eye. A diagnostic tool > of some sort that could fix these problem would be great. Or that could > point out problems and give suggestions on fixing them so OpenSCAD will > accept the file. > > I'm trying to get these two attached stl files split by tomorrow. I've been > tinkering with them for months. So far without success. Any one interested > in seeing if they can find and correct the two files for me? And maybe give > some tips and or suggest some software tools I have not already tried? > Cryptic CGAL errors don't really help me find and fix what OpenSCAD is > complaining about. > > back-cover-no-stand-2.stl > <http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl> > _LCD_face_plate_LCD_hole_open_(repaired).stl > <http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl> > puzzlecutlib3.scad <http://forum.openscad.org/file/t1425/puzzlecutlib3.scad> > > Thanks for all the help. > > > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
EN
Ed Nisley
Wed, Sep 5, 2018 2:46 PM

On 09/04/2018 09:02 PM, FourthDr wrote:

They both look and preview fine.

Meshlab shows both have the usual assortment of mesh errors and are
non-manifold: hot death on a stick for further operations.

My (admittedly limited) experience with automatic mesh repair suggests
the algorithms generally make the choices I expect, but sometimes
produce weirdly shaped patches, if not completely bizarre shapes, around
the non-manifold geometry. The fact a "repaired" STL file still contains
geometry errors shows the automation doesn't always get it right.

Agreed, OpenSCAD shouldn't fall over dead when handed a broken STL file,
but AFAICT the explosion happens deep in the CGAL machinery where it's
out of anyone's control. The only defense seems to be not handing it
non-manifold models.

Which rules out many attractive STLs scattered around the Interwebs ...

--
Ed
https://softsolder.com

On 09/04/2018 09:02 PM, FourthDr wrote: > They both look and preview fine. Meshlab shows both have the usual assortment of mesh errors and are non-manifold: hot death on a stick for further operations. My (admittedly limited) experience with automatic mesh repair suggests the algorithms generally make the choices I expect, but sometimes produce weirdly shaped patches, if not completely bizarre shapes, around the non-manifold geometry. The fact a "repaired" STL file still contains geometry errors shows the automation doesn't always get it right. Agreed, OpenSCAD shouldn't fall over dead when handed a broken STL file, but AFAICT the explosion happens deep in the CGAL machinery where it's out of anyone's control. The only defense seems to be not handing it non-manifold models. Which rules out many attractive STLs scattered around the Interwebs ... -- Ed https://softsolder.com
F
FourthDr
Wed, Sep 5, 2018 2:49 PM

That's simply not possible. I don't have the ability or programming skills to
do that. I would need to have the help of some sort of automated tool to
repair any model I might need to print. Or lots of help from some one that
is highly skilled in OpenSCAD.

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

That's simply not possible. I don't have the ability or programming skills to do that. I would need to have the help of some sort of automated tool to repair any model I might need to print. Or lots of help from some one that is highly skilled in OpenSCAD. -- Sent from: http://forum.openscad.org/
NH
nop head
Wed, Sep 5, 2018 2:51 PM

Or manifold STL files with vertices closer than the OpenSCAD grid. They
actually become non-manifold during import.

On 5 September 2018 at 15:46, Ed Nisley ed.nisley@pobox.com wrote:

On 09/04/2018 09:02 PM, FourthDr wrote:

They both look and preview fine.

Meshlab shows both have the usual assortment of mesh errors and are
non-manifold: hot death on a stick for further operations.

My (admittedly limited) experience with automatic mesh repair suggests the
algorithms generally make the choices I expect, but sometimes produce
weirdly shaped patches, if not completely bizarre shapes, around the
non-manifold geometry. The fact a "repaired" STL file still contains
geometry errors shows the automation doesn't always get it right.

Agreed, OpenSCAD shouldn't fall over dead when handed a broken STL file,
but AFAICT the explosion happens deep in the CGAL machinery where it's out
of anyone's control. The only defense seems to be not handing it
non-manifold models.

Which rules out many attractive STLs scattered around the Interwebs ...

--
Ed
https://softsolder.com


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

Or manifold STL files with vertices closer than the OpenSCAD grid. They actually become non-manifold during import. On 5 September 2018 at 15:46, Ed Nisley <ed.nisley@pobox.com> wrote: > On 09/04/2018 09:02 PM, FourthDr wrote: > >> They both look and preview fine. >> > > Meshlab shows both have the usual assortment of mesh errors and are > non-manifold: hot death on a stick for further operations. > > My (admittedly limited) experience with automatic mesh repair suggests the > algorithms generally make the choices I expect, but sometimes produce > weirdly shaped patches, if not completely bizarre shapes, around the > non-manifold geometry. The fact a "repaired" STL file still contains > geometry errors shows the automation doesn't always get it right. > > Agreed, OpenSCAD shouldn't fall over dead when handed a broken STL file, > but AFAICT the explosion happens deep in the CGAL machinery where it's out > of anyone's control. The only defense seems to be not handing it > non-manifold models. > > Which rules out many attractive STLs scattered around the Interwebs ... > > -- > Ed > https://softsolder.com > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
F
FourthDr
Wed, Sep 5, 2018 3:13 PM

What I don't understand is how it can preview a broken stl with no problem.
But a render, which you would think uses the same process fails.

There needs to be some kind of built-in utility that can tell you just where
in the mesh it is having a problems. It's impossible to figure out a
problem, if the cause it shrouded inside of a black box. There is basically
no visualization of problem areas. Or helpful error messages.

The only way I was able to see one of the major flaws in the nose cone was
when I imported it into Tinkercad and tried to slice the cone off the base.
It was then that by chance after separating the cone from the base that I
saw a ton of artifact triangles still connected to the cone-less base. Then
I knew there where major issues with the model. But OpenSCAD said nothing
about it other than crashing when I tried to render.

So once I know there are problems. What's the easiest way to identify and
repair them without being an export. Every time I try to manually repair an
stl it breaks another part of the model in some way.

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

What I don't understand is how it can preview a broken stl with no problem. But a render, which you would think uses the same process fails. There needs to be some kind of built-in utility that can tell you just where in the mesh it is having a problems. It's impossible to figure out a problem, if the cause it shrouded inside of a black box. There is basically no visualization of problem areas. Or helpful error messages. The only way I was able to see one of the major flaws in the nose cone was when I imported it into Tinkercad and tried to slice the cone off the base. It was then that by chance after separating the cone from the base that I saw a ton of artifact triangles still connected to the cone-less base. Then I knew there where major issues with the model. But OpenSCAD said nothing about it other than crashing when I tried to render. So once I know there are problems. What's the easiest way to identify and repair them without being an export. Every time I try to manually repair an stl it breaks another part of the model in some way. -- Sent from: http://forum.openscad.org/
F
FourthDr
Wed, Sep 5, 2018 3:28 PM

NopHead:

You've mentioned OpenSCAD's grid a few times before. But is that actually
documented anywhere? For example, if the designer of a model was made aware
that any export to stl needed to have triangles of a specific maximum size
there would be one less problem to deal with.

That is exactly what's needed, guide lines. Any shared stl should have the
following traits. Right now you have no idea what program the stl was
originally exported from or what settings where used.

If some one could document exact minimum traits an stl file needs to be
successfully imported, manipulated, and then exported from OpenSCAD that
would be very helpful.

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

NopHead: You've mentioned OpenSCAD's grid a few times before. But is that actually documented anywhere? For example, if the designer of a model was made aware that any export to stl needed to have triangles of a specific maximum size there would be one less problem to deal with. That is exactly what's needed, guide lines. Any shared stl should have the following traits. Right now you have no idea what program the stl was originally exported from or what settings where used. If some one could document exact minimum traits an stl file needs to be successfully imported, manipulated, and then exported from OpenSCAD that would be very helpful. -- Sent from: http://forum.openscad.org/
NH
nop head
Wed, Sep 5, 2018 3:47 PM

But a render, which you would think uses the same process fails.

No preview is a totally different process to render. Preview just draws all
the triangles in the correct order to show a pixel representation of the
object. render calculates the geometry if there are any CSG ops (including
the implict union) and then draws that. It uses the GCAL library and that
expects it to be 2-manifold, without degenerate triangles.

The grid is defined here:
https://github.com/openscad/openscad/blob/c6a485651fa29f1a878ea454558192492f7467ec/src/grid.h#L14

I have never had much success with other people's STLs for 3D printing.
Even if they are manifold they are often not correct for 3D printing on my
machines. I mostly design everything I print from scratch in OpenSCAD.

On 5 September 2018 at 16:28, FourthDr who_doctor@hotmail.com wrote:

NopHead:

You've mentioned OpenSCAD's grid a few times before. But is that actually
documented anywhere? For example, if the designer of a model was made aware
that any export to stl needed to have triangles of a specific maximum size
there would be one less problem to deal with.

That is exactly what's needed, guide lines. Any shared stl should have the
following traits. Right now you have no idea what program the stl was
originally exported from or what settings where used.

If some one could document exact minimum traits an stl file needs to be
successfully imported, manipulated, and then exported from OpenSCAD that
would be very helpful.

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


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

>But a render, which you would think uses the same process fails. No preview is a totally different process to render. Preview just draws all the triangles in the correct order to show a pixel representation of the object. render calculates the geometry if there are any CSG ops (including the implict union) and then draws that. It uses the GCAL library and that expects it to be 2-manifold, without degenerate triangles. The grid is defined here: https://github.com/openscad/openscad/blob/c6a485651fa29f1a878ea454558192492f7467ec/src/grid.h#L14 I have never had much success with other people's STLs for 3D printing. Even if they are manifold they are often not correct for 3D printing on my machines. I mostly design everything I print from scratch in OpenSCAD. On 5 September 2018 at 16:28, FourthDr <who_doctor@hotmail.com> wrote: > NopHead: > > You've mentioned OpenSCAD's grid a few times before. But is that actually > documented anywhere? For example, if the designer of a model was made aware > that any export to stl needed to have triangles of a specific maximum size > there would be one less problem to deal with. > > That is exactly what's needed, guide lines. Any shared stl should have the > following traits. Right now you have no idea what program the stl was > originally exported from or what settings where used. > > If some one could document exact minimum traits an stl file needs to be > successfully imported, manipulated, and then exported from OpenSCAD that > would be very helpful. > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
ER
Ezra Reynolds
Wed, Sep 5, 2018 3:56 PM

In the past I have used TinkerCAD to help with problematic models that don't open in OpenScad.  Open the model in tinkercad, make a tiny change (union with a small sphere) then export as a new STL.  Some of the files are produced this way I have been more palatable to openscad.

On Sep 5, 2018, at 11:47 AM, nop head nop.head@gmail.com wrote:

But a render, which you would think uses the same process fails.

No preview is a totally different process to render. Preview just draws all the triangles in the correct order to show a pixel representation of the object. render calculates the geometry if there are any CSG ops (including the implict union) and then draws that. It uses the GCAL library and that expects it to be 2-manifold, without degenerate triangles.

The grid is defined here: https://github.com/openscad/openscad/blob/c6a485651fa29f1a878ea454558192492f7467ec/src/grid.h#L14

I have never had much success with other people's STLs for 3D printing. Even if they are manifold they are often not correct for 3D printing on my machines. I mostly design everything I print from scratch in OpenSCAD.

On 5 September 2018 at 16:28, FourthDr who_doctor@hotmail.com wrote:
NopHead:

You've mentioned OpenSCAD's grid a few times before. But is that actually
documented anywhere? For example, if the designer of a model was made aware
that any export to stl needed to have triangles of a specific maximum size
there would be one less problem to deal with.

That is exactly what's needed, guide lines. Any shared stl should have the
following traits. Right now you have no idea what program the stl was
originally exported from or what settings where used.

If some one could document exact minimum traits an stl file needs to be
successfully imported, manipulated, and then exported from OpenSCAD that
would be very helpful.

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


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

In the past I have used TinkerCAD to help with problematic models that don't open in OpenScad. Open the model in tinkercad, make a tiny change (union with a small sphere) then export as a new STL. Some of the files are produced this way I have been more palatable to openscad. > On Sep 5, 2018, at 11:47 AM, nop head <nop.head@gmail.com> wrote: > > >But a render, which you would think uses the same process fails. > > No preview is a totally different process to render. Preview just draws all the triangles in the correct order to show a pixel representation of the object. render calculates the geometry if there are any CSG ops (including the implict union) and then draws that. It uses the GCAL library and that expects it to be 2-manifold, without degenerate triangles. > > The grid is defined here: https://github.com/openscad/openscad/blob/c6a485651fa29f1a878ea454558192492f7467ec/src/grid.h#L14 > > I have never had much success with other people's STLs for 3D printing. Even if they are manifold they are often not correct for 3D printing on my machines. I mostly design everything I print from scratch in OpenSCAD. > >> On 5 September 2018 at 16:28, FourthDr <who_doctor@hotmail.com> wrote: >> NopHead: >> >> You've mentioned OpenSCAD's grid a few times before. But is that actually >> documented anywhere? For example, if the designer of a model was made aware >> that any export to stl needed to have triangles of a specific maximum size >> there would be one less problem to deal with. >> >> That is exactly what's needed, guide lines. Any shared stl should have the >> following traits. Right now you have no idea what program the stl was >> originally exported from or what settings where used. >> >> If some one could document exact minimum traits an stl file needs to be >> successfully imported, manipulated, and then exported from OpenSCAD that >> would be very helpful. >> >> >> >> -- >> Sent from: http://forum.openscad.org/ >> >> _______________________________________________ >> OpenSCAD mailing list >> Discuss@lists.openscad.org >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
CA
Carsten Arnholm
Wed, Sep 5, 2018 6:55 PM

Le mer. 5 sept. 2018 à 03:03, FourthDr who_doctor@hotmail.com a écrit :

I'm trying to get these two attached stl files split by tomorrow. I've been
tinkering with them for months. So far without success. Any one interested
in seeing if they can find and correct the two files for me? And maybe give
some tips and or suggest some software tools I have not already tried?
Cryptic CGAL errors don't really help me find and fix what OpenSCAD is
complaining about.

back-cover-no-stand-2.stl
http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl
LCD_face_plate_LCD_hole_open(repaired).stl
http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl
puzzlecutlib3.scad http://forum.openscad.org/file/t1425/puzzlecutlib3.scad

Thanks for all the help.

For the fun of it, I checked your files in my own tool. The first one
(back-cover-no-stand-2.stl) reports no problems.

The second "repaired" _LCD_face_plate... reports numerous problems and a
fix is attempted (seems better although not 100% clean)

Here is a link to the fixed file (link will expire in 2 days). I don't
know if it works any better than what you had, but you can try.
https://www.expirebox.com/download/050b8ca1679fcea5bfa17ea49aa6fc21.html

What is reported is for example

  • many collapsed/zero area faces
  • many duplicated faces
  • many non-manifold faces

It should be said that STL contains zero topology, so any claim of
non-manifoldness is a subjective interpretation of the data. For
exchanging between applications if would have been better to use a
format with explicit topology e.g. Wavefront OBJ. But STL is indeed very
common with all its issues.

Below is the log from my tool showing iterative attempts to fix your
file. The approach taken when interpreting the STL is quite different
from OpenSCADs "grid" approach so the result is likely not going to be
the same, but perhaps OpenSCAD likes the result better.

In iteration 0, the STL "polygon soup" is read. The high number of
initial non-manifold edges is normal for STL since it is a polygon soup
with no connectivity at all. From iteration 1, connectivity is
interpreted by merging vertices (with distance < dtol), and thus the
number of non-manifold edges is much reduced.

The vertex merging process leaves some zero area faces (with area <
atol) that are subsequently removed. Also, duplicate faces are removed.
After 6 iterations the only remaining issues are a few non-manifold
edges remain which cannot easily be resolved.

However, the resulting file is likely more usable in other programs,
maybe also in OpenSCAD. I could not test it in OpenSCAD since I am on
Kubuntu 18.04 and apparently there is no usable binary for 18.04.


Parameters:
input_file = LCD_face_plate_LCD_hole_open(repaired).stl

polyhedron 0 ================= volume=35242.9, dtol=0.01, atol=1e-06,
maxiter=10
iteration 0: vertices=43758 faces=14586
warning: 1 zero area faces.
warning: nonmanifold edges: uc(1)=43758
merged 38113 vertices
removed 2612 collapsed or zero area faces
split 32 faces
removed 366 duplicate faces
removed 161 nonmanifold faces
removed 29 zero area faces
total changes=41313
warning: nonmanifold edges: uc(1)=61 uc(3)=71 uc(4)=57
uc(5)=1

iteration 1: vertices=5645 faces=11515

          warning: nonmanifold edges: uc(1)=61 uc(3)=71 uc(4)=57 

uc(5)=1

          removed 6 unused vertices 


          merged 434 vertices 


          removed 790 collapsed or zero area faces 


          split 8 faces 


          removed 145 duplicate faces 


          removed 71 nonmanifold faces 


          removed 8 zero area faces 


          total changes=1462 


          warning: nonmanifold edges: uc(1)=26 uc(3)=27 uc(4)=37 

uc(6)=1 uc(7)=1

iteration 2: vertices=5205 faces=10514

          warning: nonmanifold edges: uc(1)=26 uc(3)=27 uc(4)=37 

uc(6)=1 uc(7)=1
removed 5 unused vertices
merged 114 vertices
removed 227 collapsed or zero area faces
split 2 faces
removed 42 duplicate faces
removed 30 nonmanifold faces
removed 4 zero area faces
total changes=424
warning: nonmanifold edges: uc(1)=9 uc(3)=6 uc(4)=19

iteration 3: vertices=5086 faces=10213
warning: nonmanifold edges: uc(1)=9 uc(3)=6 uc(4)=19
removed 4 unused vertices
merged 19 vertices
removed 40 collapsed or zero area faces
split 6 faces
removed 5 duplicate faces
removed 2 nonmanifold faces
removed 6 zero area faces
total changes=82
warning: nonmanifold edges: uc(1)=4 uc(3)=12 uc(4)=15

iteration 4: vertices=5063 faces=10172
warning: nonmanifold edges: uc(1)=4 uc(3)=12 uc(4)=15
removed 1 unused vertex
split 2 faces
removed 1 duplicate face
removed 2 nonmanifold faces
removed 4 zero area faces
total changes=10
warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15

iteration 5: vertices=5062 faces=10168
warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15
removed 1 unused vertex
total changes=1
warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15

iteration 6: vertices=5061 faces=10168
warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15
total changes=0
warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15

Summary:
polyhedron 0: vertices=5061 faces=10168 : warning:
nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15

Writing: LCD_face_plate_LCD_hole_open(repaired)_polyfix.stl

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


When you have as many issues as in this example, you cannot expect
import + booleans will work very well, if at all. Even my attempted fix
may still be problematic, but you can try.

It could be that the "repaired" version you provided has more problems
than the original. With such issues it isn't a surprise that using it in
OpenSCAD was a problem.

Carsten Arnholm

> Le mer. 5 sept. 2018 à 03:03, FourthDr <who_doctor@hotmail.com> a écrit : >> I'm trying to get these two attached stl files split by tomorrow. I've been >> tinkering with them for months. So far without success. Any one interested >> in seeing if they can find and correct the two files for me? And maybe give >> some tips and or suggest some software tools I have not already tried? >> Cryptic CGAL errors don't really help me find and fix what OpenSCAD is >> complaining about. >> >> back-cover-no-stand-2.stl >> <http://forum.openscad.org/file/t1425/back-cover-no-stand-2.stl> >> _LCD_face_plate_LCD_hole_open_(repaired).stl >> <http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open_%28repaired%29.stl> >> puzzlecutlib3.scad <http://forum.openscad.org/file/t1425/puzzlecutlib3.scad> >> >> Thanks for all the help. For the fun of it, I checked your files in my own tool. The first one (back-cover-no-stand-2.stl) reports no problems. The second "repaired" _LCD_face_plate... reports numerous problems and a fix is attempted (seems better although not 100% clean) Here is a link to the fixed file (link will expire in 2 days). I don't know if it works any better than what you had, but you can try. https://www.expirebox.com/download/050b8ca1679fcea5bfa17ea49aa6fc21.html What is reported is for example - many collapsed/zero area faces - many duplicated faces - many non-manifold faces It should be said that STL contains zero topology, so any claim of non-manifoldness is a subjective interpretation of the data. For exchanging between applications if would have been better to use a format with explicit topology e.g. Wavefront OBJ. But STL is indeed very common with all its issues. Below is the log from my tool showing iterative attempts to fix your file. The approach taken when interpreting the STL is quite different from OpenSCADs "grid" approach so the result is likely not going to be the same, but perhaps OpenSCAD likes the result better. In iteration 0, the STL "polygon soup" is read. The high number of initial non-manifold edges is normal for STL since it is a polygon soup with no connectivity at all. From iteration 1, connectivity is interpreted by merging vertices (with distance < dtol), and thus the number of non-manifold edges is much reduced. The vertex merging process leaves some zero area faces (with area < atol) that are subsequently removed. Also, duplicate faces are removed. After 6 iterations the only remaining issues are a few non-manifold edges remain which cannot easily be resolved. However, the resulting file is likely more usable in other programs, maybe also in OpenSCAD. I could not test it in OpenSCAD since I am on Kubuntu 18.04 and apparently there is no usable binary for 18.04. ------ Parameters: input_file = _LCD_face_plate_LCD_hole_open_(repaired).stl polyhedron 0 ================= volume=35242.9, dtol=0.01, atol=1e-06, maxiter=10 iteration 0: vertices=43758 faces=14586 warning: 1 zero area faces. warning: nonmanifold edges: uc(1)=43758 merged 38113 vertices removed 2612 collapsed or zero area faces split 32 faces removed 366 duplicate faces removed 161 nonmanifold faces removed 29 zero area faces total changes=41313 warning: nonmanifold edges: uc(1)=61 uc(3)=71 uc(4)=57 uc(5)=1 iteration 1: vertices=5645 faces=11515 warning: nonmanifold edges: uc(1)=61 uc(3)=71 uc(4)=57 uc(5)=1 removed 6 unused vertices merged 434 vertices removed 790 collapsed or zero area faces split 8 faces removed 145 duplicate faces removed 71 nonmanifold faces removed 8 zero area faces total changes=1462 warning: nonmanifold edges: uc(1)=26 uc(3)=27 uc(4)=37 uc(6)=1 uc(7)=1 iteration 2: vertices=5205 faces=10514 warning: nonmanifold edges: uc(1)=26 uc(3)=27 uc(4)=37 uc(6)=1 uc(7)=1 removed 5 unused vertices merged 114 vertices removed 227 collapsed or zero area faces split 2 faces removed 42 duplicate faces removed 30 nonmanifold faces removed 4 zero area faces total changes=424 warning: nonmanifold edges: uc(1)=9 uc(3)=6 uc(4)=19 iteration 3: vertices=5086 faces=10213 warning: nonmanifold edges: uc(1)=9 uc(3)=6 uc(4)=19 removed 4 unused vertices merged 19 vertices removed 40 collapsed or zero area faces split 6 faces removed 5 duplicate faces removed 2 nonmanifold faces removed 6 zero area faces total changes=82 warning: nonmanifold edges: uc(1)=4 uc(3)=12 uc(4)=15 iteration 4: vertices=5063 faces=10172 warning: nonmanifold edges: uc(1)=4 uc(3)=12 uc(4)=15 removed 1 unused vertex split 2 faces removed 1 duplicate face removed 2 nonmanifold faces removed 4 zero area faces total changes=10 warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 iteration 5: vertices=5062 faces=10168 warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 removed 1 unused vertex total changes=1 warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 iteration 6: vertices=5061 faces=10168 warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 total changes=0 warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 Summary: polyhedron 0: vertices=5061 faces=10168 : warning: nonmanifold edges: uc(1)=1 uc(3)=7 uc(4)=15 Writing: _LCD_face_plate_LCD_hole_open_(repaired)_polyfix.stl ... abm_polyfix finished, time used: 0d 00h 00m 01s ----- When you have as many issues as in this example, you cannot expect import + booleans will work very well, if at all. Even my attempted fix may still be problematic, but you can try. It could be that the "repaired" version you provided has more problems than the original. With such issues it isn't a surprise that using it in OpenSCAD was a problem. Carsten Arnholm
F
FourthDr
Wed, Sep 5, 2018 8:27 PM

NopHead:

What do you mean by "2-manifold"? I thought manifold was well, manifold.
There is some other type of manifold?

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

NopHead: What do you mean by "2-manifold"? I thought manifold was well, manifold. There is some other type of manifold? -- Sent from: http://forum.openscad.org/
NH
nop head
Wed, Sep 5, 2018 8:58 PM

It is the technical term for the topology of the bounding surface of a
three dimensional shape, I think.

There are other degrees of manifoldness for other dimensions but it is
beyond my knowledge of maths.

On 5 September 2018 at 21:27, FourthDr who_doctor@hotmail.com wrote:

NopHead:

What do you mean by "2-manifold"? I thought manifold was well, manifold.
There is some other type of manifold?

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


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

It is the technical term for the topology of the bounding surface of a three dimensional shape, I think. There are other degrees of manifoldness for other dimensions but it is beyond my knowledge of maths. On 5 September 2018 at 21:27, FourthDr <who_doctor@hotmail.com> wrote: > NopHead: > > What do you mean by "2-manifold"? I thought manifold was well, manifold. > There is some other type of manifold? > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
F
FourthDr
Wed, Sep 5, 2018 9:15 PM

Cacb:

Very interesting. What tool are you using? I tried the ployfixed LCD file
and OpenSCAD is still throwing a CGAL error. I did fix the back cover part
so I know it is manifold. That's why I don't understand why OpenSCAD doesn't
work. The preview works fine. But when I click render I get a blank screen
and this message:

Compiling design (CSG Tree generation)...
Rendering Polygon Mesh using CGAL...
Geometries in cache: 33
Geometry cache size in bytes: 3560328
CGAL Polyhedrons in cache: 32
CGAL cache size in bytes: 1232672
Total rendering time: 0 hours, 0 minutes, 0 seconds
Rendering finished.

OpenSCAD appears to just ignore the file and render nothing. What's going on
there? I'm stumped. Please see attached unaltered LCD stl below. The file
was collected from Thingiverse thing #1922863 here:
https://www.thingiverse.com/thing:1922863
https://www.thingiverse.com/thing:1922863

_LCD_face_plate_LCD_hole_open.STL
http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open.STL

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

Cacb: Very interesting. What tool are you using? I tried the ployfixed LCD file and OpenSCAD is still throwing a CGAL error. I did fix the back cover part so I know it is manifold. That's why I don't understand why OpenSCAD doesn't work. The preview works fine. But when I click render I get a blank screen and this message: Compiling design (CSG Tree generation)... Rendering Polygon Mesh using CGAL... Geometries in cache: 33 Geometry cache size in bytes: 3560328 CGAL Polyhedrons in cache: 32 CGAL cache size in bytes: 1232672 Total rendering time: 0 hours, 0 minutes, 0 seconds Rendering finished. OpenSCAD appears to just ignore the file and render nothing. What's going on there? I'm stumped. Please see attached unaltered LCD stl below. The file was collected from Thingiverse thing #1922863 here: https://www.thingiverse.com/thing:1922863 <https://www.thingiverse.com/thing:1922863> _LCD_face_plate_LCD_hole_open.STL <http://forum.openscad.org/file/t1425/_LCD_face_plate_LCD_hole_open.STL> -- Sent from: http://forum.openscad.org/
F
FourthDr
Thu, Sep 6, 2018 4:35 AM

Cacb:

Here is the top half of that bottom that doesn't render, even though it is
manifold and appears to have no problems. Since we are taking about the
bottom half already. This one has a major problem.  I just tried to open it
in Tinkercad, and once I finished importing it the whole top part vanished.
Looks like some one made the top half of bits and pieces but didn't fuse
them together properly. I can't figure out how to fix it either. Case to
take a swipe?

FRONT_COVER.stl http://forum.openscad.org/file/t1425/FRONT_COVER.stl

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

Cacb: Here is the top half of that bottom that doesn't render, even though it is manifold and appears to have no problems. Since we are taking about the bottom half already. This one has a major problem. I just tried to open it in Tinkercad, and once I finished importing it the whole top part vanished. Looks like some one made the top half of bits and pieces but didn't fuse them together properly. I can't figure out how to fix it either. Case to take a swipe? FRONT_COVER.stl <http://forum.openscad.org/file/t1425/FRONT_COVER.stl> -- Sent from: http://forum.openscad.org/
A
arnholm@arnholm.org
Thu, Sep 6, 2018 6:55 AM

On 2018-09-05 22:27, FourthDr wrote:

What do you mean by "2-manifold"? I thought manifold was well,
manifold.
There is some other type of manifold?

2-manifold edge means that edge is referenced by exactly 2 faces.
1-manifold edge means it is referenced by exactly 1 face and that face
is then obviously not contributing to a closed volume boundary. In
general, an edge being N-manifold means the edge is referenced by N
faces. In loose language you could say a face is non-manifold if it
refers to at least one edge that is not 2-manifold.

In 3d-printing it is common to require all edges to be 2-manifold,
because the faces will then unambiguously define one or more closed
volumes. If you had a more sophisticated representation of volumes with
sub-volumes using e.g. different materials, it would make a lot of sense
to allow N-manifold edges for N>2, but it is not possible within a
single STL.

An STL file contains disconnected triangles ("polygon soup"), i.e. faces
with exactly 3 edges. An edge runs between 2 vertices. A vertex has XYZ
coordinates.  Strictly speaking, in STL files all edges are 1-manifold,
because there is no concept of edge or vertex sharing, all vertices (and
coordinates) are repeated for every triangle, hence it is a "polygon
soup". It is up to the software reading the STL file to have a guess at
what matches what and which manifoldness it is supposed to represent,
and this often leads to conflicting interpretations. STL is (somewhat)
OK for slicer programs, but not really a good choice for import to CAD
programs, due to the interpretation issues mentioned. As mentioned,
there are other formats that are less ambiguous, including WaveFront
OBJ.

Carsten Arnholm

On 2018-09-05 22:27, FourthDr wrote: > What do you mean by "2-manifold"? I thought manifold was well, > manifold. > There is some other type of manifold? 2-manifold edge means that edge is referenced by exactly 2 faces. 1-manifold edge means it is referenced by exactly 1 face and that face is then obviously not contributing to a closed volume boundary. In general, an edge being N-manifold means the edge is referenced by N faces. In loose language you could say a face is non-manifold if it refers to at least one edge that is not 2-manifold. In 3d-printing it is common to require all edges to be 2-manifold, because the faces will then unambiguously define one or more closed volumes. If you had a more sophisticated representation of volumes with sub-volumes using e.g. different materials, it would make a lot of sense to allow N-manifold edges for N>2, but it is not possible within a single STL. An STL file contains disconnected triangles ("polygon soup"), i.e. faces with exactly 3 edges. An edge runs between 2 vertices. A vertex has XYZ coordinates. Strictly speaking, in STL files all edges are 1-manifold, because there is no concept of edge or vertex sharing, all vertices (and coordinates) are repeated for every triangle, hence it is a "polygon soup". It is up to the software reading the STL file to have a guess at what matches what and which manifoldness it is supposed to represent, and this often leads to conflicting interpretations. STL is (somewhat) OK for slicer programs, but not really a good choice for import to CAD programs, due to the interpretation issues mentioned. As mentioned, there are other formats that are less ambiguous, including WaveFront OBJ. Carsten Arnholm
RW
Rogier Wolff
Thu, Sep 6, 2018 10:09 AM

On Wed, Sep 05, 2018 at 04:47:07PM +0100, nop head wrote:

I have never had much success with other people's STLs for 3D
printing.  Even if they are manifold they are often not correct for
3D printing on my machines. I mostly design everything I print from
scratch in OpenSCAD.

For SOME stuff I import "their" STL and add the things I need for
printing on my printer. I think "brim" is overrated. It adds material
where the object doesn't need it and not enough where it does.

For stuff that is high and long, and tends to pull the ends off the
bed, I now add a half cone of a few layers high to the ends. Works
great. Except when there end up being STL errors.

Roger. 

--
** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 **
**    Delftechpark 26 2628 XH  Delft, The Netherlands. KVK: 27239233    **
-- BitWizard writes Linux device drivers for any device you may have! --
The plan was simple, like my brother-in-law Phil. But unlike
Phil, this plan just might work.

On Wed, Sep 05, 2018 at 04:47:07PM +0100, nop head wrote: > I have never had much success with other people's STLs for 3D > printing. Even if they are manifold they are often not correct for > 3D printing on my machines. I mostly design everything I print from > scratch in OpenSCAD. For SOME stuff I import "their" STL and add the things I need for printing on my printer. I think "brim" is overrated. It adds material where the object doesn't need it and not enough where it does. For stuff that is high and long, and tends to pull the ends off the bed, I now add a half cone of a few layers high to the ends. Works great. Except when there end up being STL errors. Roger. -- ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 ** ** Delftechpark 26 2628 XH Delft, The Netherlands. KVK: 27239233 ** *-- BitWizard writes Linux device drivers for any device you may have! --* The plan was simple, like my brother-in-law Phil. But unlike Phil, this plan just might work.
NH
nop head
Thu, Sep 6, 2018 10:22 AM

Yes but brim adds just more outlines that can be removed easily. If you add
it to the model it will be fully incorporated, how do you remove it from
the print?

On 6 September 2018 at 11:09, Rogier Wolff R.E.Wolff@bitwizard.nl wrote:

On Wed, Sep 05, 2018 at 04:47:07PM +0100, nop head wrote:

I have never had much success with other people's STLs for 3D
printing.  Even if they are manifold they are often not correct for
3D printing on my machines. I mostly design everything I print from
scratch in OpenSCAD.

For SOME stuff I import "their" STL and add the things I need for
printing on my printer. I think "brim" is overrated. It adds material
where the object doesn't need it and not enough where it does.

For stuff that is high and long, and tends to pull the ends off the
bed, I now add a half cone of a few layers high to the ends. Works
great. Except when there end up being STL errors.

     Roger.

--
** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 **
**    Delftechpark 26 2628 XH  Delft, The Netherlands. KVK: 27239233    **
-- BitWizard writes Linux device drivers for any device you may have! --
The plan was simple, like my brother-in-law Phil. But unlike
Phil, this plan just might work.


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

Yes but brim adds just more outlines that can be removed easily. If you add it to the model it will be fully incorporated, how do you remove it from the print? On 6 September 2018 at 11:09, Rogier Wolff <R.E.Wolff@bitwizard.nl> wrote: > On Wed, Sep 05, 2018 at 04:47:07PM +0100, nop head wrote: > > > I have never had much success with other people's STLs for 3D > > printing. Even if they are manifold they are often not correct for > > 3D printing on my machines. I mostly design everything I print from > > scratch in OpenSCAD. > > For SOME stuff I import "their" STL and add the things I need for > printing on my printer. I think "brim" is overrated. It adds material > where the object doesn't need it and not enough where it does. > > For stuff that is high and long, and tends to pull the ends off the > bed, I now add a half cone of a few layers high to the ends. Works > great. Except when there end up being STL errors. > > Roger. > > -- > ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 ** > ** Delftechpark 26 2628 XH Delft, The Netherlands. KVK: 27239233 ** > *-- BitWizard writes Linux device drivers for any device you may have! --* > The plan was simple, like my brother-in-law Phil. But unlike > Phil, this plan just might work. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
EN
Ed Nisley
Thu, Sep 6, 2018 12:43 PM

On 09/06/2018 12:35 AM, FourthDr wrote:

the whole top part vanished

The inside surface of the lid is oriented incorrectly (there's no
"inside") and the outside surface has a bunch of self-intersecting
triangles. Slic3r's auto-repair algorithm gets it mostly right, although
the rectangular openings seem covered with Z-fighting membranes.

It's a wonder 3D printing works at all ...

--
Ed
https://softsolder.com

On 09/06/2018 12:35 AM, FourthDr wrote: > the whole top part vanished The inside surface of the lid is oriented incorrectly (there's no "inside") and the outside surface has a bunch of self-intersecting triangles. Slic3r's auto-repair algorithm gets it mostly right, although the rectangular openings seem covered with Z-fighting membranes. It's a wonder 3D printing works at all ... -- Ed https://softsolder.com