![]() |
NiTE 2.0
|
#include <NiTE.h>
Classes | |
class | Listener |
Public Member Functions | |
UserTracker () | |
~UserTracker () | |
void | addListener (Listener *pListener) |
Status | convertDepthCoordinatesToJoint (int x, int y, int z, float *pOutX, float *pOutY) const |
Status | convertJointCoordinatesToDepth (float x, float y, float z, float *pOutX, float *pOutY) const |
Status | create (openni::Device *pDevice=NULL) |
void | destroy () |
float | getSkeletonSmoothingFactor () const |
bool | isValid () const |
Status | readFrame (UserTrackerFrameRef *pFrame) |
void | removeListener (Listener *pListener) |
Status | setSkeletonSmoothingFactor (float factor) |
Status | startPoseDetection (UserId user, PoseType type) |
Status | startSkeletonTracking (UserId id) |
void | stopPoseDetection (UserId user, PoseType type) |
void | stopSkeletonTracking (UserId id) |
This is the main object of the User Tracker algorithm. Through it all the users are accessible.
nite::UserTracker::UserTracker | ( | ) | [inline] |
nite::UserTracker::~UserTracker | ( | ) | [inline] |
void nite::UserTracker::addListener | ( | Listener * | pListener | ) | [inline] |
Status nite::UserTracker::convertDepthCoordinatesToJoint | ( | int | x, |
int | y, | ||
int | z, | ||
float * | pOutX, | ||
float * | pOutY | ||
) | const [inline] |
Skeleton joint position is provided in a different set of coordinates than the depth coordinates. While the depth coordinates are projective, the joint is provided in real world coordinates, i.e. number of millimeters from the sensor. This function enables conversion from the depth coordinates to the joint coordinates. This is useful, for instance, to allow measurements.
Status nite::UserTracker::convertJointCoordinatesToDepth | ( | float | x, |
float | y, | ||
float | z, | ||
float * | pOutX, | ||
float * | pOutY | ||
) | const [inline] |
Skeleton joint position is provided in a different set of coordinates than the depth coordinates. While the depth coordinates are projective, the joint is provided in real world coordinates, i.e. number of millimeters from the sensor. This function enables conversion from the joint coordinates to the depth coordinates. This is useful, for instance, to match the joint on the depth.
Status nite::UserTracker::create | ( | openni::Device * | pDevice = NULL | ) | [inline] |
void nite::UserTracker::destroy | ( | ) | [inline] |
float nite::UserTracker::getSkeletonSmoothingFactor | ( | ) | const [inline] |
bool nite::UserTracker::isValid | ( | ) | const [inline] |
Status nite::UserTracker::readFrame | ( | UserTrackerFrameRef * | pFrame | ) | [inline] |
Get the next snapshot of the algorithm
void nite::UserTracker::removeListener | ( | Listener * | pListener | ) | [inline] |
Status nite::UserTracker::setSkeletonSmoothingFactor | ( | float | factor | ) | [inline] |
Control the smoothing factor of the skeleton joints. Factor should be between 0 (no smoothing at all) and 1 (no movement at all)
Status nite::UserTracker::startPoseDetection | ( | UserId | user, |
PoseType | type | ||
) | [inline] |
Start detecting a specific gesture
Status nite::UserTracker::startSkeletonTracking | ( | UserId | id | ) | [inline] |
Request a skeleton for a specific user
void nite::UserTracker::stopPoseDetection | ( | UserId | user, |
PoseType | type | ||
) | [inline] |
Stop detecting a specific gesture
void nite::UserTracker::stopSkeletonTracking | ( | UserId | id | ) | [inline] |
Inform the algorithm that a skeleton is no longer required for a specific user