Operating system: Gentoo Linux
I have a funny pipe shaped object. The following script produces a volume of 0.124:
>>> bm = bmesh.new() >>> bm.from_mesh(bpy.context.active_object.data) # Ensure funny pipe shaped object is selected >>> bm.calc_volume() # returns 0.124
The actual volume should be approximately 0.521.
The attached file has the script and object ready for you to run :)