Locator Gizmo class that provides visual coordinate axes for 3D objects. Displays X (red), Y (green), and Z (blue) axis lines to help visualize object orientation and position.

Hierarchy (view full)

Constructors

Properties

__isVisible: boolean = false

the target entity which this gizmo belong to

The top entity of this gizmo group. A programmer who implements a gizmo class has to make this entity a child of the target entity's scene graph component that the gizmo will belong to manually.

_tags: RnTags = {}

Collection of tags associated with this object

InvalidObjectUID: -1 = -1

Invalid object UID constant

currentMaxObjectCount: number = 0

Current maximum object count for UID generation

Accessors

  • get isSetup(): boolean
  • Gets whether the gizmo has been properly set up and initialized.

    Returns boolean

    True if the gizmo is set up, false otherwise

  • get isVisible(): boolean
  • Gets the current visibility state of the gizmo

    Returns boolean

    True if the gizmo is visible, false otherwise

  • set isVisible(flg): void
  • Sets the visibility state of the gizmo

    Parameters

    • flg: boolean

      True to make the gizmo visible, false to hide it

    Returns void

  • get length(): number
  • Gets the current length of the axis lines displayed by the gizmo.

    Returns number

    The current axis line length

  • set length(val): void
  • Sets the length of the axis lines displayed by the gizmo.

    Parameters

    • val: number

      The length value for the axis lines

    Returns void

  • get objectUID(): number
  • Gets the unique object identifier

    Returns number

    The object's UID

  • get uniqueName(): string
  • Gets the unique name of this object

    Returns string

    The unique name string

Methods

  • Internal method to set the visibility of the gizmo and all its child entities

    Parameters

    • flg: boolean

      True to show the gizmo, false to hide it

    Returns void

  • Internal

    Sets up the gizmo entities and mesh if not already done. Creates the coordinate axis visualization with colored lines representing X, Y, and Z axes.

    Returns void

  • Internal

    Updates the gizmo's transform properties to match the target object. Positions the gizmo at the target's center point and scales it based on the target's bounding box.

    Returns void

  • Retrieves a complete tag object (name and value) for the specified tag name

    Parameters

    • tagName: string

      The name of the tag to retrieve

    Returns Tag

    A Tag object containing the name and value

  • Retrieves the value associated with a specific tag name

    Parameters

    • tagName: string

      The name of the tag whose value to retrieve

    Returns any

    The tag value, or undefined if the tag doesn't exist

  • Checks whether this object has a tag with the specified name

    Parameters

    • tagName: string

      The name of the tag to check for

    Returns boolean

    True if the tag exists (value is not null/undefined), false otherwise

  • Checks if this object has a tag with the specified name and value

    Parameters

    • tagName: string

      The tag name to match

    • tagValue: string

      The tag value to match

    Returns boolean

    True if the object has a matching tag, false otherwise

  • Checks if this object has all the specified tags with exactly matching values

    Parameters

    • tags: RnTags

      Object containing tag names as keys and expected values

    Returns boolean

    True if all specified tags exist with matching values, false otherwise

  • Checks if the object's combined tag string contains all the provided search strings. This allows for flexible searching within tag names and values.

    Parameters

    • stringArray: string[]

      Array of strings that must all be present in the combined tag string

    Returns boolean

    True if all strings are found in the combined tag string, false otherwise

  • Applies appropriate tags to the gizmo entities for identification and categorization This method ensures that all gizmo entities are properly tagged for rendering and processing pipelines

    Returns void

  • Attempts to set a tag on this object. If the tag already exists, it will be replaced.

    Parameters

    • tag: Tag

      The tag object containing the name and value to set

    Returns boolean

    True if the tag was successfully set, false if the tag name contains invalid characters

  • Attempts to set a unique name for this object

    Parameters

    • name: string

      The desired unique name

    • toAddNameIfConflict: boolean

      If true, appends UID to make name unique when conflicts occur; if false, fails on conflict

    Returns boolean

    True if the name was successfully set, false if there was a conflict and toAddNameIfConflict was false

  • Validates that a tag string contains only allowed characters (alphanumeric and underscore)

    Parameters

    • val: string

      The string to validate

    Returns boolean

    True if the string contains only valid characters, false if it contains invalid characters

  • Retrieves an RnObject instance by its unique identifier

    Parameters

    • objectUid: number

      The unique identifier of the object to retrieve

    Returns undefined | RnObject

    The RnObject instance or undefined if not found or garbage collected

  • Retrieves an RnObject instance by its unique name

    Parameters

    • uniqueName: string

      The unique name of the object to retrieve

    Returns undefined | RnObject

    The RnObject instance or undefined if not found or garbage collected

  • Searches for the first object that has a specific tag with the given value

    Parameters

    • tag: string

      The tag name to search for

    • value: string

      The tag value to match

    Returns undefined | WeakRef<RnObject>

    WeakRef to the first matching object, or undefined if not found