Struct BlockInfo
- 名前空間
- easyar
- アセンブリ
- EasyAR.Sense.dll
dense reconstruction で得られたモデルは三角形メッシュで表され、mesh と呼ばれます。mesh は頻繁に更新されるため、効率を確保するために、再構築モデル全体の mesh は多数の mesh block に分割されます。mesh block は一辺がおよそ 1 メートルの立方体で構成され、その中に vertex や index などの要素があります。
BlockInfo は mesh block の内容を記述します。ここで (x,y,z) は mesh block のインデックスです。(x,y,z) に各 mesh block の物理サイズを掛けると、この mesh block の origin の world coordinate system における座標を取得できます。表示する必要のある部分は、world 内の mesh block の位置によって事前にフィルタリングでき、レンダリングに必要な時間を節約できます。
</p>
public struct BlockInfo
コンストラクター
BlockInfo(int, int, int, int, int, int, int, int)
public BlockInfo(int x, int y, int z, int numOfVertex, int startPointOfVertex, int numOfIndex, int startPointOfIndex, int version)
パラメーター
xyznumOfVertexstartPointOfVertexnumOfIndexstartPointOfIndexversion
フィールド
numOfIndex
1 つの mesh block が持つ indices の数です。連続する 3 つの vertices ごとに 1 つの triangular face を構成します。
public int numOfIndex
numOfVertex
1 つの mesh block が持つ vertices の数です。
public int numOfVertex
startPointOfIndex
startPointOfVertex と同様です。index data が index buffer に格納される開始位置で、現在の mesh block が何番目の index から始まるかを示します。offset のバイト数ではありません。開始位置の offset は startPointOfIndex*3*4 bytes です。
public int startPointOfIndex
startPointOfVertex
vertex data が vertex buffer に格納される開始位置で、現在の mesh block が何番目の vertex から始まるかを示します。offset のバイト数ではありません。開始位置の offset は startPointOfVertex*3*4 bytes です。
public int startPointOfVertex
version
現在の mesh block が更新された回数です。version が大きいほど更新回数が多いことを示します。`DenseSpatialMap.updateSceneMesh`_ を呼び出した後に mesh block の version が大きくなった場合、その内容が変化したことを示します。
public int version
x
mesh block のインデックス (x,y,z) の x です。
public int x
y
mesh block のインデックス (x,y,z) の y です。
public int y
z
mesh block のインデックス (x,y,z) の z です。
public int z