library: libGraf3d #include "TPadOpenGLView.h"

# TPadOpenGLView

class description - source file - inheritance tree (.ps)

## class TPadOpenGLView : public TPadView3D

| Inheritance Chart:

`TPadView3D`

<-

`TPadOpenGLView`

        protected:

          virtual void Disconnect()

        public:

                          TPadOpenGLView()
                          TPadOpenGLView(TVirtualPad* pad)
                          TPadOpenGLView(const TPadOpenGLView&)
                  virtual ~TPadOpenGLView()
             virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
                    Int_t GetGLList() const
                   UInt_t GetNextGLList()
                  Float_t GetSpeedMove() const
             virtual void GetSteps(Float_t* steps) const
             virtual void MapOpenGL()
                     void MoveModelView(Char_t option, Int_t count = 1)
                     void MoveModelView(const Char_t* commands, Int_t display_time = 0)
          TPadOpenGLView& operator=(const TPadOpenGLView&)
             virtual void Paint(Option_t* option)
             virtual void PaintBeginModel(Option_t* opt)
             virtual void PaintEnd(Option_t* opt)
             virtual void PaintPoints3D(const TPoints3DABC* line, Option_t* opt)
             virtual void PaintPolyLine(TPolyLine3D* line, Option_t* opt)
             virtual void PaintPolyMarker(TPolyMarker3D* marker, Option_t* opt)
             virtual void PaintScene(Option_t* opt)
             virtual void PopMatrix()
             virtual void PushMatrix()
                   UInt_t ReleaseLastGLList()
             virtual void ResetView(Bool_t flag = kTRUE)
                     void RotateView(Int_t x, Int_t y)
             virtual void SetAttNode(TNode* node, Option_t* opt)
             virtual void SetLineAttr(Color_t color, Int_t width, Option_t* opt)
             virtual void SetSpeedMove(Float_t speed)
             virtual void SetSteps(Float_t* steps)
             virtual void Size(Int_t width, Int_t height)
                     void UpdateModelView()
             virtual void UpdateNodeMatrix(TNode* node, Option_t* opt)
                     void UpdateObjectView()
             virtual void UpdatePosition(Double_t x, Double_t y, Double_t z, TRotMatrix* matrix, Option_t* opt)
             virtual void UpdateProjectView()

### Data Members

        private:

                             UInt_t fGLList              OpenGL lis to implement PROJECTION
                             UInt_t fGLLastList          OpenGL free list free to implement PROJECTION
                             Bool_t fMouseInit           Turn mouse activities on/off
                              Int_t fMouseX              Current X mouse position
                              Int_t fMouseY              Current Y mouse position
                            Float_t fSpeedMove
                            Float_t fStep[3]             the steps to move object with keyboard interactions
                             Bool_t fResetView           Flag whether we need to reset OpenGL view from the TPad::GetView();
                             Bool_t fPerspective         Flag to switch between the perspectibe and orthographic projection view
                             Bool_t fStereoFlag          Flag to switch the stereo and normal view
                           Double_t fExtraRotMatrix[16]  The current GL projection rotation matrix defined via "mouse"
          TPadOpenGLView::EDrawMode fCurrentMode
                      TGLViewerImp* fGLViewerImp         Pointer to the OpenGL viewer

        public:

          static const TPadOpenGLView::EDrawMode kHiddenLine
          static const TPadOpenGLView::EDrawMode kSolidView
          static const TPadOpenGLView::EDrawMode kWireFrame
              static const enum TPadOpenGLView:: kScene
              static const enum TPadOpenGLView:: kProject
              static const enum TPadOpenGLView:: kUpdateView
              static const enum TPadOpenGLView:: kView
              static const enum TPadOpenGLView:: kModel
              static const enum TPadOpenGLView:: kGLListSize

## Class Description

     TPadOpenGLView

     TPadOpenGLView is a window in which an OpenGL representation of a
     pad is viewed.

### Inline Functions

                       void ~TPadOpenGLView()
                       void Disconnect()
                       void MapOpenGL()
                       void UpdateModelView()
                       void UpdateObjectView()
                       void MoveModelView(Char_t option, Int_t count = 1)
                       void MoveModelView(const Char_t* commands, Int_t display_time = 0)
                       void RotateView(Int_t x, Int_t y)
             TPadOpenGLView TPadOpenGLView()
             TPadOpenGLView TPadOpenGLView(TVirtualPad* pad)
                       void ExecuteEvent(Int_t event, Int_t px, Int_t py)
                      Int_t GetGLList() const
                     UInt_t GetNextGLList()
                    Float_t GetSpeedMove() const
                       void GetSteps(Float_t* steps) const
                       void Paint(Option_t* option)
                       void Size(Int_t width, Int_t height)
                     UInt_t ReleaseLastGLList()
                       void PaintBeginModel(Option_t* opt)
                       void PaintEnd(Option_t* opt)
                       void PaintScene(Option_t* opt)
                       void PaintPolyMarker(TPolyMarker3D* marker, Option_t* opt)
                       void PaintPolyLine(TPolyLine3D* line, Option_t* opt)
                       void PaintPoints3D(const TPoints3DABC* line, Option_t* opt)
                       void PushMatrix()
                       void PopMatrix()
                       void ResetView(Bool_t flag = kTRUE)
                       void SetAttNode(TNode* node, Option_t* opt)
                       void SetLineAttr(Color_t color, Int_t width, Option_t* opt)
                       void SetSpeedMove(Float_t speed)
                       void SetSteps(Float_t* steps)
                       void UpdateNodeMatrix(TNode* node, Option_t* opt)
                       void UpdatePosition(Double_t x, Double_t y, Double_t z, TRotMatrix* matrix, Option_t* opt)
                       void UpdateProjectView()
             TPadOpenGLView TPadOpenGLView(const TPadOpenGLView&)
            TPadOpenGLView& operator=(const TPadOpenGLView&)

Author: Valery Fine(fine@vxcern.cern.ch) 08/05/97
Last update: root/g3d:$Name: $:$Id: TPadOpenGLView.h,v 1.6 2002/11/13 07:55:48 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *