From 9ba0db1ab9d2cb8099a3e58fb5a61c1a5dcc4878 Mon Sep 17 00:00:00 2001 From: andreja6 Date: Sat, 28 Apr 2018 20:09:51 -0700 Subject: [PATCH] semi-working pan right --- main.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/main.cpp b/main.cpp index 355717b..3609bd6 100644 --- a/main.cpp +++ b/main.cpp @@ -878,8 +878,13 @@ void Demo::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) { float angle, x, z; frame.rotation.toEulerAnglesXYZ(x, angle, z); angle = toDegrees(angle); - angle = angle + 5; + if(camerapoint.z < focalPoint.z) + { + float angleadd = abs(angle - 90); + angle = angleadd + 5 + 90; + } + else { angle = angle + 5; } @@ -888,9 +893,9 @@ void Demo::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) { message = Convert(angle); messageTime = System::time(); - float distc = getVectorDistance(Vector3(focalPoint.x, camerapoint.y, focalPoint.z), camerapoint); + float distc = abs(((float)(getVectorDistance(Vector3(focalPoint.x, camerapoint.y, focalPoint.z), camerapoint)))); - camerapoint = Vector3(sin(toRadians(angle))*distc,0,cos(toRadians(angle))*distc); + camerapoint = Vector3(sin(toRadians(angle))*distc,camerapoint.y,cos(toRadians(angle))*distc); CoordinateFrame newFrame = CoordinateFrame(camerapoint); newFrame.lookAt(focalPoint); cameraPos = camerapoint;