#include <Leap.h>
The ScreenList class represents a list of Screen objects.
The list always contains at least one entry representing the default screen. If the user has not registered the location of this default screen, then the coordinates, directions, and other values reported by the functions in its Screen object will not be accurate. Other monitor screens only appear in the list if their positions have been registered using the Leap Screen Locator.
Get a ScreenList object by calling Controller::locatedScreens().
Public Member Functions | |
ScreenList (const ListBaseImplementation< Screen > &) | |
LEAP_EXPORT | ScreenList () |
LEAP_EXPORT int | count () const |
LEAP_EXPORT bool | isEmpty () const |
LEAP_EXPORT bool | empty () const |
LEAP_EXPORT Screen | operator[] (int index) const |
LEAP_EXPORT const_iterator | begin () const |
LEAP_EXPORT const_iterator | end () const |
LEAP_EXPORT Screen | closestScreenHit (const Pointable &pointable) const |
LEAP_EXPORT Screen | closestScreenHit (const Vector &position, const Vector &direction) const |
LEAP_EXPORT Screen | closestScreen (const Vector &position) const |
Additional Inherited Members | |
![]() | |
class SharedObject * | m_object |
![]() | |
LEAP_EXPORT | Interface (void *owner) |
LEAP_EXPORT | Interface (Implementation *reference, void *owner) |
LEAP_EXPORT | Interface (const Interface &rhs) |
LEAP_EXPORT Interface & | operator= (const Interface &rhs) |
virtual LEAP_EXPORT | ~Interface () |
template<typename T > | |
T * | get () const |
Leap::ScreenList::ScreenList | ( | const ListBaseImplementation< Screen > & | ) |
LEAP_EXPORT Leap::ScreenList::ScreenList | ( | ) |
Constructs an empty list of screens.
LEAP_EXPORT const_iterator Leap::ScreenList::begin | ( | ) | const |
The C++ iterator set to the beginning of this ScreenList.
Gets the Screen closest to the specified position.
The specified position is projected along each screen's normal vector onto the screen's plane. The screen whose projected point is closest to the specified position is returned. Call Screen::project(position) on the returned Screen object to find the projected point.
position | The position from which to check for screen projection. |
Gets the closest Screen intercepting a ray projecting from the specified Pointable object.
The projected ray emanates from the Pointable tipPosition along the Pointable's direction vector. If the projected ray does not intersect any screen surface directly, then the Leap checks for intersection with the planes extending from the surfaces of the known screens and returns the Screen with the closest intersection.
If no intersections are found (i.e. the ray is directed parallel to or away from all known screens), then an invalid Screen object is returned.
Note: Be sure to test whether the Screen object returned by this method is valid. Attempting to use an invalid Screen object will lead to incorrect results.
pointable | The Pointable object to check for screen intersection. |
LEAP_EXPORT Screen Leap::ScreenList::closestScreenHit | ( | const Vector & | position, |
const Vector & | direction | ||
) | const |
Gets the closest Screen intercepting a ray projecting from the specified position in the specified direction.
The projected ray emanates from the position along the direction vector. If the projected ray does not intersect any screen surface directly, then the Leap checks for intersection with the planes extending from the surfaces of the known screens and returns the Screen with the closest intersection.
If no intersections are found (i.e. the ray is directed parallel to or away from all known screens), then an invalid Screen object is returned.
Note: Be sure to test whether the Screen object returned by this method is valid. Attempting to use an invalid Screen object will lead to incorrect results.
position | The position from which to check for screen intersection. |
direction | The direction in which to check for screen intersection. |
LEAP_EXPORT int Leap::ScreenList::count | ( | ) | const |
Returns the number of screens in this list.
LEAP_EXPORT bool Leap::ScreenList::empty | ( | ) | const |
Deprecated. Use ScreenList::isEmpty() instead.
LEAP_EXPORT const_iterator Leap::ScreenList::end | ( | ) | const |
The C++ iterator set to the end of this ScreenList.
LEAP_EXPORT bool Leap::ScreenList::isEmpty | ( | ) | const |
Reports whether the list is empty.