ARWrapper
Provides a C++ wrapper around ARToolKit and exposes a C and JNI API
 All Classes Files Functions Variables Typedefs Enumerations Enumerator
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
ARMarker Class Reference

Base class for supported marker types. More...

#include <ARMarker.h>

Inheritance diagram for ARMarker:
ARMarkerMulti ARMarkerNFT ARMarkerSquare

Public Types

enum  MarkerType { SINGLE, MULTI, NFT }
 

Public Member Functions

 ARMarker (MarkerType type)
 Constructor takes the type of this marker. More...
 
virtual ~ARMarker ()
 
void setPositionScalefactor (ARdouble scale)
 
ARdouble positionScalefactor ()
 
virtual bool update (const ARdouble transL2R[3][4]=NULL)
 
Completes an update begun in the parent class, performing filtering, generating

OpenGL view matrix and notifying listeners (just a log message at the moment). More...

 
ARPatterngetPattern (int n)
 Returns the specified pattern within this marker. More...
 
void setFiltered (bool flag)
 
bool isFiltered ()
 
ARdouble filterSampleRate ()
 
void setFilterSampleRate (ARdouble rate)
 
ARdouble filterCutoffFrequency ()
 
void setFilterCutoffFrequency (ARdouble freq)
 

Static Public Member Functions

static std::vector< ARMarker * > newFromConfigDataFile (const char *markersConfigDataFilePath, ARPattHandle *arPattHandle, int *patternDetectionMode_out)
 
static ARMarkernewWithConfig (const char *cfg, ARPattHandle *arPattHandle)
 

Public Attributes

int UID
 Internal unique ID (note: not the same as ARToolKit pattern ID) More...
 
MarkerType type
 Type of marker: single, multi, ... More...
 
bool visiblePrev
 Whether or not the marker was visible prior to last update. More...
 
bool visible
 Whether or not the marker is visible at current time. More...
 
ARdouble transformationMatrix [16]
 Transformation suitable for use in OpenGL. More...
 
ARdouble transformationMatrixR [16]
 Transformation suitable for use in OpenGL. More...
 
int patternCount
 Number of patterns in this marker (1 for single) More...
 
ARPattern ** patterns
 Array of pointers to patterns. More...
 

Protected Member Functions

void allocatePatterns (int count)
 Allocates space for patterns within this marker. More...
 
void freePatterns ()
 Frees allocated patterns and resets the pattern count to zero. More...
 

Protected Attributes

ARdouble trans [3][4]
 Transformation from camera to this marker. If stereo, transform from left camera to this marker. More...
 
ARdouble m_positionScaleFactor
 

Detailed Description

Base class for supported marker types.

Member Enumeration Documentation

Enumerator
SINGLE 

A standard single square marker.

MULTI 

A composite marker made up of multiple single markers.

NFT 

A rectangular textured marker backed by an NFT data set.

Constructor & Destructor Documentation

ARMarker::ARMarker ( MarkerType  type)

Constructor takes the type of this marker.

ARMarker::~ARMarker ( )
virtual

Member Function Documentation

void ARMarker::allocatePatterns ( int  count)
protected

Allocates space for patterns within this marker.

Parameters
countThe number of patterns to allocate
ARdouble ARMarker::filterCutoffFrequency ( )
ARdouble ARMarker::filterSampleRate ( )
void ARMarker::freePatterns ( )
protected

Frees allocated patterns and resets the pattern count to zero.

ARPattern * ARMarker::getPattern ( int  n)

Returns the specified pattern within this marker.

Parameters
nThe pattern to retrieve
bool ARMarker::isFiltered ( )
std::vector< ARMarker * > ARMarker::newFromConfigDataFile ( const char *  markersConfigDataFilePath,
ARPattHandle *  arPattHandle,
int *  patternDetectionMode_out 
)
static
ARMarker * ARMarker::newWithConfig ( const char *  cfg,
ARPattHandle *  arPattHandle 
)
static
ARdouble ARMarker::positionScalefactor ( )
void ARMarker::setFilterCutoffFrequency ( ARdouble  freq)
void ARMarker::setFiltered ( bool  flag)
void ARMarker::setFilterSampleRate ( ARdouble  rate)
void ARMarker::setPositionScalefactor ( ARdouble  scale)
bool ARMarker::update ( const ARdouble  transL2R[3][4] = NULL)
virtual

Completes an update begun in the parent class, performing filtering, generating

OpenGL view matrix and notifying listeners (just a log message at the moment).

Subclasses should first do their required updates, set visible, visiblePrev, and trans[3][4] then call ARMarker::update().

Returns
true if successful, false if an error occurred

Member Data Documentation

ARdouble ARMarker::m_positionScaleFactor
protected
int ARMarker::patternCount

Number of patterns in this marker (1 for single)

ARPattern** ARMarker::patterns

Array of pointers to patterns.

ARdouble ARMarker::trans[3][4]
protected

Transformation from camera to this marker. If stereo, transform from left camera to this marker.

ARdouble ARMarker::transformationMatrix[16]

Transformation suitable for use in OpenGL.

ARdouble ARMarker::transformationMatrixR[16]

Transformation suitable for use in OpenGL.

MarkerType ARMarker::type

Type of marker: single, multi, ...

int ARMarker::UID

Internal unique ID (note: not the same as ARToolKit pattern ID)

bool ARMarker::visible

Whether or not the marker is visible at current time.

bool ARMarker::visiblePrev

Whether or not the marker was visible prior to last update.


The documentation for this class was generated from the following files: