1
$\begingroup$

I'm trying to create a screw with non-destructive editing. After defining screw profile I apply a Screw modifier to it. However, the resulting object is not manifold (closed surface with non-zero volume) so I cannot use boolean difference nor boolean union with the screw body to create final object.

I have tried adding Solidify modifier with -1 offset and thick wall towards inside of the thread object but this does not seem to work either because the resulting object contains self-intersecting faces. I know that if I apply the Screw modifier and close the thread object manually, everything works fine. However, I'd prefer keeping the Screw modifier a real modifier so that I can adjust the number of Steps later to improve curve rendering quality if needed.

Is it possible to create manifold threads using Screw modifier to be used with Boolean modifier?

$\endgroup$
1
  • $\begingroup$ Hello :). Screw modifier can cause inverted faces, which are considered non-manifold geometry. Please add your screw modifier setup and check for flipped faces. $\endgroup$ – Jachym Michal Oct 4 '20 at 17:51
0
$\begingroup$

Yes.

enter image description here

Start with a screw from a non-manifold mesh. In this case, I'm using a plane, with an empty to define the screw.

This gives a mesh that is manifold other than boundaries, appropriate for a solidify modifier. In the example pic, the faces do not intersect. You can eliminate the intersection for other meshes by reducing the thickness of the solidify. (In the presence of other modifiers, it may be necessary to use modifier-generated vertex groups to modulate the thickness of the solidify.)

Of course, that leaves us with a hole in the middle of the screw, which might not be appropriate for the boolean difference we wish to create. We can fill that hole by boolean unioning our manifold screw with a manifold cylinder.

This particular cylinder is placed and scaled by eye, in order to demonstrate the technique. In a real life situation, you'd scale it differently. If it's totally necessary, you can even scale it non-destructively in a number of ways. I would probably armature deform it, with a stretch-to bone parented to and stretching-to a pair of non-deforming "marker" bones that shrinkwrap-projected onto a linked duplicate of the screw mesh.

I've applied all modifiers at the end and selected non-manifold to demonstrate that the resulting mesh is perfectly manifold, with its normals facing the right direction.

Here's a pic where I use the final object to cut into a cube:

enter image description here

The applied boolean difference is applied on the right. On the left, the modifier is live, with the screw, and the cylinder used to "fill the hole", displayed as wireframe.

If you're having trouble using the final object as a boolean, you might be trying to solidify too much, creating overlapping geometry.

$\endgroup$
1
  • $\begingroup$ Unfortunately, that does not really work. If you try to use the screw created such way as a boolean Difference to cut from e.g. Cube, you'll find that it fails to cut correctly. $\endgroup$ – Mikko Rantalainen Oct 6 '20 at 10:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.