Skip to main content

STRUCT

ArdkMeshingSession.Configuration

struct Configuration

Properties​

frameRate​

public var frameRate: Int

Target frame rate for the meshing feature

fuseKeyframesOnly​

public var fuseKeyframesOnly: Bool

If true, only high-quality frames will be integrated into the mesh, but updates will be less frequent

maximumIntegrationDistance​

public var maximumIntegrationDistance: Float

The maximum distance from the device sensor to incorporate depth data, in meters

voxelSize​

public var voxelSize: Float

Voxel size for the meshing engine, in meters

enableDistanceBasedVolumetricCleanup​

public var enableDistanceBasedVolumetricCleanup: Bool

If true, the feature will clean up internal data that is far away from the user to improve performance. This will not remove previously-generated mesh.

numVoxelLevels​

public var numVoxelLevels: Int

The levels of detail in the voxel grid By default, this is 0. Setting this to a value greater than 1 will allow lower detail levels to be used in areas with less thorough coverage.

meshBlockSize​

public var meshBlockSize: Float

The size of the mesh blocks, in meters

meshCullingDistance​

public var meshCullingDistance: Float

Mesh culling distance, in meters Setting meshCullingDistance less than maximumIntegrationDistance may lead to unexpected behaviour.

enableMeshDecimation​

public var enableMeshDecimation: Bool

If true, mesh surfaces will be simplified to save compute and memory

filterMeshWithSemantics​

public var filterMeshWithSemantics: Bool

If true, the mesh will be filtered according to the packedAllowlist and/or packedBlocklist.

enableAllowlist​

public var enableAllowlist: Bool

If true, packedAllowlist will be used to filter the mesh. Requires filterMeshWithSemantics to be true.

packedAllowlist​

public var packedAllowlist: UInt32

A bitmask of semantic classes to include in the mesh

enableBlocklist​

public var enableBlocklist: Bool

If true, packedBlocklist will be used to filter the mesh. Requires filterMeshWithSemantics to be true.

packedBlocklist​

public var packedBlocklist: UInt32

A bitmask of semantic classes to exclude from the mesh

Methods​

init(frameRate:fuseKeyframesOnly:maximumIntegrationDistance:voxelSize:enableDistanceBasedVolumetricCleanup:numVoxelLevels:meshBlockSize:meshCullingDistance:enableMeshDecimation:filterMeshWithSemantics:enableAllowlist:packedAllowlist:enableBlocklist:packedBlocklist:)​

public init(
frameRate: Int = 0,
fuseKeyframesOnly: Bool = false,
maximumIntegrationDistance: Float = 0,
voxelSize: Float = 0,
enableDistanceBasedVolumetricCleanup: Bool = false,
numVoxelLevels: Int = 0,
meshBlockSize: Float = 0,
meshCullingDistance: Float = 0,
enableMeshDecimation: Bool = true,
filterMeshWithSemantics: Bool = false,
enableAllowlist: Bool = false,
packedAllowlist: UInt32 = 0,
enableBlocklist: Bool = false,
packedBlocklist: UInt32 = 0
)