SceneMesh Class¶
Description¶
SceneMesh is used to manage and preserve the results of DenseSpatialMap .
There are two kinds of meshes saved in SceneMesh, one is the mesh of the whole reconstructed scene, hereinafter referred to as meshAll, the other is the recently updated mesh, hereinafter referred to as meshUpdated. meshAll is a whole mesh, including all vertex data and index data, etc. meshUpdated is composed of several mesh block s, each mesh block is a cube, which contains the mesh formed by the object surface in the corresponding cube space.
meshAll is available only when the DenseSpatialMap.updateSceneMesh method is called specifying that all meshes need to be updated. If meshAll has been updated previously and not updated in recent times, the data in meshAll is remain the same.
getNumOfVertexAll¶
Get the number of vertices in meshAll.
- C: int easyar_SceneMesh_getNumOfVertexAll(easyar_SceneMesh * This)¶
- C++17: int getNumOfVertexAll()¶
- Traditional C++: int getNumOfVertexAll()¶
- Java: public int getNumOfVertexAll()¶
- Kotlin: fun getNumOfVertexAll(): Int¶
- Objective-C: - (int)getNumOfVertexAll¶
- Swift: public func getNumOfVertexAll() -> Int32¶
- C#: public virtual int getNumOfVertexAll()¶
getNumOfIndexAll¶
Get the number of indices in meshAll. Since every 3 indices form a triangle, the returned value should be a multiple of 3.
- C: int easyar_SceneMesh_getNumOfIndexAll(easyar_SceneMesh * This)¶
- C++17: int getNumOfIndexAll()¶
- Traditional C++: int getNumOfIndexAll()¶
- Java: public int getNumOfIndexAll()¶
- Kotlin: fun getNumOfIndexAll(): Int¶
- Objective-C: - (int)getNumOfIndexAll¶
- Swift: public func getNumOfIndexAll() -> Int32¶
- C#: public virtual int getNumOfIndexAll()¶
getVerticesAll¶
Get the position component of the vertices in meshAll (in the world coordinate system). The position of a vertex is described by three coordinates (x, y, z) in meters. The position data are stored tightly in Buffer by x1, y1, z1, x2, y2, z2, ... Each component is of float type.
- C: void easyar_SceneMesh_getVerticesAll(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getVerticesAll(Buffer * * Return)¶
- Java: public @Nonnull Buffer getVerticesAll()¶
- Kotlin: fun getVerticesAll(): Buffer¶
- Objective-C: - (easyar_Buffer *)getVerticesAll¶
- Swift: public func getVerticesAll() -> Buffer¶
- C#: public virtual Buffer getVerticesAll()¶
getNormalsAll¶
Get the normal component of vertices in meshAll. The normal of a vertex is described by three components (nx, ny, nz). The normal is normalized, that is, the length is 1. Normal data are stored tightly in Buffer by nx1, ny1, nz1, nx2, ny2, nz2,.... Each component is of float type.
- C: void easyar_SceneMesh_getNormalsAll(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getNormalsAll(Buffer * * Return)¶
- Java: public @Nonnull Buffer getNormalsAll()¶
- Kotlin: fun getNormalsAll(): Buffer¶
- Objective-C: - (easyar_Buffer *)getNormalsAll¶
- Swift: public func getNormalsAll() -> Buffer¶
- C#: public virtual Buffer getNormalsAll()¶
getIndicesAll¶
Get the index data in meshAll. Each triangle is composed of three indices (ix, iy, iz). Indices are stored tightly in Buffer by ix1, iy1, iz1, ix2, iy2, iz2,... Each component is of int32 type.
- C: void easyar_SceneMesh_getIndicesAll(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getIndicesAll(Buffer * * Return)¶
- Java: public @Nonnull Buffer getIndicesAll()¶
- Kotlin: fun getIndicesAll(): Buffer¶
- Objective-C: - (easyar_Buffer *)getIndicesAll¶
- Swift: public func getIndicesAll() -> Buffer¶
- C#: public virtual Buffer getIndicesAll()¶
getNumOfVertexIncremental¶
Get the number of vertices in meshUpdated.
- C: int easyar_SceneMesh_getNumOfVertexIncremental(easyar_SceneMesh * This)¶
- C++17: int getNumOfVertexIncremental()¶
- Traditional C++: int getNumOfVertexIncremental()¶
- Java: public int getNumOfVertexIncremental()¶
- Kotlin: fun getNumOfVertexIncremental(): Int¶
- Objective-C: - (int)getNumOfVertexIncremental¶
- Swift: public func getNumOfVertexIncremental() -> Int32¶
- C#: public virtual int getNumOfVertexIncremental()¶
getNumOfIndexIncremental¶
Get the number of indices in meshUpdated. Since every 3 indices form a triangle, the returned value should be a multiple of 3.
- C: int easyar_SceneMesh_getNumOfIndexIncremental(easyar_SceneMesh * This)¶
- C++17: int getNumOfIndexIncremental()¶
- Traditional C++: int getNumOfIndexIncremental()¶
- Java: public int getNumOfIndexIncremental()¶
- Kotlin: fun getNumOfIndexIncremental(): Int¶
- Objective-C: - (int)getNumOfIndexIncremental¶
- Swift: public func getNumOfIndexIncremental() -> Int32¶
- C#: public virtual int getNumOfIndexIncremental()¶
getVerticesIncremental¶
Get the position component of the vertices in meshUpdated (in the world coordinate system). The position of a vertex is described by three coordinates (x, y, z) in meters. The position data are stored tightly in Buffer by x1, y1, z1, x2, y2, z2, ... Each component is of float type.
- C: void easyar_SceneMesh_getVerticesIncremental(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getVerticesIncremental(Buffer * * Return)¶
- Java: public @Nonnull Buffer getVerticesIncremental()¶
- Kotlin: fun getVerticesIncremental(): Buffer¶
- Objective-C: - (easyar_Buffer *)getVerticesIncremental¶
- Swift: public func getVerticesIncremental() -> Buffer¶
- C#: public virtual Buffer getVerticesIncremental()¶
getNormalsIncremental¶
Get the normal component of vertices in meshUpdated. The normal of a vertex is described by three components (nx, ny, nz). The normal is normalized, that is, the length is 1. Normal data are stored tightly in Buffer by nx1, ny1, nz1, nx2, ny2, nz2,.... Each component is of float type.
- C: void easyar_SceneMesh_getNormalsIncremental(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getNormalsIncremental(Buffer * * Return)¶
- Java: public @Nonnull Buffer getNormalsIncremental()¶
- Kotlin: fun getNormalsIncremental(): Buffer¶
- Objective-C: - (easyar_Buffer *)getNormalsIncremental¶
- Swift: public func getNormalsIncremental() -> Buffer¶
- C#: public virtual Buffer getNormalsIncremental()¶
getIndicesIncremental¶
Get the index data in meshUpdated. Each triangle is composed of three indices (ix, iy, iz). Indices are stored tightly in Buffer by ix1, iy1, iz1, ix2, iy2, iz2,... Each component is of int32 type.
- C: void easyar_SceneMesh_getIndicesIncremental(easyar_SceneMesh * This, easyar_Buffer * * Return)¶
- Traditional C++: void getIndicesIncremental(Buffer * * Return)¶
- Java: public @Nonnull Buffer getIndicesIncremental()¶
- Kotlin: fun getIndicesIncremental(): Buffer¶
- Objective-C: - (easyar_Buffer *)getIndicesIncremental¶
- Swift: public func getIndicesIncremental() -> Buffer¶
- C#: public virtual Buffer getIndicesIncremental()¶
getBlocksInfoIncremental¶
Gets the description object of mesh block in meshUpdate. The return value is an array of BlockInfo elements, each of which is a detailed description of a mesh block.
- C: void easyar_SceneMesh_getBlocksInfoIncremental(easyar_SceneMesh * This, easyar_ListOfBlockInfo * * Return)¶
- C++17: std::vector<BlockInfo> getBlocksInfoIncremental()¶
- Traditional C++: void getBlocksInfoIncremental(ListOfBlockInfo * * Return)¶
- Java: public java.util.@Nonnull ArrayList<@Nonnull BlockInfo> getBlocksInfoIncremental()¶
- Kotlin: fun getBlocksInfoIncremental(): ArrayList<BlockInfo>¶
- Objective-C: - (NSArray<easyar_BlockInfo *> *)getBlocksInfoIncremental¶
- Swift: public func getBlocksInfoIncremental() -> [BlockInfo]¶
- C#: public virtual List<BlockInfo> getBlocksInfoIncremental()¶
getBlockDimensionInMeters¶
Get the edge length of a mesh block in meters.
- C: float easyar_SceneMesh_getBlockDimensionInMeters(easyar_SceneMesh * This)¶
- C++17: float getBlockDimensionInMeters()¶
- Traditional C++: float getBlockDimensionInMeters()¶
- Java: public float getBlockDimensionInMeters()¶
- Kotlin: fun getBlockDimensionInMeters(): Float¶
- Objective-C: - (float)getBlockDimensionInMeters¶
- Swift: public func getBlockDimensionInMeters() -> Float¶
- C#: public virtual float getBlockDimensionInMeters()¶