2016-06-22 9 views
2

私は4(x、y、z)点で定義されたクワッドを持っています(エッジを持つ平面のように)。私はOpenVDBグリッドを持っています。私は私のクワッド(エッジを含む)の内側にある値1ですべてのボクセルを塗りたい。そのようなことは、手動でクワッド(制限された平面)の各ボクセルを手動で設定することで可能ですか?与えられた平面の中にあるOpenVDBボクセルの塗り方は?

答えて

0

四点が矩形を構築する場合、それはGrid級に存在

void fill(const CoordBBox& bbox, const ValueType& value, bool active = true); 

関数を使用可能とすることができます。回転のためにCoordBBoxを変換することはできません。代わりに、グリッドの変換を変更することによって行う必要があります。そうでない場合は擬似コードでは、それは

CoordBBox plane; // created from your points 
Transform old = grid.transform(); 
grid.setTransform(...); // Some transformation that places the grid correctly with respect to the plane 
grid.fill(plane, 1); 
grid.setTransform(old); 

ようになり、あなたは値を自分で設定する必要があります。

関連する問題