0
$\begingroup$

I thought Blender had a definition of non/manifold faces, and in my understanding, a manifold face would be one that touches (is directly connected to) other faces with all of its edges.

Turns out, Blender doesn't have a direct tool for it.

And so I need to select (non)manifold faces simply.

In some cases, we could select faces by number of touching faces (again, not possible with vanilla Blender), but it's not the same and could solve this only in some situations (though it would help in my specific case).

Criteria like these are available for edges, but selecting edges and later switching to face selection mode doesn't do the trick.

Maybe a script could be a rescue here?

Example mesh where I need to select non-manifold faces:

$\endgroup$

3 Answers 3

1
$\begingroup$

To select all faces that have non-manifold edges, go into Edge Select mode, then from the top menu choose Select > Select All by Trait > Non Manifold. Now that all non-manifold edges are selected, you can invert the selection with Ctrl+I. These are all manifold edges. Then switch to Face Select mode which leaves only faces selected and deselects edges. What remains are faces that only have manifold edges. Now invert the face selection and you have all faces selected which have at least one non-manifold edge.

Previous part of the answer which explains the concept of non-manifold and loos geometry more in-depth:

There are actually not really non-manifold faces. Usually the edges determine if something is manifold or not.

An object has a non-manifold edge where the edge is connected with more or less than two faces.

A vertex that is not a face corner is either part of a non-manifold edge or it is a loose vertex and can either be selected in Blender as non-manifold or loose geometry.

Loose Geometry in Blender are either: in Vertex Select mode vertices that do not belong to an edge and therefore no face, in Edge Select mode individual or connected edges that do not belong to a face or in Face Select mode single faces that are not connected to at least one other face.

So as you see, there are not really non-manifold faces as this is determined by edges. Technically a single face is non-manifold because all its edges are non-manifold. A face where not all edges are connected to another face are non-manifold because the unconnected edge is non-manifold. A face which has more than one neighbouring face sharing the same edge each is non-manifold because that edge is non-manifold.

So if you want to find non-manifold edges, in Vertex Select or Edge Select mode go to Select > Select All by Trait > Non Manifold.

If you want single faces that are not connected to other faces, in Face Select mode go to Select > Select All by Trait > Loose Geometry or to find connected faces inside a mesh use Interior Faces (which usually have non-manifold edges).

The only problematic thing with the option Interior Faces is, it will not select faces inside a mesh which are not connected to the outside and if there are two or more interior faces connected to each other but not the outside mesh, they will not be selected as loose geometry either.

$\endgroup$
7
  • $\begingroup$ So I get there's not really a tool definition of "manifold face" the way I put it. I expected that, but I believe it should be possible to create such definition in Python and use it as selection criteria. So a script would analyse all faces of an object, their edges and their "manifold" property. If a face is bound by at least one non-manifold edge, it's marked as "non-manifold face" and selected. $\endgroup$
    – michalpe
    Commented Apr 12 at 12:59
  • 1
    $\begingroup$ @michalpe I do not know anything about scripting, sorry. I was going by the question's tags faces and select. Basically you can select non-manifold edges in Edge Select mode and then switch to Face Select - this will automatically deselect non-manifold edges that are not part of a face, because in Face Select mode only faces are selected. To get all manifold faces, you can then invert the selection. Or select non-manifold edges, invert the edge selection and what is left are manifold edges that are automatically parts of manifold faces as well. $\endgroup$ Commented Apr 12 at 13:07
  • $\begingroup$ The latter I did not put in my answer because I did not really understand what your goal is - finding manifold faces or non-manifold faces? $\endgroup$ Commented Apr 12 at 13:10
  • $\begingroup$ In the end: I need non-manifold faces selected but it's just the matter of inverting selection. Actually, the last method you described in your last comment: "select non-manifold edges, invert the edge selection and what is left are manifold edges that are automatically parts of manifold faces as well" is the solution. If I then switch to face select mode, I will get the "manifold faces". If you post it as an answer, I will tick is as a solution. $\endgroup$
    – michalpe
    Commented Apr 12 at 13:24
  • 1
    $\begingroup$ I didn't, sorry, I was just AFK. Just accepted your answer. And I didn't think all this through enough to realize it can be done by a smart combination of existing commands. I made it more complicated that it actually was, and I appreciate your comments! $\endgroup$
    – michalpe
    Commented Apr 13 at 11:12
-1
$\begingroup$

The definition of "non-manifold" is a little more complex, but Blender has a tool for selecting non-manifold areas: you can find it in Edit mode, in vertex or edge mode, in the Select Menu > Select all by trait > Non manifold

enter image description here

$\endgroup$
4
  • $\begingroup$ Yes, but it doesn't work in face selection mode. I specifically said I need it for faces. I have already figured what you said. $\endgroup$
    – michalpe
    Commented Apr 12 at 12:05
  • $\begingroup$ Following my definition of manifold face, how would you select only the non-manifold faces of this mesh? drive.google.com/file/d/10hY5dpSrGJn0y2PewO1-mFf2yafs2uSG/… $\endgroup$
    – michalpe
    Commented Apr 12 at 12:08
  • $\begingroup$ Your definition (which is not about being "manifold") in your example would refer to all faces except thoose which share an edge with the boundary loop, so I would select the edge boundary loop, hide it, switch to face select mode, select all faces, unhide all (without selecting) and invert the selection. $\endgroup$ Commented Apr 12 at 13:36
  • $\begingroup$ @josh_sanfelici, apologies for my greatly delayed response, but yes, the method you described in the end works as well as Gordon's idea. $\endgroup$
    – michalpe
    Commented Apr 21 at 10:31
-1
$\begingroup$

Have you tried using / enabling the 3D-Print Toolbox add-on it's a built in add-on

img1

img2

Do this in Edit Mode

img3

$\endgroup$
4
  • $\begingroup$ Yes, I use it all the time, but y'all not reading my whole question or I don't know. I'm specifically referring to non-manifold FACES. Edge selection is useless to me. I need a "procedural" way to select non-manifold faces of a mesh like this one but way larger: drive.google.com/file/d/10hY5dpSrGJn0y2PewO1-mFf2yafs2uSG/… $\endgroup$
    – michalpe
    Commented Apr 12 at 12:12
  • $\begingroup$ Maybe this video will help youtu.be/0rgrLWFUjlk?feature=shared also people may hesitate clicking on links in comments. It might be helpful to people trying to help you if you uploaded an example blend file to the site blend-exchange.com and add that link in the question. $\endgroup$
    – Rick T
    Commented Apr 12 at 12:27
  • $\begingroup$ Done, added the Blend. And speaking of the video: No, it doesn't. Have you actually ever watched it or did you post a random link to a video vaguely related to the topic? I am quite capable of searching stuff on my own and I indeed did my research. I know my question is kind of specific so it needs to be read with understanding. I'm not beginner in Blender and I believe I have already exhausted popular solutions. $\endgroup$
    – michalpe
    Commented Apr 12 at 12:40
  • $\begingroup$ Yes, I've watched it multiple times and it's helped me with multiple different issues dealing with manifold issues. Sometimes the issue you have may be fixable in another way just by taking a different look at things. But it seems you have blinders on. Good Luck. $\endgroup$
    – Rick T
    Commented Apr 12 at 17:15

You must log in to answer this question.

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