class CAVERN_perfGui_c : public pfGroup Class for creating Performer-based menus
|
| OK Return status OK |
|
| FAILED Return status FAILED |
|
| STATIONARY_MENU Set menu type to stationary menu |
|
| TETHERED_MENU Set menu type to tethered menu |
|
| CAVERN_perfGui_c () Constructor |
|
| hide () Hide the whole menu. |
|
| show () Show the whole menu. |
| | hideMenuItem (const char* ptr_MenuName) Hide the menu item |
| | showMenuItem (const char* ptr_MenuName) Show the menu item |
|
| setMenuPos (double x, double y, double z) Set the menu's position |
|
| setMenuOrientation (double, double, double) Set the menu's orientation |
| | setTrigger (char*, void(*f1)(void* userdata)) set the tigger function for the menu item |
| | setTriggerData (char*, void* ) set the userdata for the menu item |
| | setIntersectionMask (long mask) Set menu Performer intersection mask |
| | setMenuType (int itype) Set the menu type |
| | addMenuItem (char* ptr_MenuItemName, char* ptr_FileName, char* ptr_FileNameChg, void (* functioncall)(void* userData), void*userData) Add an Item to this menu |
| | addMenuFrame (char* ptr_FileName, char* ptr_FileNameChg) Add a Frame to the menu |
| | setCAVEButton (int val) Set the CAVE wand button to use to trigger menu |
| | ~CAVERN_perfGui_c () Destructor |
Class for creating Performer-based menus.To use it you first need to initialize it with:
CAVERN_perfGui_c::init();
just before pfInit();
Then you create an object of this type and add the object to your Performer scene graph. In general you add it to the head of the scene graph before your navigational DCS.
See the demo program for an example.
You have to design the actual buttons and frame for the menu. These can be an object of any model format that Performer will read. In general you create 2 shapes for the frame and each button, one for how it looks unactivated and one for when the user points at it with the wand. The frame acts as a backing for the buttons so that you can click and drag the menu as a whole. The demo/menu subdirectory contains an example.
int showMenuItem(const char* ptr_MenuName)
int setTrigger(char*, void(*f1)(void* userdata))
int setTriggerData(char*, void* )
void setIntersectionMask(long mask)
void setMenuType(int itype)
int addMenuItem(char* ptr_MenuItemName, char* ptr_FileName, char* ptr_FileNameChg, void (* functioncall)(void* userData), void*userData)
void addMenuFrame(char* ptr_FileName, char* ptr_FileNameChg)
void setCAVEButton(int val)
alphabetic index hierarchy of classes
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de