Table of Contents

Struct BlockInfo

命名空間
easyar
組件
EasyAR.Sense.dll

稠密重建得到的模型使用三角網格表示,稱為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的原點在世界坐標系中的坐標。可以通過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

一個mesh block中所擁有的索引的數目,每連續3個頂點構成一個三角面。

public int numOfIndex

numOfVertex

一個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