(Signed) volume of the space enclosed by a polygonal mesh.
V = meshVolume(VERTS, FACES)
Computes the volume of the space enclosed by the polygonal mesh
represented by vertices VERTS (as a Nv-by-3 array of cooridnates) and
the array of faces FACES (either as a Nf-by-3 array of vertex indices,
or as a cell array of arrays of vertex indices).
The volume is computed as the sum of the signed volumes of tetrahedra
formed by triangular faces and the centroid of the mesh. Faces need to
be oriented such that normal points outwards the mesh. See:
http://stackoverflow.com/questions/1838401/general-formula-to-calculate-polyhedron-volume
Example
% computes the volume of a unit cube (should be equal to 1...)
[v f] = createCube;
meshVolume(v, f)
ans =
1
See also
meshes3d, meshSurfaceArea, tetrahedronVolume, meshComplement
Package: matgeom