Table of Contents

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)

パラメーター

x
y
z
numOfVertex
startPointOfVertex
numOfIndex
startPointOfIndex
version

フィールド

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