Leap Motion C++ API Reference  0.8.0
Leap::Tool Class Reference

The Tool class represents a tracked tool. More...

Inherits Leap::Pointable.

Public Member Functions

 Tool ()
 Constructs a Tool object.
 
 Tool (const Pointable &)
 If the specified Pointable object represents a tool, creates a copy of it as a Tool object; otherwise, creates an invalid Tool object.
 
std::string toString () const
 A string containing a brief, human readable description of the Tool object.
 
- Public Member Functions inherited from Leap::Pointable
Vector direction () const
 The direction in which this finger or tool is pointing.
 
Frame frame () const
 The Frame associated with this Pointable object.
 
Hand hand () const
 The Hand associated with this finger or tool.
 
int32_t id () const
 A unique ID assigned to this Pointable object, whose value remains the same across consecutive frames while the tracked finger or tool remains visible.
 
bool isFinger () const
 Whether or not the Pointable is believed to be a finger.
 
bool isTool () const
 Whether or not the Pointable is believed to be a tool.
 
bool isValid () const
 Reports whether this is a valid Pointable object.
 
float length () const
 The estimated length of the finger or tool in millimeters.
 
bool operator!= (const Pointable &) const
 Compare Pointable object inequality.
 
bool operator== (const Pointable &) const
 Compare Pointable object equality.
 
 Pointable ()
 Constructs a Pointable object.
 
Vector stabilizedTipPosition () const
 The stabilized tip position of this Pointable.
 
Vector tipPosition () const
 The tip position in millimeters from the Leap Motion origin.
 
Vector tipVelocity () const
 The rate of change of the tip position in millimeters/second.
 
std::string toString () const
 A string containing a brief, human readable description of the Pointable object.
 
float touchDistance () const
 A value proportional to the distance between this Pointable object and the adaptive touch plane.
 
Zone touchZone () const
 The current touch zone of this Pointable object.
 
float width () const
 The estimated width of the finger or tool in millimeters.
 

Static Public Member Functions

static const Toolinvalid ()
 Returns an invalid Tool object.
 
- Static Public Member Functions inherited from Leap::Pointable
static const Pointableinvalid ()
 Returns an invalid Pointable object.
 

Additional Inherited Members

- Public Types inherited from Leap::Pointable
enum  Zone { ZONE_NONE = 0, ZONE_HOVERING = 1, ZONE_TOUCHING = 2 }
 Defines the values for reporting the state of a Pointable object in relation to an adaptive touch plane. More...
 

Detailed Description

The Tool class represents a tracked tool.

Tools are Pointable objects that the Leap Motion software has classified as a tool. Tools are longer, thinner, and straighter than a typical finger. Get valid Tool objects from a Frame or a Hand object.

Leap_Tool.png

Note that Tool objects can be invalid, which means that they do not contain valid tracking data and do not correspond to a physical tool. Invalid Tool objects can be the result of asking for a Tool object using an ID from an earlier frame when no Tool objects with that ID exist in the current frame. A Tool object created from the Tool constructor is also invalid. Test for validity with the Tool::isValid() function.

Constructor & Destructor Documentation

Leap::Tool::Tool ( )

Constructs a Tool object.

An uninitialized tool is considered invalid. Get valid Tool objects from a Frame or a Hand object.

Leap::Tool::Tool ( const Pointable )
explicit

If the specified Pointable object represents a tool, creates a copy of it as a Tool object; otherwise, creates an invalid Tool object.

Member Function Documentation

static const Tool& Leap::Tool::invalid ( )
static

Returns an invalid Tool object.

You can use the instance returned by this function in comparisons testing whether a given Tool instance is valid or invalid. (You can also use the Tool::isValid() function.)

Returns
The invalid Tool instance.
std::string Leap::Tool::toString ( ) const

A string containing a brief, human readable description of the Tool object.

Returns
A description of the Tool object as a string.