DenseSpatialMap Class


DenseSpatialMap is used to reconstruct the environment accurately and densely. The reconstructed model is represented by triangle mesh, which is denoted simply by mesh.

DenseSpatialMap occupies 1 buffers of camera.


Returns True when the device supports dense reconstruction, otherwise returns False.

C: bool easyar_DenseSpatialMap_isAvailable(void)
C++17: static bool isAvailable()
Traditional C++: static bool isAvailable()
Java: public static boolean isAvailable()
Kotlin: companion object fun isAvailable(): Boolean
Objective-C: + (bool)isAvailable
Swift: public static func isAvailable() -> Bool
C#: public static bool isAvailable()


Input port for input frame. For DenseSpatialMap to work, the inputFrame must include image and it’s camera parameters and spatial information (cameraTransform and trackingStatus). See also InputFrameSink .

C: void easyar_DenseSpatialMap_inputFrameSink(easyar_DenseSpatialMap * This, easyar_InputFrameSink * * Return)
C++17: std::shared_ptr<InputFrameSink> inputFrameSink()
Traditional C++: void inputFrameSink(InputFrameSink * * Return)
Java: public @Nonnull InputFrameSink inputFrameSink()
Kotlin: fun inputFrameSink(): InputFrameSink
Objective-C: - (easyar_InputFrameSink *)inputFrameSink
Swift: public func inputFrameSink() -> InputFrameSink
C#: public virtual InputFrameSink inputFrameSink()


Camera buffers occupied in this component.

C: int easyar_DenseSpatialMap_bufferRequirement(easyar_DenseSpatialMap * This)
C++17: int bufferRequirement()
Traditional C++: int bufferRequirement()
Java: public int bufferRequirement()
Kotlin: fun bufferRequirement(): Int
Objective-C: - (int)bufferRequirement
Swift: public func bufferRequirement() -> Int32
C#: public virtual int bufferRequirement()


Create DenseSpatialMap object.

C: void easyar_DenseSpatialMap_create(easyar_DenseSpatialMap * * Return)
C++17: static std::shared_ptr<DenseSpatialMap> create()
Traditional C++: static void create(DenseSpatialMap * * Return)
Java: public static @Nonnull DenseSpatialMap create()
Kotlin: companion object fun create(): DenseSpatialMap
Objective-C: + (easyar_DenseSpatialMap *)create
Swift: public static func create() -> DenseSpatialMap
C#: public static DenseSpatialMap create()


Start or continue runninng DenseSpatialMap algorithm.

C: bool easyar_DenseSpatialMap_start(easyar_DenseSpatialMap * This)
C++17: bool start()
Traditional C++: bool start()
Java: public boolean start()
Kotlin: fun start(): Boolean
Objective-C: - (bool)start
Swift: public func start() -> Bool
C#: public virtual bool start()


Pause the reconstruction algorithm. Call start to resume reconstruction.

C: void easyar_DenseSpatialMap_stop(easyar_DenseSpatialMap * This)
C++17: void stop()
Traditional C++: void stop()
Java: public void stop()
Kotlin: fun stop(): Unit
Objective-C: - (void)stop
Swift: public func stop() -> Void
C#: public virtual void stop()


Close DenseSpatialMap algorithm.

C: void easyar_DenseSpatialMap_close(easyar_DenseSpatialMap * This)
C++17: void close()
Traditional C++: void close()
Java: public void close()
Kotlin: fun close(): Unit
Objective-C: - (void)close
Swift: public func close() -> Void
C#: public virtual void close()


Get the mesh management object of type SceneMesh . The contents will automatically update after calling the DenseSpatialMap.updateSceneMesh function.

C: void easyar_DenseSpatialMap_getMesh(easyar_DenseSpatialMap * This, easyar_SceneMesh * * Return)
C++17: std::shared_ptr<SceneMesh> getMesh()
Traditional C++: void getMesh(SceneMesh * * Return)
Java: public @Nonnull SceneMesh getMesh()
Kotlin: fun getMesh(): SceneMesh
Objective-C: - (easyar_SceneMesh *)getMesh
Swift: public func getMesh() -> SceneMesh
C#: public virtual SceneMesh getMesh()


Get the lastest updated mesh and save it to the SceneMesh object obtained by DenseSpatialMap.getMesh .

The parameter updateMeshAll indicates whether to perform a full update or an incremental update. When updateMeshAll is True, full update is performed. All meshes are saved to SceneMesh . When updateMeshAll is False, incremental update is performed, and only the most recently updated mesh is saved to SceneMesh .

Full update will take extra time and memory space, causing performance degradation.

C: bool easyar_DenseSpatialMap_updateSceneMesh(easyar_DenseSpatialMap * This, bool updateMeshAll)
C++17: bool updateSceneMesh(bool updateMeshAll)
Traditional C++: bool updateSceneMesh(bool updateMeshAll)
Java: public boolean updateSceneMesh(boolean updateMeshAll)
Kotlin: fun updateSceneMesh(updateMeshAll: Boolean): Boolean
Objective-C: - (bool)updateSceneMesh:(bool)updateMeshAll
Swift: public func updateSceneMesh(_ updateMeshAll: Bool) -> Bool
C#: public virtual bool updateSceneMesh(bool updateMeshAll)