unreal.MagicLeapMeshTrackerComponent

class unreal.MagicLeapMeshTrackerComponent(outer=None, name='None')

Bases: unreal.SceneComponent

The MeshTrackerComponent class manages requests for environmental mesh data, processes the results and provides them to the calling system. The calling system is able request environmental mesh data within a specified area. Various other search criteria can be set via this class’s public properties. Mesh data requests are processed on a separate thread. Once a mesh data request has been processed the calling system will be notified via an FOnMeshTrackerUpdated broadcast.

C++ Source:

  • Plugin: MagicLeap

  • Module: MagicLeap

  • File: MagicLeapMeshTrackerComponent.h

Editor Properties: (see get_editor_property/set_editor_property)

  • absolute_location (bool): [Read-Write] If RelativeLocation should be considered relative to the world, rather than the parent

  • absolute_rotation (bool): [Read-Write] If RelativeRotation should be considered relative to the world, rather than the parent

  • absolute_scale (bool): [Read-Write] If RelativeScale3D should be considered relative to the world, rather than the parent

  • asset_user_data (Array(AssetUserData)): [Read-Write] Array of user data stored with the component

  • auto_activate (bool): [Read-Write] Whether the component is activated at creation or must be explicitly activated.

  • block_vertex_colors (Array(Color)): [Read-Write] Colors through which we cycle when setting vertex color by block.

  • bounding_volume (BoxComponent): [Read-Write] Bounding box for the mesh scan. The mesh will be scanned for only within this box.

  • bricks_per_frame (int32): [Read-Write] Specifies the number of MR Mesh bricks to create per frame. This is to
    amortize the cost of brick creation across frames rather than creating

    all N bricks delivered in response to each meshing query. If the value is <=0 then all meshes will be pushed to MR Mesh as they are provided by the system.

  • can_ever_affect_navigation (bool): [Read-Write] Whether this component can potentially influence navigation

  • component_tags (Array(Name)): [Read-Write] Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.

  • detail_mode (DetailMode): [Read-Write] If detail mode is >= system detail mode, primitive won’t be rendered.

  • disconnected_section_area (float): [Read-Write] Any section that is disconnected from the main mesh and has an area (in Unreal Units squared)
    less than this value will be removed.

    0 means do not remove disconnected sections. A good value is 50cm.

  • editable_when_inherited (bool): [Read-Write] True if this component can be modified when it was inherited from a parent actor class

  • hidden_in_game (bool): [Read-Write] Whether to hide the primitive in game, if the primitive is Visible.

  • is_editor_only (bool): [Read-Write] If true, the component will be excluded from non-editor builds

  • level_of_detail (MagicLeapMeshLOD): [Read-Write] Meshing LOD.

  • mesh_type (MagicLeapMeshType): [Read-Write] The type of mesh to query.

  • mobility (ComponentMobility): [Read-Write] How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.

  • on_component_activated (ActorComponentActivatedSignature): [Read-Write] Called when the component has been activated, with parameter indicating if it was from a reset

  • on_component_deactivated (ActorComponentDeactivateSignature): [Read-Write] Called when the component has been deactivated

  • on_mesh_tracker_updated (OnMeshTrackerUpdated): [Read-Write] Activated whenever new information about this mesh tracker is detected.

  • perimeter_of_gaps_to_fill (float): [Read-Write] The perimeter (in Unreal Units) of gaps to be filled. 0 means do not fill. A good value is 300cm.

  • physics_volume_changed_delegate (PhysicsVolumeChanged): [Read-Write] Delegate that will be called when PhysicsVolume has been changed *

  • planarize (bool): [Read-Write] If true, the system will planarize the returned mesh i.e. planar regions will be smoothed out.

  • primary_component_tick (ActorComponentTickFunction): [Read-Write] Main tick function for the Component

  • relative_location (Vector): [Read-Write] Location of the component relative to its parent

  • relative_rotation (Rotator): [Read-Write] Rotation of the component relative to its parent

  • relative_scale3d (Vector): [Read-Write] Non-uniform scaling of the component relative to its parent. Note that scaling is always applied in local space (no shearing etc)

  • remove_overlapping_triangles (bool): [Read-Write] If true, overlapping area between two mesh blocks will be removed. This field is only valid when the MeshType is Blocks.

  • replicates (bool): [Read-Write] Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!

  • request_normals (bool): [Read-Write] If true, the system will generate normals for the triangle vertices.

  • request_vertex_confidence (bool): [Read-Write] If true, the system will generate the mesh confidence values for the triangle vertices. These confidence values can be used to determine if the user needs to scan more.

  • scan_world (bool): [Read-Write] Set to true to start scanning the world for meshes.

  • should_update_physics_volume (bool): [Read-Write] Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. see: GetPhysicsVolume()

  • use_attach_parent_bound (bool): [Read-Write] If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together.

  • vertex_color_from_confidence_one (LinearColor): [Read-Write] Color mapped to confidence value of one.

  • vertex_color_from_confidence_zero (LinearColor): [Read-Write] Color mapped to confidence value of zero.

  • vertex_color_mode (MagicLeapMeshVertexColorMode): [Read-Write] Vertex Colors can be unused, or filled with several types of information.

  • visible (bool): [Read-Write] Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.

property block_vertex_colors

[Read-Write] Colors through which we cycle when setting vertex color by block.

Type

(Array(Color))

property bounding_volume

[Read-Write] Bounding box for the mesh scan. The mesh will be scanned for only within this box.

Type

(BoxComponent)

property bricks_per_frame

[Read-Write] Specifies the number of MR Mesh bricks to create per frame. This is to amortize the cost of brick creation across frames rather than creating

all N bricks delivered in response to each meshing query. If the value is <=0 then all meshes will be pushed to MR Mesh as they are provided by the system.

Type

(int32)

connect_block_selector(selector)None

Sets the interface to be used for selecting blocks to mesh.

Parameters

selector (MagicLeapMeshBlockSelectorInterface) – pointer to the object which implements IMagicLeapMeshBlockSelectorInterface.

connect_mr_mesh(mr_mesh_ptr)None

Sets the procedural mesh component that will store and display the environmental mesh results.

Parameters

mr_mesh_ptr (MRMeshComponent) – The procedural mesh component to store the query result in.

disconnect_block_selector()None

Disconnects the previously connected IMagicLeapMeshBlockSelectorInterface. The default implementation is used this case - all new and updated blocks are meshed with the MeshTrackerComponent’d LevelOfDetail.

disconnect_mr_mesh(mr_mesh_ptr)None

Unlinks the current procedural mesh component from the mesh tracking system.

Parameters

mr_mesh_ptr (MRMeshComponent) – The procedural mesh component to unlink from the mesh tracking system.

property disconnected_section_area

[Read-Write] Any section that is disconnected from the main mesh and has an area (in Unreal Units squared) less than this value will be removed.

0 means do not remove disconnected sections. A good value is 50cm.

Type

(float)

get_num_queued_block_updates()int32

Gets the number of mesh bricks in the pending queue.

Returns

Return type

int32

property level_of_detail

[Read-Write] Meshing LOD.

Type

(MagicLeapMeshLOD)

property mesh_type

[Read-Write] The type of mesh to query.

Type

(MagicLeapMeshType)

property on_mesh_tracker_updated

[Read-Write] Activated whenever new information about this mesh tracker is detected.

Type

(OnMeshTrackerUpdated)

property perimeter_of_gaps_to_fill

[Read-Write] The perimeter (in Unreal Units) of gaps to be filled. 0 means do not fill. A good value is 300cm.

Type

(float)

property planarize

[Read-Write] If true, the system will planarize the returned mesh i.e. planar regions will be smoothed out.

Type

(bool)

property remove_overlapping_triangles

[Read-Write] If true, overlapping area between two mesh blocks will be removed. This field is only valid when the MeshType is Blocks.

Type

(bool)

property request_normals

[Read-Write] If true, the system will generate normals for the triangle vertices.

Type

(bool)

property request_vertex_confidence

[Read-Write] If true, the system will generate the mesh confidence values for the triangle vertices. These confidence values can be used to determine if the user needs to scan more.

Type

(bool)

property scan_world

[Read-Write] Set to true to start scanning the world for meshes.

Type

(bool)

select_mesh_blocks(new_mesh_info)

IMagicLeapMeshBlockSelectorInterface

Parameters

new_mesh_info (MagicLeapTrackingMeshInfo) –

Returns

requested_mesh (Array(MagicLeapMeshBlockRequest)):

Return type

Array(MagicLeapMeshBlockRequest)

property vertex_color_from_confidence_one

[Read-Write] Color mapped to confidence value of one.

Type

(LinearColor)

property vertex_color_from_confidence_zero

[Read-Write] Color mapped to confidence value of zero.

Type

(LinearColor)

property vertex_color_mode

[Read-Write] Vertex Colors can be unused, or filled with several types of information.

Type

(MagicLeapMeshVertexColorMode)