Unable to calculate volume

Hi,
The attached file gives the message : unable to calculate volume. I can not find out why.
ZoomNaked gives: Object does not have naked edges.
SelOpenPolysrf gives: No objects added to selection.


item_0041124_Angle_Bracket_8_40x40_Zn_simplified.3dm (410.9 KB)

I am using Rhino Version 7 SR8 (7.8.21196.5001, 2021-07-15).
Cheers,
Bas

No idea. Your tolerance seems reasonable, and the polysurface is not a “bad” object: SelBadObjects does not select it. Curious

Hi @Bas_Goris
I can’t help you with the “why”, but I can tell you where - see attached file (just join the four small surfaces to the main part). The 4 small slivers on the inside are - for some reason - not trimming well. I suspect that it has to do with the seams of the untrimmed cylinders being right on the seams of the adjacents faces. What I did was to untrim the surfaces, use SrfSeam to move the seams “out of the way”, retrim and rejoin. Rhino should of course flag this as bad!
item_0041124_Angle_Bracket_8_40x40_Zn_simplified_JN.3dm (511.6 KB)
HTH, Jakob

1 Like

There are also a bunch of out of tolerance edges in there, if you Explode and RebuildEdges, then try to re-join you will see them. The corner spherical octants are particularly bad, with edge tolerances reporting this:

This is likely also the cause of the 3 inner trimmed cylinder surfaces not being able to have their area calculated and therefore the volume calculation failing. As Jakob said re-trimming them fixes them. But there are a few other areas to look at to get a good closed solid with all component surfaces within edge tolerance.

1 Like

Thanks all for your help. This helps me to go further. I hope that McNeel will make a better help or guideline for a message like “unable to …”

The problem here seems to be the model was built not using good modeling practices, so the Volume tool had to bail out.

The troubleshooting process when this happens is to Explode the polysurface, run RebuildEdges to default tolerances, and Join again using appropriate tolerances.

Use the ShowEdges to see the problems.

Here’s your model:

3 Likes

I have a model that is a closed polysurface that also fails to calculate the volume. I exploded it, ran RebuildEdges and re-joined the surfaces. Not sure if this is going to matter, but this was imported from a vendor, so I didn’t make the original model.

image

Can’t calculate volume.3dm (2.7 MB)

Thanks,

Dan

At least one surface is unable to have its area calculated. Here is the culprit:

I extracted that surface, untrimmed it, re-trimmed it with the rest of the solid and joined - volume works.
72.101 cm3

Thanks Mitch. I need the volume for something I’m doing in a script, so maybe I can just fix it in the script and retry to get the volume. Seems like it should be simple enough.

Bounding box maybe…?

I’ll keep that as a plan B.

Thanks,

Dan

Mesh the object and get the volume of the mesh. Almost always works.

2 Likes

I was about to write the same thing. It has helped me in the past in many occasions where Rhino was unable to calculate perfectly modeled closed volumes.

Hi @DanBayn,

I’ve logged this issue.

https://mcneel.myjetbrains.com/youtrack/issue/RH-72532

– Dale

2 Likes