Author Topic: Boolean Union/Difference - Changes my model  (Read 168 times)

jonelli

  • Newbie
  • *
  • Posts: 2
    • View Profile
Boolean Union/Difference - Changes my model
« on: January 27, 2018, 04:14:58 PM »
Hey All,
First off, I'm a total noob at MeshMixer, and have been searching around for info on this and haven't found exactly what I need yet. So, if you offer me any suggestions, please be as detailed as possible.  I'm learning to the use the software very slowly.

I have STL models that I would like to split and then add my own joiner "biscuit" to reassemble them after printing. 
I know how to split and export the separate pieces just fine, and that works great. 

When I try to add a dowel-like shape to one of the parts as a boolean union or a boolean difference (to create the opposite hole), Meshmixer does some kind of re-rendering of the original item and drastically changes it.  Edit>Combine works for the parts I need to be solid, but how do I make a "hole" using that shape inside the other piece?  As far as I can tell the only way I know of is boolean difference.  And when I do it, I get changes to my model as below.

Could someone please give me some ideas or instructions on how to prevent this?  Or tell me a better way to do what I am trying to achieve?
Here's a couple of images to describe what I am doing:
PuzzlePiece.png - the whole split piece with the joining shape I added
Outtie.png - Half of the split piece with the joining shape I added
Outtieafterboolean.png - What happens after I use the boolean union function.  Similar things happen if I use Difference also.
« Last Edit: January 27, 2018, 04:39:15 PM by jonelli »

MagWeb

  • Administrator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: Boolean Union/Difference - Changes my model
« Reply #1 on: January 27, 2018, 06:00:53 PM »
Hi,

just a hint @ your rendering mode:
Against rendering the surfaces in GroupNormals(Default)-mode (as you do) switch the mesh normal mode to FaceNormals. This is the "real" surface showing sharp edges for each triangle. GroupNormals mode only draws sharp edges at face groups' boundaries. You can switch to that mode either using the Hotbox (press and keep "Space" to call the Hotbox) and clicking on the middle button in its Mesh Normals section or via Preferences/General tab.

Seems the dowel cylinder has a poor triangle count. By default Booleans automatically reduce the result which may distort the result if one or both parts are low poly objects.
Two possibilities:
A: Subdivide the cylinders' triangles by selecting the whole dowel and running Edit/Remesh ( in RemeshMode "LlinearSubdivision" and Density slider pulled to maximum) before doing the Boolean
or
B: Without subdividing the dowel run your Boolean operation and disable AutoReduceResult in its tool options

Also: I'm wondering about the strange pale pink color of the dowel which doesn't seem to be a FaceGroup color. Maybe its faces are flipped?  Are they still in this color if you switch to VertexColor rendering (> Hotbox: Click on the sphere with the blue pole or do it via Preferences). If Yes you should invert the normal direction via selecting all faces of the dowel and running Edit/FlipNormals on this selection.

A hint for the whole task:
After doing BooleanUnion on the first part do NOT use this part for a BooleanDifference on the second part. The cutting surfaces of the parts are coplanar which might raise some problem...
Instead: Create a duplicate of the dowel before doing BooleanUnion on the first part. Now do BooleanUnion on the pair partA+dowel and BooleanDifference on partB+dowel(copy)
« Last Edit: January 27, 2018, 06:09:53 PM by MagWeb »
I'm just a user as you are. Being no Autodesk employee: I do not know where this road will lead to, nor do I claim to've all stuff got right.

jonelli

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Boolean Union/Difference - Changes my model
« Reply #2 on: January 27, 2018, 07:53:11 PM »
Hey MagWeb, super thanks for responding!
And thanks for the tip on the GroupNormals mode change, love that. 

I can't for some reason find Edit>Remesh or RemeshMode anywher.  The hotkey "r" doesn't do anything either.  Did I miss something? I'm using version 3.3.15 currently.

Your suggestions on Option B seems to do the trick for MY part so it doesn't get distorted, but the "dowel" negative hole still looks messed up (low res and distorted) after I do the boolean. 
I created the "dowel" by selecting the shape in the MeshMix menu, then I sized it and positioned it where I wanted it.

I'm assuing this Remesh function might be key to some of the things I'm trying to do.  Why do you suppose I can't see this option?

MagWeb

  • Administrator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: Boolean Union/Difference - Changes my model
« Reply #3 on: January 27, 2018, 08:16:06 PM »
Unfortunately there are 2 Edits in MM:

EDIT in the lefthand toolbar (I use capital letters for this)
and
Edit in the submenus after you did a selection in SELECT. Here you'll find Remesh.

For option B you can get a nicer boolean result setting a lower TargetEdgeScale in the tool's options.
I'm just a user as you are. Being no Autodesk employee: I do not know where this road will lead to, nor do I claim to've all stuff got right.