ArTrackable

Something that can be tracked and that anchors can be attached to.

Summary

Enumerations

enum
Object types for heterogeneous query/update lists.

Typedefs

typedef
struct ArTrackable_
Trackable base type ( reference type, long-lived ).
typedef
struct ArTrackableList_
A list of ArTrackable 's ( value type ).

Functions

ArTrackableList_acquireItem (const ArSession *session, const ArTrackableList *trackable_list, int32_t index, ArTrackable **out_trackable)
void
Acquires a reference to an indexed entry in the list.
ArTrackableList_create (const ArSession *session, ArTrackableList **out_trackable_list)
void
Creates a trackable list object.
void
Releases the memory used by a trackable list object, along with all the anchor references it holds.
ArTrackableList_getSize (const ArSession *session, const ArTrackableList *trackable_list, int32_t *out_size)
void
Retrieves the number of trackables in this list.
ArTrackable_acquireNewAnchor ( ArSession *session, ArTrackable *trackable, ArPose *pose, ArAnchor **out_anchor)
Creates an Anchor at the given pose in the world coordinate space, attached to this Trackable, and acquires a reference to it.
ArTrackable_getAnchors (const ArSession *session, const ArTrackable *trackable, ArAnchorList *out_anchor_list)
void
Gets the set of anchors attached to this trackable.
ArTrackable_getTrackingState (const ArSession *session, const ArTrackable *trackable, ArTrackingState *out_tracking_state)
void
Retrieves the current state of ARCore's knowledge of the pose of this trackable.
ArTrackable_getType (const ArSession *session, const ArTrackable *trackable, ArTrackableType *out_trackable_type)
void
Retrieves the type of the trackable.
void
Releases a reference to a trackable.

Enumerations

ArTrackableType

ArTrackableType

Object types for heterogeneous query/update lists.

Properties

The base Trackable type.

Can be passed to ArSession_getAllTrackables and ArFrame_getUpdatedTrackables as the filter_type to get all/updated Trackables of all types.

On supported devices, trackable type for depth image based hit results returned by ArFrame_hitTest when ArConfig_setDepthMode has been set to AR_DEPTH_MODE_AUTOMATIC .

Trackable type for ArEarth .

Trackable type for faces.

Trackable type for results retrieved from ArFrame_hitTestInstantPlacement .

This trackable type is only available when when ArConfig_setInstantPlacementMode is AR_INSTANT_PLACEMENT_MODE_LOCAL_Y_UP .

An invalid Trackable type.

The ArPlane subtype of Trackable.

The ArPoint subtype of Trackable.

Trackable type for Streetscape Geometry.

Typedefs

ArTrackable

struct ArTrackable_ ArTrackable

Trackable base type ( reference type, long-lived ).

ArTrackableList

struct ArTrackableList_ ArTrackableList

A list of ArTrackable 's ( value type ).

Functions

ArTrackableList_acquireItem

 void 
  
 ArTrackableList_acquireItem 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArTrackableList 
 
  
 * 
 trackable_list 
 , 
  
 int32_t 
  
 index 
 , 
  
  ArTrackable 
 
  
 ** 
 out_trackable 
 ) 

Acquires a reference to an indexed entry in the list.

This call must eventually be matched with a call to ArTrackable_release .

ArTrackableList_create

 void 
  
 ArTrackableList_create 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArTrackableList 
 
  
 ** 
 out_trackable_list 
 ) 

Creates a trackable list object.

ArTrackableList_destroy

void ArTrackableList_destroy( ArTrackableList 
*trackable_list
)

Releases the memory used by a trackable list object, along with all the anchor references it holds.

ArTrackableList_getSize

 void 
  
 ArTrackableList_getSize 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArTrackableList 
 
  
 * 
 trackable_list 
 , 
  
 int32_t 
  
 * 
 out_size 
 ) 

Retrieves the number of trackables in this list.

ArTrackable_acquireNewAnchor

 ArStatus 
ArTrackable_acquireNewAnchor( ArSession 
*session, ArTrackable 
*trackable, ArPose 
 *pose, 
  ArAnchor 
* 
*out_anchor
)

Creates an Anchor at the given pose in the world coordinate space, attached to this Trackable, and acquires a reference to it.

The type of Trackable will determine the semantics of attachment and how the Anchor's pose will be updated to maintain this relationship. Note that the relative offset between the pose of multiple Anchors attached to a Trackable may adjust slightly over time as ARCore updates its model of the world.

Details
Returns
AR_SUCCESS or any of:

ArTrackable_getAnchors

 void 
  
 ArTrackable_getAnchors 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArTrackable 
 
  
 * 
 trackable 
 , 
  
  ArAnchorList 
 
  
 * 
 out_anchor_list 
 ) 

Gets the set of anchors attached to this trackable.

Details
Parameters
session
The ARCore session
trackable
The trackable to query the anchors of.
out_anchor_list
The list to fill. This list must have already been allocated with ArAnchorList_create . If previously used, the list will first be cleared.

ArTrackable_getTrackingState

 void 
  
 ArTrackable_getTrackingState 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArTrackable 
 
  
 * 
 trackable 
 , 
  
  ArTrackingState 
 
  
 * 
 out_tracking_state 
 ) 

Retrieves the current state of ARCore's knowledge of the pose of this trackable.

Note: Starting in ARCore 1.12, changing the active camera config using ArSession_setCameraConfig may cause the tracking state on certain devices to become permanently AR_TRACKING_STATE_PAUSED . For consistent behavior across all supported devices, release any previously created trackables when setting a new camera config.

ArTrackable_getType

 void 
  
 ArTrackable_getType 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArTrackable 
 
  
 * 
 trackable 
 , 
  
  ArTrackableType 
 
  
 * 
 out_trackable_type 
 ) 

Retrieves the type of the trackable.

See ArTrackableType for valid types.

ArTrackable_release

void ArTrackable_release( ArTrackable 
*trackable
)

Releases a reference to a trackable.

This does not mean that the trackable will necessarily stop tracking. The same trackable may still be included in from other calls, for example ArSession_getAllTrackables .

This function may safely be called with NULL - it will do nothing.

Create a Mobile Website
View Site in Mobile | Classic
Share by: