49#ifdef ARDOUBLE_IS_FLOAT
artoolkitX core routines.
AR_MATRIX_CODE_TYPE
Values specifying the type of matrix code in use.
Definition: ar.h:320
double ARdouble
Definition: ar.h:99
Provides filtering of transformation matrices (pose estimates).
Wrapper for artoolkitX functionality.
Definition: ARController.h:80
Base class for supported trackable types.
Definition: ARTrackable.h:62
void setFilterSampleRate(ARdouble rate)
Definition: ARTrackable.cpp:157
int UID
Internal unique ID (note: not the same as artoolkitX pattern ID)
Definition: ARTrackable.h:86
ARdouble trans[3][4]
Transformation from camera to this trackable. If stereo, transform from left camera to this trackable...
Definition: ARTrackable.h:70
virtual std::pair< float, float > getPatternSize(int patternIndex)=0
static std::atomic< int > nextUID
Definition: ARTrackable.h:74
void setFiltered(bool flag)
Definition: ARTrackable.cpp:137
static const int NO_ID
Value of UID that indicates no ID.
Definition: ARTrackable.h:87
TrackableType type
Type of trackable: single, multi, ...
Definition: ARTrackable.h:88
bool visible
Whether or not the trackable is visible at current time.
Definition: ARTrackable.h:92
virtual bool update(const ARdouble transL2R[3][4]=NULL)
Completes an update begun in the parent class, performing filtering, generating OpenGL view matrix an...
Definition: ARTrackable.cpp:90
ARdouble positionScalefactor()
Definition: ARTrackable.cpp:85
ARTrackable & operator=(const ARTrackable &)=delete
Copy assignment is undefined.
ARdouble transformationMatrixR[16]
Transformation suitable for use in OpenGL.
Definition: ARTrackable.h:96
bool isFiltered()
Definition: ARTrackable.cpp:147
ARdouble m_positionScaleFactor
Definition: ARTrackable.h:72
virtual int getPatternCount()=0
virtual bool getPatternImage(int patternIndex, uint32_t *pattImageBuffer, AR_MATRIX_CODE_TYPE matrixCodeType)=0
virtual bool getPatternTransform(int patternIndex, ARdouble T[16])=0
Get the transform, relative to this trackable's origin, of this pattern.
ARdouble transformationMatrix[16]
Transformation suitable for use in OpenGL.
Definition: ARTrackable.h:95
ARdouble filterSampleRate()
Definition: ARTrackable.cpp:152
void setPositionScalefactor(ARdouble scale)
Definition: ARTrackable.cpp:80
virtual std::pair< int, int > getPatternImageSize(int patternIndex, AR_MATRIX_CODE_TYPE matrixCodeType)=0
ARTrackable(const ARTrackable &)=delete
Copy construction is undefined.
ARdouble filterCutoffFrequency()
Definition: ARTrackable.cpp:163
void setFilterCutoffFrequency(ARdouble freq)
Definition: ARTrackable.cpp:168
bool visiblePrev
Whether or not the trackable was visible prior to last update.
Definition: ARTrackable.h:91
virtual ~ARTrackable()
Definition: ARTrackable.cpp:75
TrackableType
Definition: ARTrackable.h:78
@ TwoD
A 2D textured marker backed by an image.
Definition: ARTrackable.h:82
@ SINGLE
A standard single square marker.
Definition: ARTrackable.h:79
@ NFT
A rectangular textured marker backed by an NFT data set.
Definition: ARTrackable.h:81
@ MULTI
A composite marker made up of multiple square markers.
Definition: ARTrackable.h:80
@ MULTI_AUTO
An automatically mapped composite marker made up of multiple square matrix (2D barcode) markers.
Definition: ARTrackable.h:83
Definition: arFilterTransMat.c:41