hello everyone,

i have a model that isn’t manifold but i need to test when it is fully closed which means all faces are drawn

and there is no holes in my model ? like if it’s a cube it will be close when all 6 faces are drawn otherwise it’s still not closed ? how can i do that i tried making it a group and use manifold but my model isn’t manifold there may be some faces larger than others …

i gave an example of my model below.

roof intersection.skp (267.8 KB)

The Blue version is not a manifold solid - when it is grouped.

This is because it has several edges that have only one face.

The definition of a manifold solid is that every edge has exactly two faces - no fewer and no more !

If the Blue faces are intersected together, then it will still not be a manifold solid - because there are then some edges with one face, and now some edges with four faces !

If you erase any edges with one face what’s left should then be a solid.

Make it all inside a group NOT in the base model context.

Intersect the faces.

Collect all of the edges in that group.entities context.

I’d do it like this:

```
edges_to_go=[]
group.entities.grep(Sketchup::Edge).each{|e|
edges_to_go << e if e.faces.length != 2
}
group,entities.erase_entities(edges_to_go)
```

yes i know the manifold groups but i need to know if there is no holes in my model so that i can delete the extra faces and edges, as a test if the model doesn’t contain hols i’ll delete the extra edges else i won’t. how can i know that the model doesn’t contain any holes ?

If you are making overlapping roof planes to ALL wall top edges then there be no ‘holes’ - since they will all intersect each other.

You then need to intersect these faces to cut them at those intersections.

Then run my code snippet to remove the one-face edges to form proper ridges and hips/valleys etc…