2
$\begingroup$

I recently learned from another user (here https://blender.stackexchange.com/a/83002/919) about the "mesh > intersect (boolean)" command, maybe I forgot about it from some release log, but as I tried to use it (both on 2.78 and 2.78.5) it always gives me an error: "no intersection found".

I tried with a few very simple setups but every tim eit seems to fail for some reason.

See what happens, here on 2.78.5 - aka 2.79 testbuild1 - (only default addons):

enter image description here

Doing this the system console logs:

bpy.ops.object.editmode_toggle()
bpy.ops.mesh.duplicate_move(MESH_OT_duplicate={"mode":1}, TRANSFORM_OT_translate={"value":(0, 0, 1.01412), "constraint_axis":(False, False, True), "constraint_orientation":'GLOBAL', "mirror":False, "proportional":'DISABLED', "proportional_edit_falloff":'SMOOTH', "proportional_size":1, "snap":False, "snap_target":'CLOSEST', "snap_point":(0, 0, 0), "snap_align":False, "snap_normal":(0, 0, 0), "gpencil_strokes":False, "texture_space":False, "remove_on_cancel":False, "release_confirm":False, "use_accurate":False})
bpy.ops.transform.resize(value=(0.574256, 0.574256, 0.574256), constraint_axis=(False, False, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.mesh.select_all(action='TOGGLE')
bpy.ops.mesh.select_all(action='TOGGLE')
bpy.ops.mesh.intersect_boolean()
bpy.data.window_managers["WinMan"].(null) = 'UNION'
bpy.ops.mesh.intersect_boolean(operation='UNION')
No intersections found
bpy.ops.mesh.intersect_boolean(operation='UNION', use_swap=True)
No intersections found
bpy.data.window_managers["WinMan"].(null) = True
bpy.data.window_managers["WinMan"].(null) = 0
bpy.ops.mesh.intersect_boolean(operation='UNION', use_swap=True, threshold=0)
No intersections found
bpy.ops.mesh.intersect_boolean(operation='UNION', use_swap=False, threshold=0)
No intersections found
bpy.data.window_managers["WinMan"].(null) = False
bpy.data.window_managers["WinMan"].(null) = 'INTERSECT'
bpy.ops.mesh.intersect_boolean(operation='INTERSECT', use_swap=False, threshold=0)
bpy.data.window_managers["WinMan"].(null) = 'DIFFERENCE'
bpy.ops.mesh.intersect_boolean(operation='DIFFERENCE', use_swap=False, threshold=0)

Am I doing something wrong? Is the setup wrong? How can I make it work?

$\endgroup$
  • 2
    $\begingroup$ This is pretty much explained in the manual sentence - "Performs boolean operations with the selection on the unselected geometry". While Intersect Knife has Selected/Unselected checkbox, in case of Intersect Boolean it looks like one has to handle it itself. $\endgroup$ – Mr Zak Jul 7 '17 at 19:18
  • 2
    $\begingroup$ Basically, select only part of the mesh, the part you want to cut with. $\endgroup$ – Nghillaz Jul 7 '17 at 20:28
  • $\begingroup$ ...ok I think I got it. RTFM. Thanks both. $\endgroup$ – m.ardito Jul 7 '17 at 20:49
4
$\begingroup$

Since no answers were added, I add one of my own to help others that like me, without reding the manual, may be stuck understanding how this kind of boolean works:

as MrZak and Nghillaz pointed out, I was selecting both part of the mesh, hoping that the "intersect (boolean)" edit-mode command would find an intersection in the selected geometry.

Instead, the assumption is that you only select one of the mesh part that are supposed to be part of the intersection, not both.

See how it works, really:

enter image description here

The default behaviour is to do a boolean difference, but on the left side operation panel you can tweak the mode at your like.

$\endgroup$

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.