discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Strange Error in Render

NH
nop head
Tue, Jun 9, 2020 10:49 PM

Sorry I meant: They can't share just an edge or a single vertex as it
creates a zero thickness section that isn't physically possible,

On Tue, 9 Jun 2020 at 23:48, nop head nop.head@gmail.com wrote:

Two cubes can share a face or a part of a face, or they can overlap. They
can't share just and edge of a single vertex as it creates a zero thickness
section that isn't physically possible,

On Tue, 9 Jun 2020 at 23:32, woodslanding temiqui@gmail.com wrote:

nophead wrote

Are the two objects touching? If they are, then they can union to form a
non-manifold. For example two cubes touching on an edge or a corner

makes

a
non-manifold.

I read around a bit, and just realized this.  What I can't understand is
why
virtually every model I've ever designed hasn't had this problem.

I'm sorry, but from an intuitive standpoint that is utterly insane.  Two 1
unit cubes 1 unit apart is not a valid manifold???

So yeah, I moved the bridge piece .00001mm in some random direction and it
compiles.

I'm sure there's some mathmatical reason why this matters.  There's also
got
to be some mathmatical way of dealing with the idea that when two objects
share a face, the face goes away.

Anyway, thanks for the help.  I can't believe I've created hundreds of
models without encountering this before!

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


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

Sorry I meant: They can't share just an edge or a single vertex as it creates a zero thickness section that isn't physically possible, On Tue, 9 Jun 2020 at 23:48, nop head <nop.head@gmail.com> wrote: > Two cubes can share a face or a part of a face, or they can overlap. They > can't share just and edge of a single vertex as it creates a zero thickness > section that isn't physically possible, > > On Tue, 9 Jun 2020 at 23:32, woodslanding <temiqui@gmail.com> wrote: > >> nophead wrote >> > Are the two objects touching? If they are, then they can union to form a >> > non-manifold. For example two cubes touching on an edge or a corner >> makes >> > a >> > non-manifold. >> >> I read around a bit, and just realized this. What I can't understand is >> why >> virtually every model I've ever designed hasn't had this problem. >> >> I'm sorry, but from an intuitive standpoint that is utterly insane. Two 1 >> unit cubes 1 unit apart is not a valid manifold??? >> >> So yeah, I moved the bridge piece .00001mm in some random direction and it >> compiles. >> >> I'm sure there's some mathmatical reason why this matters. There's also >> got >> to be some mathmatical way of dealing with the idea that when two objects >> share a face, the face goes away. >> >> Anyway, thanks for the help. I can't believe I've created hundreds of >> models without encountering this before! >> >> >> >> >> -- >> Sent from: http://forum.openscad.org/ >> >> _______________________________________________ >> OpenSCAD mailing list >> Discuss@lists.openscad.org >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> >
RP
Ronaldo Persiano
Tue, Jun 9, 2020 11:23 PM

I've always gotten a warning about manifolds before, not an
incomprehensible
stack trace....

The last experimental version of OpenSCAD has implemented lazzy unions,
which means that union is taken only if explicitly called. Then,

{
cube(1);
translate([1,1,0]) cube(1);
}

is different from:

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

The later is not a manifold and the former are two manifolds that happen to
have points in common.

> > I've always gotten a warning about manifolds before, not an > incomprehensible > stack trace.... > The last experimental version of OpenSCAD has implemented lazzy unions, which means that union is taken only if explicitly called. Then, { cube(1); translate([1,1,0]) cube(1); } is different from: union() { cube(1); translate([1,1,0]) cube(1); } The later is not a manifold and the former are two manifolds that happen to have points in common.
M
MichaelAtOz
Tue, Jun 9, 2020 11:24 PM

woodslanding wrote

Well, that actually didn't fix it.  I had commented out the render line.
I've tried wiggling its position in all 3 dimensions to no effect.

topeakRack.scad
<http://forum.openscad.org/file/t2632/topeakRack.scad>
utils.scad <http://forum.openscad.org/file/t2632/utils.scad>

I've always gotten a warning about manifolds before, not an
incomprehensible
stack trace....

Unfortunately with those two files and

translate([0,0,-30]) cube(1);
rack();
translate([-w/2,bagR,bagR+slotH])  infill(w);

I do not get a CGAL error on F6. Tried 2019.05 & a recent development
version.


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

  • click on my MichaelAtOz label, there is a link to email me.

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.

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

woodslanding wrote > Well, that actually didn't fix it. I had commented out the render line. > I've tried wiggling its position in all 3 dimensions to no effect. > > topeakRack.scad > &lt;http://forum.openscad.org/file/t2632/topeakRack.scad&gt; > utils.scad &lt;http://forum.openscad.org/file/t2632/utils.scad&gt; > > I've always gotten a warning about manifolds before, not an > incomprehensible > stack trace.... Unfortunately with those two files and translate([0,0,-30]) cube(1); rack(); translate([-w/2,bagR,bagR+slotH]) infill(w); I do not get a CGAL error on F6. Tried 2019.05 & a recent development version. ----- Admin - email* me if you need anything, or if I've done something stupid... * click on my MichaelAtOz label, there is a link to email me. 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. -- Sent from: http://forum.openscad.org/
M
MichaelAtOz
Tue, Jun 9, 2020 11:54 PM

No error, regardless of Lazy-union on/off.


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

  • click on my MichaelAtOz label, there is a link to email me.

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.

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

No error, regardless of Lazy-union on/off. ----- Admin - email* me if you need anything, or if I've done something stupid... * click on my MichaelAtOz label, there is a link to email me. 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. -- Sent from: http://forum.openscad.org/
W
woodslanding
Wed, Jun 10, 2020 3:27 AM

Figured it out!

It didn't like the render() in the infill() module.  Took that out and it
rendered fine.

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

Figured it out! It didn't like the render() in the infill() module. Took that out and it rendered fine. -- Sent from: http://forum.openscad.org/
TH
Tim Hawkins
Thu, Jun 11, 2020 6:01 AM

Would it be feassble to have an auto-manifold fix mode that inflates all
objects by a very very small amount (but greater than tbe rounding) so that
the 1unit cube example is fixed. It wont help with with things liked
differenced cylinders,  it it may fix many headscratchers.

Alternativly is it feasible to highlight non-manifold surfaces on the
display?

On Wed, Jun 10, 2020, 06:32 woodslanding, temiqui@gmail.com wrote:

nophead wrote

Are the two objects touching? If they are, then they can union to form a
non-manifold. For example two cubes touching on an edge or a corner makes
a
non-manifold.

I read around a bit, and just realized this.  What I can't understand is
why
virtually every model I've ever designed hasn't had this problem.

I'm sorry, but from an intuitive standpoint that is utterly insane.  Two 1
unit cubes 1 unit apart is not a valid manifold???

So yeah, I moved the bridge piece .00001mm in some random direction and it
compiles.

I'm sure there's some mathmatical reason why this matters.  There's also
got
to be some mathmatical way of dealing with the idea that when two objects
share a face, the face goes away.

Anyway, thanks for the help.  I can't believe I've created hundreds of
models without encountering this before!

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


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

Would it be feassble to have an auto-manifold fix mode that inflates all objects by a very very small amount (but greater than tbe rounding) so that the 1unit cube example is fixed. It wont help with with things liked differenced cylinders, it it may fix many headscratchers. Alternativly is it feasible to highlight non-manifold surfaces on the display? On Wed, Jun 10, 2020, 06:32 woodslanding, <temiqui@gmail.com> wrote: > nophead wrote > > Are the two objects touching? If they are, then they can union to form a > > non-manifold. For example two cubes touching on an edge or a corner makes > > a > > non-manifold. > > I read around a bit, and just realized this. What I can't understand is > why > virtually every model I've ever designed hasn't had this problem. > > I'm sorry, but from an intuitive standpoint that is utterly insane. Two 1 > unit cubes 1 unit apart is not a valid manifold??? > > So yeah, I moved the bridge piece .00001mm in some random direction and it > compiles. > > I'm sure there's some mathmatical reason why this matters. There's also > got > to be some mathmatical way of dealing with the idea that when two objects > share a face, the face goes away. > > Anyway, thanks for the help. I can't believe I've created hundreds of > models without encountering this before! > > > > > -- > Sent from: http://forum.openscad.org/ > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >
M
MichaelAtOz
Thu, Jun 11, 2020 7:47 AM

Tim Hawkins wrote

Would it be feassble to have an auto-manifold fix mode that inflates all
objects by a very very small amount (but greater than tbe rounding) so
that
the 1unit cube example is fixed. It wont help with with things liked
differenced cylinders,  it it may fix many headscratchers.

When you start looking at the details it is difficult. Your very very small
amount may then butt up against another edge or point.

Alternativly is it feasible to highlight non-manifold surfaces on the
display?

see thrown-together
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#Mis-ordered_faces


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

  • click on my MichaelAtOz label, there is a link to email me.

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.

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

Tim Hawkins wrote > Would it be feassble to have an auto-manifold fix mode that inflates all > objects by a very very small amount (but greater than tbe rounding) so > that > the 1unit cube example is fixed. It wont help with with things liked > differenced cylinders, it it may fix many headscratchers. When you start looking at the details it is difficult. Your very very small amount may then butt up against another edge or point. > Alternativly is it feasible to highlight non-manifold surfaces on the > display? see thrown-together https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#Mis-ordered_faces ----- Admin - email* me if you need anything, or if I've done something stupid... * click on my MichaelAtOz label, there is a link to email me. 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. -- Sent from: http://forum.openscad.org/