diff --git a/MotionCore/MotionCore.vcxproj b/MotionCore/MotionCore.vcxproj
index 7c8a050..e23357f 100755
--- a/MotionCore/MotionCore.vcxproj
+++ b/MotionCore/MotionCore.vcxproj
@@ -151,6 +151,7 @@
+
@@ -164,6 +165,7 @@
+
diff --git a/MotionCore/MotionCore.vcxproj.filters b/MotionCore/MotionCore.vcxproj.filters
index b59b3f8..0aff1c5 100755
--- a/MotionCore/MotionCore.vcxproj.filters
+++ b/MotionCore/MotionCore.vcxproj.filters
@@ -51,6 +51,9 @@
Quelldateien
+
+ Quelldateien
+
@@ -89,5 +92,8 @@
Headerdateien
+
+ Headerdateien
+
\ No newline at end of file
diff --git a/MotionCore/Scene_CCDIK.cpp b/MotionCore/Scene_CCDIK.cpp
index 1adf819..739034f 100755
--- a/MotionCore/Scene_CCDIK.cpp
+++ b/MotionCore/Scene_CCDIK.cpp
@@ -12,8 +12,9 @@ Scene_CCDIK::Scene_CCDIK(Arm& arm) :
Vector3d(0, -160, 0),
Vector3d(20000, 100, 20000)
)
- }),
- leftVKB(L" VKBsim Gladiator EVO L ")
+ }),
+ leftVKB(L" VKBsim Gladiator EVO L "),
+ cursor3d(0,0,0)
{
if (!arm.assumeHomePoseImmediate()) {
@@ -29,8 +30,22 @@ Scene_CCDIK::Scene_CCDIK(Arm& arm) :
void Scene_CCDIK::update(double frametime)
{
+ vkbi = leftVKB.get();
+
constexpr double speed = 5000;
VkbInputs vkbi = leftVKB.get();
+ update3dCursor(frametime);
+
arm.update(frametime);
}
+
+void Scene_CCDIK::update3dCursor(double frametime)
+{
+ constexpr double cursorSpeed = 1.0;
+ cursor3d += Vector3d(
+ vkbi.roll * cursorSpeed * frametime,
+ vkbi.yaw * cursorSpeed * frametime,
+ -vkbi.pitch * cursorSpeed * frametime
+ );
+}
diff --git a/MotionCore/Scene_CCDIK.h b/MotionCore/Scene_CCDIK.h
index 22bbb28..db0b2f0 100755
--- a/MotionCore/Scene_CCDIK.h
+++ b/MotionCore/Scene_CCDIK.h
@@ -2,6 +2,7 @@
#include "Arm.h"
#include "AxisAlignedBoundingBox.h"
#include "vkb_controller.h"
+#include "Vector3d.h"
class Scene_CCDIK
{
@@ -11,16 +12,14 @@ public:
void update(double frametime);
private:
+ void update3dCursor(double frametime);
+
Arm& arm;
std::array deadzones;
VKBSimController leftVKB;
- double j0Pos = 0;
- double j1Pos = 0;
- double j2Pos = 0;
- double j3Pos = 0;
- double j4Pos = 0;
- double j5Pos = 0;
+ Vector3d cursor3d;
+ VkbInputs vkbi;
};