6
$\begingroup$

I would like to select part of a mesh using a plane as a "boundary indicator".

In the screenshot below that would be the mesh part above the plane:

enter image description here

I can get the desired selection by using Bisect tool (Bisect, hide, select a vertex, select linked, unhide):

enter image description here

however, this is visually not as convenient as using a plane (this is only one step in a longer workflow which has to be simplified). Beside that, Bisect cuts trough the whole object, what is inconvenient (notice the bisect-line cutting another part of the mesh in lower right).

I know I can use Boolean modifier to get only the part above the plane, but I do not want to cut it off - I just want to select it for editing.

The "transition line" does not have to be straight (i.e. adding vertices and edges), it can use existing edges (resulting in a jagged "transition line").

Edit:
What I meant is to use the plane in a similar way it would be used in Boolean modifer, just not to "cut off" but to select that part of the mesh.
The goal is to automate the process, e.g. operator positions the plane and clicks on a button (to run a script that does the rest; I can write the script once I know the steps).

$\endgroup$
2
  • $\begingroup$ I have actually found a solution myself (thanks to @Mr Zak for inspiration) using the Boolean modifier to get two halves then joining them back. Will post the answer in couple of minutes. $\endgroup$
    – spacer
    Apr 13, 2016 at 15:22
  • $\begingroup$ Inspired by this and other questions like thus, i wrote a (free) add-on, build on bisect, if i may point to blender.stackexchange.com/questions/143100/… $\endgroup$
    – Xylvier
    Nov 21, 2019 at 16:50

3 Answers 3

6
$\begingroup$

1. Lasso Select:

You can use Lasso Select with Ctrl + LMB.

enter image description here

Here a related Post for types of selection.

Limit selection to visible should be disabled to select all vertices in the Lasso area.

enter image description here
Image by iKlsR♦ answer



2. Object as Camera:

This solution involves a 2nd Object which is perpendecular to the Plane and use it as a Camera. That makes it easier for a Border Selection and the 3D Cursor is used for the orientation.


  • Position the Plane at the desired Location.
  • Dublicate the Plane with Shift + D in Object Mode
  • Rotate the duplicated Plane by 90° around the local X-axis. R + 2xX + 90
  • Translate the rotated Plane along the local Z-axis with G + 2xZ.

    enter image description here


  • Select the first Plane and press Shift + S > Cursor to Selected.

  • Select the second Plane and press Ctrl + Numpad 0 to make the Plane the active Camera.

  • Select your Object, toggle to Edit Mode and Border Select B the desired Vertices. The 3D Cursor helps where to stop with the selection.

    enter image description here Vertices selection successfully

$\endgroup$
1
  • $\begingroup$ thank you for this, I learned couple of new things, but this uses the plane only for orientation. I may have not emphasized the need for automation enough - I am updating the question now. $\endgroup$
    – spacer
    Apr 13, 2016 at 8:58
3
$\begingroup$

Use Clipping Border to hide everything except for the desired part of mesh.

  1. Select any face which is directed roughly under the same angle as you'd like your selection to be.
  2. Enter front or side ortho view regarding that selected face via Shift+Numpad1 or Shift+Numpad3.
    This is done to ease the process of finding correct angle for selection.
  3. Enable Clipping Border tool with Alt+B and draw desired area which will be the border of the selection.
  4. Select with Border or Circle Select tools. Once selection is done disable Clipping Border with the same command, Alt+B.

    selection demo GIF

$\endgroup$
4
  • $\begingroup$ shift + numpad1 is very useful. i knew it that there is an easier way, but didn't know how. thx for sharing. $\endgroup$
    – Dan
    Apr 13, 2016 at 0:50
  • $\begingroup$ @Mr Zak, thank you for this, I also learned couple of new things from you, but this uses the plane only as a visual guide. I may have not emphasized the need for automation enough - I am updating the question now. $\endgroup$
    – spacer
    Apr 13, 2016 at 8:58
  • 1
    $\begingroup$ @spacer I see now and I think this isn't possible by default and without scripting. Every method I can recall assumes cutting object first, like Mesh > Faces > Intersect or this addon. $\endgroup$
    – Mr Zak
    Apr 13, 2016 at 9:28
  • $\begingroup$ @Mr Zak, I was actually able to use Mesh -> Faces -> Intersect to select a part of the mesh in a similar way as with Bisect, but I cannot add an "independent" plane to the mesh (the added plane gets "glued" to the mesh and moving it drags the mesh around too). Also, the same issue as with Bisect (operator must select something in the mesh part to select linked) is a bit inconvenient. Anyway, your comment about cutting objects gave me an idea with Boolean modifier that just might work - I'll try it out and get back with results. $\endgroup$
    – spacer
    Apr 13, 2016 at 14:52
1
$\begingroup$

I was able to do this using Boolean modifier to get two halves then joining them back.

This is the procedure (assuming a Plane is already in place):

  1. Duplicate the original object
  2. Add Boolean modifier to the dupe, Operation: Difference, Object: Plane, and Apply it (this leaves the part above the plane)
  3. Switch to Edit Mode, select all
  4. Add new Vertex Group, Assign it
  5. Switch to Object mode, select original object
  6. Add Boolean modifier to the original object, Operation: Intersect, Object: Plane, Apply it (this leaves the part below the plane)
  7. Do Shift + select to add the top part to selection and join them (Object -> Join)
  8. Switch to Edit Mode, select all
  9. Do the Tools -> Remove Doubles (this "fuses" the halves but leaves one face between the two halves)
  10. Do the Select -> Non Manifold to select the edge of the extra face
  11. Do the Delete -> Face
  12. Go to the Vertex Group assigned above and Select it

The result is this: enter image description here

It may be a lot of steps but it is fully automatable.

Note that selecting non manifold edges and then deleting the faces may not be an option for automation if you have non manifold edges elsewhere.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .