Struct BlockInfo
- 名前空間
- easyar
- アセンブリ
- EasyAR.Sense.dll
高密度再構築で得られたモデルは三角メッシュで表現され、meshと呼ばれます。効率を保証するため、meshは頻繁に更新されるため、再構築モデル全体のmeshは非常に多くのmesh blockに分割されます。1つのmesh blockは約1メートル四方の立方体で構成され、vertexやindexなどの要素を含みます。
BlockInfoはmesh blockの内容を記述します。(x,y,z)はmesh blockのインデックスであり、(x,y,z)に各mesh blockの物理サイズを乗算することで、当該mesh blockの原点のワールド座標系における座標が得られます。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が持つインデックスの数。3つの頂点が連続して1つの三角面を形成します。
public int numOfIndex
numOfVertex
1つのmesh blockが持つ頂点の数。
public int numOfVertex
startPointOfIndex
startPointOfVertexと同様。インデックスデータがindex bufferに格納される開始位置。現在のmesh blockに属するインデックスが何番目から始まるかを示します。バイト単位のオフセットではなく、開始位置のオフセットはstartPointOfIndex*3*4バイトです。
public int startPointOfIndex
startPointOfVertex
頂点データがvertex bufferに格納される開始位置。現在のmesh blockに属する頂点が何番目から始まるかを示します。バイト単位のオフセットではなく、開始位置のオフセットはstartPointOfVertex*3*4バイトです。
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