-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Duplicate Vertices in VNFs not allowed with Manifold #1430
Comments
It looks like duplicate vertices will still work, but it's a warning, so if you're using "stop on first warning" it will be a fatal error. |
New issue openscad/openscad#5135 on the idea of making it not a warning when they correct for duplicate vertices. |
Latest word on this is that they've changed it so that perfectly identical vertices are merged without a warning. Almost identical vertices are merged with a warning. And they noted this: Be aware that there is a subset of manifold objects not representable after merging vertices, things like:
So this means for example that a path_sweep without twist is probably OK because the first and last transformation are probably equal. But if there is twist, round-off error is probably introduced and the points won't be exact, so you'll get the warning. If you join beziers patches that mathematically share a boundary it seems likely that they might not be exactly equal on the boundary. I wonder if we could make a faster merging method by merging when VNFs are joined and explicitly searching each VNF in the join list for its boundary and then looking for duplicates just in those boundaries. |
Another interesting bit of info: witih CGAL there was snap-to-grid. With manifold they avoid snapping to grid unless they have to repair a non-manifold object. |
From openscad/openscad#5134
This seems like it will affect a lot of the nontrivial closed VNF constructions in BOSL2. It's not clear how we can address this without a massive slowdown from constantly running vnf_merge_points().
Like have VNFs also carry an edge list to reduce the number of vertices that need to be checked when joining VNFs?
The text was updated successfully, but these errors were encountered: