スクリプト (MEL) |
MEL のみで使用可能 |
computePolysetVolume |
カテゴリ: モデリング, ポリゴン |
移動先: 概要 戻り値 MEL 例.
computePolysetVolume
選択リストのすべてのポリセットの合計数を出力します。
正確な結果を得るためには、ジオメトリに穴や極小のギャップなどがなく、またほかのサーフェスを貫通するサーフェス(重なった 2 つの球体など)がなく、ジオメトリが閉じていることが必要です。
この手法は次のガウスの発散定理に基づいています。
\int_{vol} Div(f) dV = int_{surf} Dot(f,n) dS
ボリューム セット f=(0,0,z) を計算するために使用する場合は、
ボリューム = \int_{vol} 1 dV = int_{surf} n_z(u,v) du dv で、
n_z は、パラメータ値 (u,v)_のサーフェスに対する法線の「z」コンポーネントです。
三角形しかない場合の方程式は次のとおりです。
ボリューム = sum_{over all triangles} (z0+z1+z2)/3*n_z*A
なし
引数
// Create a poly cube and find its volume
polyCube;
// Result: pCube2 polyCube1 //
computePolysetVolume;
// pCube3 faces = 6 //
// TOTAL VOLUME = 1 //