3角ポリゴンの3点の座標が、 の場合
を全ての3角形ポリゴンで計算して、和を求めればよい。
但し、 3角ポリゴンはソリッドでならなくてはならない。
以下は、javascriptのサンプルのコードである。volumeValue に体積が求まる。
var volumeValue = 0.0;
var vol = 0.0;
for (let i = 0; i < mesh.geometry.faces.length; i++) {
//calc volume
p1 = mesh.geometry.vertices[mesh.geometry.faces[i].a].clone();
p2 = mesh.geometry.vertices[mesh.geometry.faces[i].b].clone();
p3 = mesh.geometry.vertices[mesh.geometry.faces[i].c].clone();
var v = (p1.y * p2.z - p1.z * p2.y) * p3.x + (p1.z * p2.x - p1.x * p2.z) * p3.y
+ (p1.x * p2.y - p1.y * p2.x) * p3.z;
vol = (1 / 6) * v;
volumeValue = volumeValue + vol;
}