All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Loading...
Searching...
No Matches
Cylinder Target Feature

Classes

struct  VuCylinderTargetConfig
 Configuration for creating a Cylinder Target observer. More...
 
struct  VuCylinderTargetObservationTargetInfo
 Target info for a Cylinder Target from its respective observation. More...
 

Enumerations

enum  VuCylinderTargetCreationError : int32_t {
  VU_CYLINDER_TARGET_CREATION_ERROR_NONE = 0x0 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_INTERNAL = 0x1 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_AUTOACTIVATION_FAILED = 0x2 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_DATABASE_LOAD_ERROR = 0x3 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_INVALID_TARGET_NAME = 0x4 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_TARGET_NOT_FOUND ,
  VU_CYLINDER_TARGET_CREATION_ERROR_INVALID_SCALE = 0x6 ,
  VU_CYLINDER_TARGET_CREATION_ERROR_DATABASE_XML_REQUIRED
}
 Configuration error for Cylinder Target creation. More...
 
enum  VuCylinderTargetObservationStatusInfo : int32_t {
  VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_NORMAL ,
  VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_NOT_OBSERVED ,
  VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_RELOCALIZING
}
 Status info for the pose of Cylinder Target observations. More...
 
enum  { VU_OBSERVER_CYLINDER_TARGET_TYPE = 0x2 }
 
enum  { VU_OBSERVATION_CYLINDER_TARGET_TYPE = 0x2 }
 

Functions

VuCylinderTargetConfig vuCylinderTargetConfigDefault ()
 Default Cylinder Target configuration.
 
VuResult vuEngineCreateCylinderTargetObserver (VuEngine *engine, VuObserver **observer, const VuCylinderTargetConfig *config, VuCylinderTargetCreationError *errorCode)
 Create a Cylinder Target observer from a database.
 
VuResult vuEngineGetCylinderTargetObservers (const VuEngine *engine, VuObserverList *observerList)
 Get all Cylinder Target observers.
 
VuResult vuCylinderTargetObserverGetTargetUniqueId (const VuObserver *observer, const char **targetId)
 Get the unique ID associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetTargetName (const VuObserver *observer, const char **targetName)
 Get the name associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetTargetSideLength (const VuObserver *observer, float *sideLength)
 Get the side length in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverSetTargetSideLength (VuObserver *observer, float sideLength)
 Set the side length in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetTargetTopDiameter (const VuObserver *observer, float *topDiameter)
 Get the top diameter in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverSetTargetTopDiameter (VuObserver *observer, float topDiameter)
 Set the top diameter in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetTargetBottomDiameter (const VuObserver *observer, float *bottomDiameter)
 Get the bottom diameter in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverSetTargetBottomDiameter (VuObserver *observer, float bottomDiameter)
 Set the bottom diameter in meters associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetAABB (const VuObserver *observer, VuAABB *bbox)
 Get the axis-aligned bounding box associated to the target from a Cylinder Target observer, relative to the target's frame of reference.
 
VuResult vuCylinderTargetObserverGetTargetPoseOffset (const VuObserver *observer, VuMatrix44F *poseOffset)
 Get the pose transformation offset associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverSetTargetPoseOffset (VuObserver *observer, const VuMatrix44F *poseOffset)
 Set the pose transformation offset associated to the target from a Cylinder Target observer.
 
VuResult vuCylinderTargetObserverSetTrackingOptimization (VuObserver *observer, VuTrackingOptimization optimization)
 Set the tracking optimization of the target associated to the Cylinder Target observer.
 
VuResult vuCylinderTargetObserverGetTrackingOptimization (const VuObserver *observer, VuTrackingOptimization *optimization)
 Get the tracking optimization of the target associated to the Cylinder Target observer.
 
VuResult vuStateGetCylinderTargetObservations (const VuState *state, VuObservationList *observationList)
 Get all Cylinder Target observations.
 
VuResult vuCylinderTargetObservationGetStatusInfo (const VuObservation *observation, VuCylinderTargetObservationStatusInfo *statusInfo)
 Get status info associated to the pose status of a Cylinder Target observation.
 
VuResult vuCylinderTargetObservationGetTargetInfo (const VuObservation *observation, VuCylinderTargetObservationTargetInfo *targetInfo)
 Get target info associated with a Cylinder Target observation.
 

Detailed Description

Enumeration Type Documentation

◆ VuCylinderTargetCreationError

Configuration error for Cylinder Target creation.

Enumerator
VU_CYLINDER_TARGET_CREATION_ERROR_NONE 

No error.

VU_CYLINDER_TARGET_CREATION_ERROR_INTERNAL 

An internal error occurred while creating the observer.

VU_CYLINDER_TARGET_CREATION_ERROR_AUTOACTIVATION_FAILED 

Observer auto-activation failed.

VU_CYLINDER_TARGET_CREATION_ERROR_DATABASE_LOAD_ERROR 

Database file not found or an error occurred when reading data from it (potentially unknown or corrupted file)

VU_CYLINDER_TARGET_CREATION_ERROR_INVALID_TARGET_NAME 

Invalid target name.

VU_CYLINDER_TARGET_CREATION_ERROR_TARGET_NOT_FOUND 

Target with the specified name AND matching target type for this observer not found in database.

VU_CYLINDER_TARGET_CREATION_ERROR_INVALID_SCALE 

Invalid value passed to the scale parameter.

VU_CYLINDER_TARGET_CREATION_ERROR_DATABASE_XML_REQUIRED 

The Cylinder Target could not be loaded from the single-file mixed database, because the database contains other targets that do not support loading from the DAT file directly. Older mixed databases must still be loaded via the database XML file.

◆ VuCylinderTargetObservationStatusInfo

Status info for the pose of Cylinder Target observations.

Provides further information on the pose status reported as part of VuPoseInfo. The status info is retrieved with vuCylinderTargetObservationGetStatusInfo.

Note
All enum values defined by VuObservationPoseStatus may be reported as part of a Cylinder Target observation.
See also
VuPoseInfo
VuObservationPoseStatus
vuObservationHasPoseInfo
vuObservationGetPoseInfo
vuStateGetObservationsWithPoseInfo
vuCylinderTargetObservationGetStatusInfo
Enumerator
VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_NORMAL 

Tracking is working normally. Reported for VU_OBSERVATION_POSE_STATUS_TRACKED or VU_OBSERVATION_POSE_STATUS_EXTENDED_TRACKED.

VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_NOT_OBSERVED 

Target is not observed. Reported for VU_OBSERVATION_POSE_STATUS_NO_POSE.

VU_CYLINDER_TARGET_OBSERVATION_STATUS_INFO_RELOCALIZING 

The tracking system is currently relocalizing. Reported for VU_OBSERVATION_POSE_STATUS_LIMITED.

◆ anonymous enum

anonymous enum
Enumerator
VU_OBSERVER_CYLINDER_TARGET_TYPE 

Type identifier for Cylinder Target observers.

◆ anonymous enum

anonymous enum
Enumerator
VU_OBSERVATION_CYLINDER_TARGET_TYPE 

Type identifier for Cylinder Target observations.

Function Documentation

◆ vuCylinderTargetConfigDefault()

VuCylinderTargetConfig vuCylinderTargetConfigDefault ( )

Default Cylinder Target configuration.

Note
Use this function to initialize the VuCylinderTargetConfig data structure with default values.

◆ vuEngineCreateCylinderTargetObserver()

VuResult vuEngineCreateCylinderTargetObserver ( VuEngine * engine,
VuObserver ** observer,
const VuCylinderTargetConfig * config,
VuCylinderTargetCreationError * errorCode )

Create a Cylinder Target observer from a database.

Note
Note that loading the database may take a significant amount of time, it is therefore recommended that this method is not called on the main/UI thread.

◆ vuCylinderTargetObserverGetTargetPoseOffset()

VuResult vuCylinderTargetObserverGetTargetPoseOffset ( const VuObserver * observer,
VuMatrix44F * poseOffset )

Get the pose transformation offset associated to the target from a Cylinder Target observer.

Note
The pose offset is represented as a pose matrix using the OpenGL convention.

◆ vuCylinderTargetObserverSetTargetPoseOffset()

VuResult vuCylinderTargetObserverSetTargetPoseOffset ( VuObserver * observer,
const VuMatrix44F * poseOffset )

Set the pose transformation offset associated to the target from a Cylinder Target observer.

Note
The pose offset is represented as a pose matrix using the OpenGL convention.

◆ vuCylinderTargetObserverSetTrackingOptimization()

VuResult vuCylinderTargetObserverSetTrackingOptimization ( VuObserver * observer,
VuTrackingOptimization optimization )

Set the tracking optimization of the target associated to the Cylinder Target observer.

This setting modifies the internal target tracking parameters to optimize the tracking quality and robustness.

Note
Only VU_TRACKING_OPTIMIZATION_DEFAULT and VU_TRACKING_OPTIMIZATION_AR_CONTROLLER are allowed. This function will fail if VU_TRACKING_OPTIMIZATION_LOW_FEATURE_OBJECTS is provided.
This operation will reset any tracking operation for the Cylinder Target observer. It is recommended to use this function before starting the Vuforia Engine.

◆ vuCylinderTargetObservationGetStatusInfo()

VuResult vuCylinderTargetObservationGetStatusInfo ( const VuObservation * observation,
VuCylinderTargetObservationStatusInfo * statusInfo )

Get status info associated to the pose status of a Cylinder Target observation.

The status info is intended to be used in combination with VuObservationPoseStatus retrieved via vuObservationGetPoseInfo.