我在 C++ 中工作,我使用 Visual Studio 作为 IDE,我正在使用跳跃 Leap Motion SDK
所以,我目前正在研究一个旋转圆圈的程序。操作旋转的方法是通过使用在应用程序上显示为点的两个手指来应用的。
此外,此应用程序使用框架来显示一段时间内的事件。
我想知道如何使用两个帧和两个点来计算使用两个帧上的两个点移动的旋转变化。
const Frame frame = controller->frame(); //current frame
const Frame previous = controller->frame(1); //previous frame
const FingerList fingers = frame.fingers(); //fingers inside that frame
POINT aFingerPoint = fingers[0].position() //point of a finger from a finger array
POINT anotherFingerPoint = fingers[1].position() //point of a finger from a finger array
const FingerList prevFingers = previous.fingers(); //fingers inside that frame
POINT aPrevFingerPoint = fingers[0].position() //point of a finger from a finger array
POINT anotherPrevFingerPoint = fingers[1].position() //point of a finger from a finger array
// coordinate example
float x = aFingerPoint.x;
float y = aFingerPoint.y;
float deltaRotation = [THIS PART I DONT KNOW]; //I got the translation already, just need rotation
circle.manipulation(deltaRotation); //Rotates the circle in degrees