Loading files
c30bb7b85This file is pinned to the selected release. Download the original to open it in your design tool.
/******************************************************************************
* Copyright (C) Leap Motion, Inc. 2011-2018. *
* Leap Motion proprietary and confidential. *
* *
* Use subject to the terms of the Leap Motion SDK Agreement available at *
* https://developer.leapmotion.com/sdk_agreement, or another agreement *
* between Leap Motion and you, your company or other organization. *
******************************************************************************/
using UnityEngine;
using System.Collections;
using Leap;
namespace Leap.Unity {
/**
* A deforming, very low poly count hand.
*
* All the graphics for this hand are drawn by the fingers. There is no representation
* for the palm or the arm.
*/
public class PolyHand : HandModel {
public override ModelType HandModelType {
get {
return ModelType.Graphics;
}
}
public override bool SupportsEditorPersistence() {
return true;
}
/** Initializes the hand and calls the finger initializers. */
public override void InitHand() {
SetPalmOrientation();
for (int f = 0; f < fingers.Length; ++f) {
if (fingers[f] != null) {
fingers[f].fingerType = (Finger.FingerType)f;
fingers[f].InitFinger();
}
}
}
/** Updates the hand and calls the finger update functions. */
public override void UpdateHand() {
SetPalmOrientation();
for (int f = 0; f < fingers.Length; ++f) {
if (fingers[f] != null) {
fingers[f].UpdateFinger();
}
}
}
/** Sets the palm transform. */
protected void SetPalmOrientation() {
if (palm != null) {
palm.position = GetPalmPosition();
palm.rotation = GetPalmRotation();
}
}
}
}