> Dear rooters, > > I have just succeeded to compile my ROOT (latest version) with OpenGL > support. I am able to open a OpenGL window and look to my geometry. > However, I find it somehow inferior in quality to the X3d viewer. Maybe > I am doing something wrong. > > I would like to ask if somebody has a code example how to manipulate the > objects displayed by OpenGL. I would like to use OpenGL for an event > display (preferably an online eventdisplay). This means I am searching > for Classes or methods that allow to change attributes of volumes like - > in particular - the color while in OpenGL view mode. I don't want to > close and reopen the OpenGL viewer each time I change someting. > OpenGL viewer of ROOT is to display some 3D ROOT objects and it uses the attributes of those objects. This means to change the color of some shape/node one has to use the methods of TShape /TNode. This will affect the OpenGL views of those objects too. Method: TPadView3D* TPad::GetView3D() returns the pointer to the current 3D viewer (it could be OpenGL viewer) if any See: TpadView3D.h header file: One may cast it to the "void TPadOpenGLView" TPadOpenGLView *viewer = (TPadOpenGLView *)gPad->GetView3D(); to get an access to the methods: //______________________________________________________________________________ void TPadOpenGLView::MoveModelView(const Char_t option, Int_t count) { //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* //*-* option = 'u' file://*-* Move down //*-* 'i' file://*-* Move up //*-* 'h' file://*-* Move right //*-* 'l' file://*-* Move left //*-* 'j' file://*-* Move backward //*-* 'k' file://*-* Move foreward //*-* //*-* '+' file://*-* Increase speed to move //*-* '-' file://*-* Decrease speed to move //*-* //*-* 'n' file://*-* turn "SMOOTH" color mode on //*-* 'm' file://*-* turn "SMOOTH" color mode off //*-* //*-* 't' file://*-* toggle Light model //*-* //*-* 'p' file://*-* Perspective/Orthographic projection //*-* 'r' file://*-* Hidden surface mode //*-* 'w' file://*-* wireframe mode //*-* 'c' file://*-* cull-face mode //*-* //*-* 's' file://*-* increase scale factor (clip cube borders) //*-* 'a' file://*-* decrease scale factor (clip cube borders) //*-* //*-* 'x' file://*-* //*-* 'y' file://*-* rotate object along x,y,z axis //*-* 'z' file://*-* file://*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* //______________________________________________________________________________ void TPadOpenGLView::MoveModelView(const char *cmd, int mlsecc) { //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* //*-* Emulate the "chain" of the "KeyPress" events //*-* Input: //*-* char *cmd - any "ASCII" character defined in //*-* TPadOpenGLView::MoveModelView(Char_t option, Int_t count) //*-* //*-* int mlsecc - The total time desired to perform the full "chain". //*-* It is assumed that a single step is performed too quickly //*-* and must be slow done //*-* = 0; No slowdown. It is painting as fast as the //*-* present CPU allows //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* > Is there some documentation smewhere on how to use OpenGl functionality > from inside ROOT ??? Hope that helps. Valery > > > Thanks in advance > > Tom > -- > Thomas Eberl Phone: (+49 89) 289 1 2425 > Physik-Department E12, Technische Universitaet Muenchen > James-Franck-Strasse *** D-85748 Garching b. Muenchen > Email: Thomas.Eberl@physik.tu-muenchen.de >
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:22 MET