Scaling Good Mesh Produces Bad Mesh

I have a 1:1 mesh I am trying to scale down to 1/16" = 1’ for 3D printing. Upon scaling, the previously good mesh becomes open / bad, with self-intersecting + degenerate faces + non-manifold edges.

I’ve tried to solve the problem by adjusting tolerances, but no luck. Would really appreciate some advice.

I think, what might be happening, is that your mesh consists of multiple patches (if you use Explode, does it return multiple meshes?). Then, when you scale, the “shared” vertices on the edges of those patches end up in slightly different places due to rounding errors, and they are no longer shared.

So, what you want to get, is a single mesh that, upon exploding, does not give multiple patches. To get there, you should use Weld with Angle of 180 degrees. This will, hopefully, remove any duplicate vertices. Then, upon scaling, all vertices are unique and will be scaled without giving problems.

Thank you menno for your reply. I followed your suggestion, and I also realized I was scaling a considerable distance from the origin. I moved the geometry to W0,0,0 and scaled with much better results, but still a few self-intersecting faces. The problem of rounding errors seems to be it- any further ideas on how to reduce those?

Have you tried the Weld Angle=180 suggestion I made earlier?
Also, maybe combined with CullDegenerateMeshFaces?

Are they crucial to eliminate before 3D printing?
My experience is that many slicers or other geometric operators for 3D printing don’t mind self-intersections.

That being said; have a look at the command
_AlignMeshVertices
http://docs.mcneel.com/rhino/5/help/en-us/index.htm#commands/alignmeshvertices.htm4
It can help to clean up minute edges, however it can also make stuff worse; creating non-manifold edges and even more self intersections.

_

-Willem

1 Like

Hi Matt - You might want to make the mesh double-precision before scaling etc - worth a try anyway:testDoublePrecisionMesh

-Pascal

I did. I believe it is effective- along with the other good suggestions here, I am working through the issue. Thank you!

After making the mesh double-precision + menno’s weld angle suggestion + moving geometry to the origin, I’m getting better results. I’m able to get a good mesh insofar as the point I’m scaling from is at the origin itself. Thank you very much for the feedback.

Thank you for your reply. I have been 3D printing at my school for 3 years, but can’t say I’m an expert. When I submit my .STL, the lab technician performs slicing on the mesh to test for self-intersections. They will accept it regardless in some cases, but it’s a judgment call. Is this not a typical practice? I have been avoiding self-intersections specifically to satisfy this.

I am trying _AlignMeshVertices as well. All the suggestions here have been very constructive. Thank you!

Indeed it’s best to avoid self intersections, however it’s always a consideration if the time spend for fixing is needed when the mesh will print regardless. I’ve found myself (too) many times fixing every tiny detail of a model where I could have better just send it off, as it was basically good enough for printing anyway.

-Willem