ランダムな形状の 3D オブジェクトの体積を計算するスクリプトを作成しています。オブジェクトが中空であるかどうかは気にしません。その総体積を計算する必要があります。私が持っているデータ モデルは、1 と 0 の 3D テーブル (ピクセルのヒストグラム) です。1 は明らかにオブジェクトがある場所であり、何もない場所では 0 です。十分に塗りつぶされたオブジェクトのボリュームを計算するには、1 を含むすべてのピクセルを合計し、ピクセル ボリュームを掛けるだけです。一方、主な問題は、中空のオブジェクトがある場合に残っているため、0 が 1 で囲まれています。したがって、ここで説明した簡単な方法を適用することは、もはや有効ではありません。私たちがする必要があるのは、すべてのオブジェクト領域を 1 で埋めることです。ここに2Dの例があるので、理解できます
2D テーブル:
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 1 1 1 1 1 0 0 0
0 0 1 1 0 0 0 1 1 1 0 0
0 0 0 1 0 0 1 0 0 0 0 0
0 0 1 0 0 0 0 1 0 0 0 0
0 0 1 0 0 0 0 1 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
これに変換する必要があります
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 1 1 1 1 1 0 0 0
0 0 1 1 1 1 1 1 1 1 0 0
0 0 0 1 1 1 1 0 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 1 1 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0