This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

Unigine.Plugins.LeapMotion.Hand Struct

Notice
LeapMotion plugin must be loaded.

Hands are the main entity tracked by the Leap Motion controller. The controller maintains an inner model of the human hand and validates the data from its sensors against this model. This allows the controller to track finger positions even when a finger is not completely visible.

Notice
It is possible for movement or changes in position to be lost when a finger is behind or directly in front of the hand (from the point of view of the controller).

The Leap Motion software matches the internal model against the existing data. In some cases, the software can make an incorrect match – for example, identifying a right hand as a left hand.

This structure represents a physical hand detected by the Leap and provides access to its attributes describing the hand position, orientation, and movement. All coordinates are relative to the origin of the Leap Motion coordinate system.

The Hand structure is declared as follows:

Source code (C#)
public struct Hand
	{
		public int id;
		public int type;
		public int is_valid;
		public float palm_width;
		public vec3 palm_position;
		public vec3 palm_stabilized_position;
		public vec3 palm_velocity;
		public vec3 palm_normal;
		public vec3 direction;
		public vec3 wrist_position;
		public mat4 basis;

		public Arm arm;
		public Dictionary<int, Finger> fingers;
	};

The last two items of the struct are:

arm Arm of the hand.
fingers List of all fingers of the hand.

LeapMotionHand Class

Properties

int id#

The ID of the hand

int type#

The Type of the hand:
  • 0 - left hand
  • 1 - right hand

float palm_width#

The Width of the palm when the hand is in a flat position, in meters.

vec3 palm_position#

The Coordinates of the position of the palm.

vec3 palm_stabilized_position#

The Coordinates of the modified palm position with some additional smoothing and stabilization applied. Smoothing and stabilization is performed in order to make this value more suitable for interaction with 2D content. The stabilized position lags behind the palm position by a variable amount, depending primarily on the speed of movement.

vec3 wrist_position#

The Coordinates of the position of the wrist.

vec3 palm_velocity#

The Rate of change of the palm position, in m/s.

vec3 palm_normal#

The Coordinates of the normal vector to the palm.

vec3 direction#

The Normalized direction from the palm position toward the fingers.

mat4 basis#

The Orthonormal basis vectors for this Bone as a Matrix.

int is_valid#

The 1 if the hand contains valid tracking data; otherwise, 0.

Members


Last update: 2022-12-14
Build: ()