Class MLSpatialMapper | Magic Leap XR Plugin | 6.0.0
docs.unity3d.com
    Show / Hide Table of Contents

    Class MLSpatialMapper

    Inheritance
    Object
    MLSpatialMapper
    Namespace: UnityEngine.XR.MagicLeap
    Syntax
    public sealed class MLSpatialMapper : MonoBehaviour

    Properties

    batchSize

    How many meshes to update per batch. Larger values are more efficient, but have higher latency.

    Declaration
    public int batchSize { get; set; }
    Property Value
    Type Description
    Int32

    computeNormals

    When enabled, the system will compute the normals for the triangle vertices.

    Declaration
    public bool computeNormals { get; set; }
    Property Value
    Type Description
    Boolean

    currentMeshType

    The current mesh type being surfaced by the subsystem provider.

    Declaration
    public MLSpatialMapper.MeshType currentMeshType { get; }
    Property Value
    Type Description
    MLSpatialMapper.MeshType

    density

    Declaration
    public float density { get; set; }
    Property Value
    Type Description
    Single

    disconnectedComponentArea

    Any component that is disconnected from the main mesh and which has an area less than this size will be removed.

    Declaration
    public float disconnectedComponentArea { get; set; }
    Property Value
    Type Description
    Single

    fillHoleLength

    Boundary distance (in meters) of holes you wish to have filled.

    Declaration
    public float fillHoleLength { get; set; }
    Property Value
    Type Description
    Single

    levelOfDetail

    Declaration
    [Obsolete("Replaced by density")]
    public MLSpatialMapper.LevelOfDetail levelOfDetail { get; set; }
    Property Value
    Type Description
    MLSpatialMapper.LevelOfDetail

    meshIdToGameObjectMap

    A Dictionary which maps mesh ids to their GameObjects.

    Declaration
    public Dictionary<MeshId, GameObject> meshIdToGameObjectMap { get; }
    Property Value
    Type Description
    Dictionary<MeshId, GameObject>

    meshParent

    The parent transform for generated meshes.

    Declaration
    public Transform meshParent { get; set; }
    Property Value
    Type Description
    Transform

    meshPrefab

    Get or set the prefab which should be instantiated to create individual mesh instances. May have a mesh renderer and an optional mesh collider for physics.

    Declaration
    public GameObject meshPrefab { get; set; }
    Property Value
    Type Description
    GameObject

    meshQueueSize

    Controls the number of meshes to queue for generation at once. Larger numbers will lead to higher CPU usage.

    Declaration
    public uint meshQueueSize { get; set; }
    Property Value
    Type Description
    UInt32

    meshType

    Whether to generate a triangle mesh or point cloud points.

    Declaration
    [Obsolete("Replaced by requestedMeshType and currentMeshType")]
    public MLSpatialMapper.MeshType meshType { get; set; }
    Property Value
    Type Description
    MLSpatialMapper.MeshType

    planarize

    When enabled, the system will planarize the returned mesh (planar regions will be smoothed out).

    Declaration
    public bool planarize { get; set; }
    Property Value
    Type Description
    Boolean

    pollingRate

    How often to check for updates, in seconds. More frequent updates will increase CPU usage.

    Declaration
    public float pollingRate { get; set; }
    Property Value
    Type Description
    Single

    removeMeshSkirt

    When enabled, the mesh skirt (overlapping area between two mesh blocks) will be removed. This field is only valid when the Mesh Type is Blocks.

    Declaration
    public bool removeMeshSkirt { get; set; }
    Property Value
    Type Description
    Boolean

    requestedMeshType

    Request Magic Leap to generate a triangle mesh or point cloud points.

    Declaration
    public MLSpatialMapper.MeshType requestedMeshType { get; set; }
    Property Value
    Type Description
    MLSpatialMapper.MeshType

    requestVertexConfidence

    When enabled, the system will generate confidence values for each vertex, ranging from 0-1.

    Declaration
    public bool requestVertexConfidence { get; set; }
    Property Value
    Type Description
    Boolean
    See Also
    TryGetConfidence(MeshId, List<Single>)

    Methods

    DensityToLevelOfDetail(Single)

    Declaration
    public static MLSpatialMapper.LevelOfDetail DensityToLevelOfDetail(float density)
    Parameters
    Type Name Description
    Single density
    Returns
    Type Description
    MLSpatialMapper.LevelOfDetail

    DestroyAllMeshes()

    Destroy all mesh GameObjects created by this MLSpatialMapper. The meshIdToGameObjectMap will also be cleared.

    Declaration
    public void DestroyAllMeshes()

    LevelOfDetailToDensity(MLSpatialMapper.LevelOfDetail)

    Declaration
    public static float LevelOfDetailToDensity(MLSpatialMapper.LevelOfDetail lod)
    Parameters
    Type Name Description
    MLSpatialMapper.LevelOfDetail lod
    Returns
    Type Description
    Single

    RefreshAllMeshes()

    'Refresh' all known meshes (meshes that are in meshIdToGameObjectMap). This will force all meshes to be regenerated with the current settings.

    Declaration
    public void RefreshAllMeshes()

    RefreshMesh(MeshId)

    'Refresh' a single mesh. This forces the mesh to be regenerated with the current settings.

    Declaration
    public void RefreshMesh(MeshId meshId)
    Parameters
    Type Name Description
    MeshId meshId

    The MeshId of the mesh to regenerate.

    TryGetConfidence(MeshId, List<Single>)

    Retrieve the confidence values associated with a mesh. Confidence values range from 0..1. requestVertexConfidence must be enabled.

    Declaration
    public bool TryGetConfidence(MeshId meshId, List<float> confidenceOut)
    Parameters
    Type Name Description
    MeshId meshId

    The unique MeshId of the mesh.

    List<Single> confidenceOut

    A List of floats, one for each vertex in the mesh.

    Returns
    Type Description
    Boolean

    True if confidence values were successfully retrieved for the mesh with id meshId.

    See Also
    requestVertexConfidence

    Events

    meshAdded

    An event which is invoked whenever a new mesh is added

    Declaration
    public event Action<MeshId> meshAdded
    Event Type
    Type Description
    Action<MeshId>

    meshRemoved

    An event which is invoked whenever an existing mesh is removed.

    Declaration
    public event Action<MeshId> meshRemoved
    Event Type
    Type Description
    Action<MeshId>

    meshUpdated

    An event which is invoked whenever an existing mesh is updated (regenerated).

    Declaration
    public event Action<MeshId> meshUpdated
    Event Type
    Type Description
    Action<MeshId>
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023