docs.unity3d.com
    Show / Hide Table of Contents

    Struct XRTrackedObject

    Describes a tracked object detected by the XRObjectTrackingSubsystem.

    Namespace: UnityEngine.XR.ARSubsystems
    Syntax
    public struct XRTrackedObject : ITrackable, IEquatable<XRTrackedObject>
    Remarks

    Tracked objects are detected based on the contents of an XRReferenceObjectLibrary which contains reference objects for which to scan. Each XRTrackedObject represents an XRReferenceObject which has been detected in the environment.

    Constructors

    XRTrackedObject(TrackableId, Pose, TrackingState, IntPtr, Guid)

    Constructs a XRTrackedObject

    Declaration
    public XRTrackedObject(TrackableId trackableId, Pose pose, TrackingState trackingState, IntPtr nativePtr, Guid referenceObjectGuid)
    Parameters
    Type Name Description
    TrackableId trackableId

    The TrackableId associated with this tracked object.

    Pose pose

    The Pose of this tracked object.

    TrackingState trackingState

    The TrackingState of the tracked object.

    IntPtr nativePtr

    A native pointer associated with this tracked object. If not null, the object pointed to by this pointer should be valid at least until the next call to GetChanges(Allocator).

    Guid referenceObjectGuid

    The Guid of the reference object which was used to detect this tracked object.

    Properties

    defaultValue

    A XRTrackedObject with appropriate default values.

    Declaration
    public static readonly XRTrackedObject defaultValue { get; }
    Property Value
    Type Description
    XRTrackedObject

    nativePtr

    A native pointer associated with this tracked object.

    Declaration
    public readonly IntPtr nativePtr { get; }
    Property Value
    Type Description
    IntPtr
    Implements
    ITrackable.nativePtr
    Remarks

    The lifetime of this pointer is provider-specific, but should be valid at least until the next call to GetChanges(Allocator) (typically once per frame).

    pose

    The Pose associated with this tracked object.

    Declaration
    public readonly Pose pose { get; }
    Property Value
    Type Description
    Pose
    Implements
    ITrackable.pose

    referenceObjectGuid

    The Guid associated with the source XRReferenceObject.

    Declaration
    public readonly Guid referenceObjectGuid { get; }
    Property Value
    Type Description
    Guid

    trackableId

    The TrackableId associated with this tracked object.

    Declaration
    public readonly TrackableId trackableId { get; }
    Property Value
    Type Description
    TrackableId
    Implements
    ITrackable.trackableId

    trackingState

    The TrackingState associated with this tracked object.

    Declaration
    public readonly TrackingState trackingState { get; }
    Property Value
    Type Description
    TrackingState
    Implements
    ITrackable.trackingState

    Methods

    Equals(Object)

    Tests for equality.

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    Object obj

    The object to compare against.

    Returns
    Type Description
    Boolean

    True if obj is of type XRTrackedObject and Equals(XRTrackedObject) also returns true; otherwise false.

    Overrides
    ValueType.Equals(Object)

    Equals(XRTrackedObject)

    Tests for equality.

    Declaration
    public bool Equals(XRTrackedObject other)
    Parameters
    Type Name Description
    XRTrackedObject other

    The other XRTrackedObject to compare against.

    Returns
    Type Description
    Boolean

    True if this object's trackableId is equal to other's, otherwise false.

    GetHashCode()

    Generates a hash suitable for use with containers like HashSet and Dictionary.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    Int32

    A hash code generated from this object's trackableId.

    Overrides
    ValueType.GetHashCode()

    Operators

    Equality(XRTrackedObject, XRTrackedObject)

    Tests for equality. Same as Equals(XRTrackedObject).

    Declaration
    public static bool operator ==(XRTrackedObject lhs, XRTrackedObject rhs)
    Parameters
    Type Name Description
    XRTrackedObject lhs

    The left-hand side of the comparison.

    XRTrackedObject rhs

    The right-hand side of the comparison.

    Returns
    Type Description
    Boolean

    True if lhs is equal to rhs, otherwise false.

    Inequality(XRTrackedObject, XRTrackedObject)

    Tests for inequality. Same as !Equals(XRTrackedObject).

    Declaration
    public static bool operator !=(XRTrackedObject lhs, XRTrackedObject rhs)
    Parameters
    Type Name Description
    XRTrackedObject lhs

    The left-hand side of the comparison.

    XRTrackedObject rhs

    The right-hand side of the comparison.

    Returns
    Type Description
    Boolean

    True if lhs is not equal to rhs, otherwise false.

    See Also

    XRReferenceObject
    XRReferenceObjectLibrary
    Back to top
    Terms of use
    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