libmove3d
3.13.0
|
00001 #ifndef QTG3DWINDOW_HPP 00002 #define QTG3DWINDOW_HPP 00003 00004 #include "device.h" 00005 00006 typedef struct g3d_win G3D_Window; 00007 00008 typedef struct g3d_cam_param 00009 { 00010 p3d_vector3 Xc; 00011 p3d_vector3 Xw; 00012 p3d_vector3 up; 00013 } g3d_cam_param; 00014 00015 // G3D window class that holds the 00016 // 3d window structs 00017 class qtG3DWindow 00018 { 00019 public: 00020 qtG3DWindow(); 00021 00022 private: 00023 void newG3dWindow(); 00024 double size; 00025 }; 00026 00027 // Funtions to be used 00028 // in the higher level modules 00029 void calc_cam_param(G3D_Window *win, p3d_vector4 Xc, p3d_vector4 Xw); 00030 void qt_canvas_viewing(int mouse_press, int button); 00031 void qt_change_mob_frame(G3D_Window* win,pp3d_matrix4 frame); 00032 void qt_reset_mob_frame(G3D_Window* win); 00033 00034 G3D_Window * qt_get_cur_g3d_win(); 00035 00036 // Function pointers 00037 // to external drawing functionalities 00038 extern void (*ext_g3d_calc_cam_param)(g3d_cam_param& p); 00039 extern void (*ext_g3d_get_win_mouse)(int* x, int* y); 00040 extern void (*ext_g3d_add_traj_to_ui)(char* name,int i, p3d_rob* rob , p3d_traj* traj); 00041 extern void (*ext_g3d_add_config_to_ui)(char* name,p3d_rob* rob,double* q); 00042 00043 #endif // QTG3DWINDOW_HPP