From 261cc66baeee16f50661ec0c948847fb99bc786b Mon Sep 17 00:00:00 2001 From: georges <> Date: Wed, 14 Feb 2001 23:15:25 +0000 Subject: [PATCH] add pos,hpr print/set --- panda/src/framework/framework.cxx | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/panda/src/framework/framework.cxx b/panda/src/framework/framework.cxx index 0ffc7f9577..4ba1b04d0e 100644 --- a/panda/src/framework/framework.cxx +++ b/panda/src/framework/framework.cxx @@ -821,6 +821,40 @@ void event_D(CPT_Event) { } } +void event_p(CPT_Event) { + // "p" key pressed: print pos, hpr + LPoint3f xyz; + LPoint3f hpr; + + if (current_trackball == trackball) { + xyz = trackball->get_pos(); + hpr = trackball->get_hpr(); + } else if (current_trackball == drive_interface) { + xyz = drive_interface->get_pos(); + hpr = drive_interface->get_hpr(); + } + + printf("current pos, hpr: %f %f %f %f %f %f\n",xyz[0],xyz[1],xyz[2],hpr[0],hpr[1],hpr[2]); +} + +void event_P(CPT_Event) { + // "P" key pressed: set pos, hpr + LPoint3f xyz; + LPoint3f hpr; + + printf("input new pos, hpr in fmt: f f f f f f\n"); + scanf("%f %f %f %f %f %f",&xyz[0],&xyz[1],&xyz[2],&hpr[0],&hpr[1],&hpr[2]); + + if (current_trackball == trackball) { + trackball->set_pos(xyz); + trackball->set_hpr(hpr); + } else if (current_trackball == drive_interface) { + drive_interface->set_pos(xyz); + drive_interface->set_hpr(hpr); + + } +} + void event_g(CPT_Event) { // "g" key pressed: toggle fog. static bool fog_mode = false; @@ -1151,6 +1185,8 @@ int framework_main(int argc, char *argv[]) { event_handler.add_hook("N", event_N); event_handler.add_hook("S", event_S); event_handler.add_hook("A", event_A); + event_handler.add_hook("p", event_p); + event_handler.add_hook("P", event_P); #ifdef USE_IPC event_handler.add_hook("x", event_x);