Browse Source

add pos,hpr print/set

georges 25 years ago
parent
commit
261cc66bae
1 changed files with 36 additions and 0 deletions
  1. 36 0
      panda/src/framework/framework.cxx

+ 36 - 0
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) {
 void event_g(CPT_Event) {
   // "g" key pressed: toggle fog.
   // "g" key pressed: toggle fog.
   static bool fog_mode = false;
   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("N", event_N);
   event_handler.add_hook("S", event_S);
   event_handler.add_hook("S", event_S);
   event_handler.add_hook("A", event_A);
   event_handler.add_hook("A", event_A);
+  event_handler.add_hook("p", event_p);
+  event_handler.add_hook("P", event_P);
 
 
 #ifdef USE_IPC
 #ifdef USE_IPC
   event_handler.add_hook("x", event_x);
   event_handler.add_hook("x", event_x);