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++
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++
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)
- C++
std::shared_ptr<Buffer> getVerticesAll()
- 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)
- C++
std::shared_ptr<Buffer> getNormalsAll()
- 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)
- C++
std::shared_ptr<Buffer> getIndicesAll()
- 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++
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++
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)
- C++
std::shared_ptr<Buffer> getVerticesIncremental()
- 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)
- C++
std::shared_ptr<Buffer> getNormalsIncremental()
- 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)
- C++
std::shared_ptr<Buffer> getIndicesIncremental()
- 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++
std::vector<BlockInfo> getBlocksInfoIncremental()
- 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++
float getBlockDimensionInMeters()
- Java
public float getBlockDimensionInMeters()
- Kotlin
fun getBlockDimensionInMeters(): Float
- Objective-C
- (float)getBlockDimensionInMeters
- Swift
public func getBlockDimensionInMeters() -> Float
- C#
public virtual float getBlockDimensionInMeters()