I created the following object:
I then grouped it, and according to Entity Info it was solid.
Next, I created some cutting objects:
I used Intersect Faces and removed the unwanted elements:
I checked Entity Info again, but it showed as not solid. So I ran Solid Inspector, and this is the result:
For the External Faces issue I clicked “Fix”, which resulted in the faces being removed. However, this left holes in the model:
For the Reversed Faces issue I again clicked “Fix”, this time with no apparent difference.
After all this, the model still did not show as solid.
Can anyone shed some light on this?
Note: I changed the default colour of back faces to red so they are easier to see. I didn’t add any colours to the model.
Not Solid.skp (3.6 MB)
I don’t know why the solid operation failed but Eneroth Face Creator could perhaps be useful to fill in the missing faces, without having to do it manually. Beware that the extension may create unwanted faces if you edges form flat closed loops at other places in the model.
Part of the problem comes from the weird alignment of the hole cutting shapes and the fact that their tapers aren’t uniform. The angle on one side is greater than the other. You can see this in a top view.
If you would make them uniform and oriented correctly, they should all intersect the ring correctly and you shouldn’t have any problem.
Here I’ve made the cutter shapes with symmetrical tapers and rotated them so they align on axis.
After getting the cutters squared away and also aligned with the ring correctly, subtracting them from the ring leaves a solid.
To illustrate @DaveR’s point:
How did you create the cutter array? Aside from the inconsistent taper angles, there are various dimensions that are very odd values.
How did you go about subtracting them? Solid tools?
Eneroth Solid Tools. I use components only and the native solid tools convert components to groups which wrecks my workflow. Eneroth Solid Tools respect the components.
Wow… I never realized that solid tools coverted a component to a group… that was a landmine waiting to happen.
Wait so you only use components in your workflow? I’ve heard of some others doing this… what would you say is the main benefit of that?
There are a lot of benefits for me but that takes this thread off topic. If you want to start a new one, I’ll answer it there.
I created the cutting objects by tracing a circle segment. However, the segment was not on an axis. I recreated them using a segment that was centred on an axis, resulting in symmetrical shapes.
I copied the ring, and added a single instance of the smaller hole to one copy. I also added a single instance of the larger hole to the other copy. Again, I used Intersect Faces and removed the unwanted elements:
The group with the larger hole was still a solid, but the group with the smaller hole was not.
Not Solid - Updated.skp (290.5 KB)
For the small hole you have extra edges in the group.
That edge should prevent the geometry from being solid. Edges that bind exactly 2 faces (or any even number depending on your definition of solid) are allowed, regardless of what the angle is between the faces.
For some reason erasing the edges makes it solid. So maybe they are not “extra” but because of the geometry they are causing a bad joint somehow.
If so the edge must be binding some internal face.
I erased the extra edge, and I’ve now got a solid.
I really appreciate all the help I’ve had with this issue, and I’d like to thank everyone who contributed.