Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLViewer Class Reference

Base GL viewer object - used by both standalone and embedded (in pad) GL.

Contains core viewer objects :

GL scene - collection of main drawn objects - see TGLStdScene Cameras (fXyzzCamera) - ortho and perspective cameras - see TGLCamera Clipping (fClipXyzz) - collection of clip objects - see TGLClip Manipulators (fXyzzManip) - collection of manipulators - see TGLManip

It maintains the current active draw styles, clipping object, manipulator, camera etc.

TGLViewer is 'GUI free' in that it does not derive from any ROOT GUI TGFrame etc - see TGLSAViewer for this. However it contains GUI GUI style methods HandleButton() etc to which GUI events can be directed from standalone frame or embedding pad to perform interaction.

Also, the TGLWidget needs to be created externally. It is not owned by the viewer.

For embedded (pad) GL this viewer is created directly by plugin manager. For standalone the derived TGLSAViewer is.

Definition at line 51 of file TGLViewer.h.

Public Types

enum  ECameraType {
  kCameraPerspXOZ , kCameraPerspYOZ , kCameraPerspXOY , kCameraOrthoXOY ,
  kCameraOrthoXOZ , kCameraOrthoZOY , kCameraOrthoZOX , kCameraOrthoXnOY ,
  kCameraOrthoXnOZ , kCameraOrthoZnOY , kCameraOrthoZnOX
}
 
enum  EDragAction {
  kDragNone , kDragCameraRotate , kDragCameraTruck , kDragCameraDolly ,
  kDragOverlay
}
 
enum  EPushAction { kPushStd , kPushCamCenter , kPushAnnotate }
 
enum  ESecSelType { kOnRequest , kOnKeyMod1 }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Public Types inherited from TGLLockable
enum  ELock { kUnlocked , kDrawLock , kSelectLock , kModifyLock }
 

Public Member Functions

 TGLViewer (TVirtualPad *pad)
 
 TGLViewer (TVirtualPad *pad, Int_t x, Int_t y, Int_t width, Int_t height)
 
 ~TGLViewer () override
 Destroy viewer object.
 
virtual void Activated ()
 
void AddCompositeOp (UInt_t) override
 
Int_t AddObject (const TBuffer3D &, Bool_t *=nullptr) override
 
Int_t AddObject (UInt_t, const TBuffer3D &, Bool_t *=nullptr) override
 
void ApplySelection ()
 Process result from last selection (in fSelRec) and extract a new current selection from it.
 
void AutoFade (Float_t fade, Float_t time=1, Int_t steps=10)
 Animate fading from current value to fade over given time (sec) and number of steps.
 
void BeginScene () override
 
Bool_t BuildingScene () const override
 
Bool_t CanLoopOnPrimitives () const override
 
void ClearCurrentOvlElm ()
 Reset current overlay-element to zero, eventually notifying the old one that the mouse has left.
 
virtual void Clicked (TObject *obj)
 Emit Clicked signal.
 
virtual void Clicked (TObject *obj, UInt_t button, UInt_t state)
 Emit Clicked signal with button id and modifier state.
 
void CloseComposite () override
 
TGLColorSetColorSet ()
 
virtual void CreateGLWidget ()
 
TGLCameraCurrentCamera () const
 
virtual void DestroyGLWidget ()
 
Int_t DistancetoPrimitive (Int_t px, Int_t py) override
 Calculate and return pixel distance to nearest viewer object from window location px, py This is provided for use when embedding GL viewer into pad.
 
void DoDraw (Bool_t swap_buffers=kTRUE)
 Draw out the viewer.
 
void DoDrawMono (Bool_t swap_buffers)
 Draw out in monoscopic mode.
 
void DoDrawStereo (Bool_t swap_buffers)
 Draw out in stereoscopic mode.
 
Bool_t DoOverlaySelect (Int_t x, Int_t y)
 Perform GL selection, picking overlay objects only.
 
Bool_t DoSecondarySelect (Int_t x, Int_t y)
 Secondary selection.
 
Bool_t DoSelect (Int_t x, Int_t y)
 Perform GL selection, picking objects overlapping WINDOW area described by 'rect'.
 
virtual void DoubleClicked ()
 
void DrawDebugInfo ()
 If in debug mode draw camera aids and overall bounding box.
 
void DrawGuides ()
 Draw reference marker and coordinate axes.
 
void EndScene () override
 
void ExecuteEvent (Int_t event, Int_t px, Int_t py) override
 Process event of type 'event' - one of EEventType types, occurring at window location px, py This is provided for use when embedding GL viewer into pad.
 
TGLAutoRotatorGetAutoRotator ()
 Get the auto-rotator for this viewer.
 
TGLCameraOverlayGetCameraOverlay () const
 
Bool_t GetClipAutoUpdate () const
 
TGLClipSetGetClipSet () const
 
TGLOverlayElementGetCurrentOvlElm () const
 
Int_t GetDev () const
 
EDragAction GetDragAction () const
 
Bool_t GetDrawCameraCenter ()
 
TGEventHandlerGetEventHandler () const
 
Float_t GetFader () const
 
TGedEditorGetGedEditor () const
 
TGLWidgetGetGLWidget ()
 
void GetGuideState (Int_t &axesType, Bool_t &axesDepthTest, Bool_t &referenceOn, Double_t *referencePos) const
 Fetch the state of guides (axes & reference markers) into arguments.
 
Bool_t GetIgnoreSizesOnUpdate () const
 
TGLLightSetGetLightSet () const
 
Float_t GetLineScale () const
 
Float_t GetMaxSceneDrawTimeHQ () const
 
Float_t GetMaxSceneDrawTimeLQ () const
 
TGLOvlSelectRecordGetOvlSelRec ()
 
const char * GetPictureFileName () const
 
TImageGetPictureUsingBB ()
 Returns current image.
 
TImageGetPictureUsingFBO (Int_t w, Int_t h, Float_t pixel_object_scale=0)
 Returns current image.
 
Float_t GetPointScale () const
 
EPushAction GetPushAction () const
 
Bool_t GetResetCamerasOnUpdate () const
 
const TGLPhysicalShapeGetSelected () const
 Return selected physical shape.
 
TGLSelectRecordGetSelRec ()
 
Bool_t GetSmartRefresh () const
 
Bool_t GetSmoothLines () const
 
Bool_t GetSmoothPoints () const
 
Bool_t GetStereo () const
 
Float_t GetStereoEyeOffsetFac () const
 
Float_t GetStereoFrustumAsymFac () const
 
Float_t GetStereoZeroParallax () const
 
TClassIsA () const override
 
Bool_t IsColorSetDark () const
 Returns true if current color set is dark.
 
Bool_t IsUsingDefaultColorSet () const
 Check if the viewer is using the default color set.
 
virtual void MouseIdle (TGLPhysicalShape *, UInt_t, UInt_t)
 Emit MouseIdle signal.
 
virtual void MouseOver (TGLPhysicalShape *)
 Emit MouseOver signal.
 
virtual void MouseOver (TGLPhysicalShape *, UInt_t state)
 Emit MouseOver signal.
 
virtual void MouseOver (TObject *obj, UInt_t state)
 Emit MouseOver signal.
 
Bool_t OpenComposite (const TBuffer3D &, Bool_t *=nullptr) override
 
virtual void OverlayDragFinished ()
 An overlay operation can result in change to an object.
 
void PadPaint (TVirtualPad *pad) override
 Entry point for updating viewer contents via VirtualViewer3D interface.
 
void PickAnnotate ()
 
void PickCameraCenter ()
 
void PostRender () override
 Restore state set in PreRender().
 
virtual void PostSceneBuildSetup (Bool_t resetCameras)
 Perform post scene-build setup.
 
Bool_t PreferLocalFrame () const override
 
void PreRender () override
 Initialize objects that influence rendering.
 
void PrintObjects () override
 Pass viewer for print capture by TGLOutput.
 
virtual void ReClicked (TObject *obj, UInt_t button, UInt_t state)
 Emit ReClicked signal with button id and modifier state.
 
TGLCameraRefCamera (ECameraType camera)
 Return camera reference by type.
 
TGLColorSetRefDarkColorSet ()
 
TGLColorSetRefLightColorSet ()
 
virtual void RefreshPadEditor (TObject *obj=nullptr)
 Update GED editor if it is set.
 
const TGLRectRefViewport () const
 
void ReinitializeCurrentCamera (const TGLVector3 &hAxis, const TGLVector3 &vAxis, Bool_t redraw=kTRUE)
 Change base-vectors defining the camera-base transformation of current camera.
 
virtual void ReMouseOver (TObject *obj, UInt_t state)
 Emit MouseOver signal.
 
void RemoveOverlayElement (TGLOverlayElement *el) override
 Remove overlay element.
 
void Render () override
 Normal rendering, used by mono and stereo rendering.
 
void RequestDraw (Short_t LOD=TGLRnrCtx::kLODMed)
 Post request for redraw of viewer at level of detail 'LOD' Request is directed via cross thread gVirtualGL object.
 
Bool_t RequestOverlaySelect (Int_t x, Int_t y)
 Post request for secondary selection rendering of selected object around the window point (x,y).
 
Bool_t RequestSecondarySelect (Int_t x, Int_t y)
 Request secondary select.
 
Bool_t RequestSelect (Int_t x, Int_t y)
 Post request for selection render pass viewer, picking objects around the window point (x,y).
 
void ResetCameras () override
 
void ResetCamerasAfterNextUpdate () override
 
void ResetCurrentCamera ()
 Resets position/rotation of current camera to default values.
 
Bool_t SavePicture ()
 Save current image using the default file name which can be set via SetPictureFileName() and defaults to "viewer.jpg".
 
Bool_t SavePicture (const TString &fileName)
 Save current image in various formats (gif, gif+, jpg, png, eps, pdf).
 
Bool_t SavePictureHeight (const TString &fileName, Int_t height, Bool_t pixel_object_scale=kTRUE)
 Save picture with given height (width scaled proportionally).
 
Bool_t SavePictureScale (const TString &fileName, Float_t scale, Bool_t pixel_object_scale=kTRUE)
 Save picture with given scale to current window size.
 
Bool_t SavePictureUsingBB (const TString &fileName)
 Save current image in various formats (gif, gif+, jpg, png).
 
Bool_t SavePictureUsingFBO (const TString &fileName, Int_t w, Int_t h, Float_t pixel_object_scale=0)
 Save current image in various formats (gif, gif+, jpg, png).
 
Bool_t SavePictureWidth (const TString &fileName, Int_t width, Bool_t pixel_object_scale=kTRUE)
 Save picture with given width (height scaled proportionally).
 
virtual void SelectionChanged ()
 Update GUI components for embedded viewer selection change.
 
void SetAutoRotator (TGLAutoRotator *ar)
 Set the auto-rotator for this viewer. The old rotator is deleted.
 
void SetCameraOverlay (TGLCameraOverlay *m)
 
void SetClearColor (Color_t col)
 Set background method.
 
void SetClipAutoUpdate (Bool_t x)
 
void SetCurrentCamera (ECameraType camera)
 Set current active camera - 'cameraType' one of: kCameraPerspX, kCameraPerspY, kCameraPerspZ, kCameraOrthoXOY, kCameraOrthoXOZ, kCameraOrthoZOY, kCameraOrthoXnOY, kCameraOrthoXnOZ, kCameraOrthoZnOY.
 
void SetDrawCameraCenter (Bool_t x)
 Draw camera look at and rotation point.
 
virtual void SetEventHandler (TGEventHandler *handler)
 Set the event-handler.
 
void SetFader (Float_t x)
 
virtual void SetGedEditor (TGedEditor *ed)
 
void SetGuideState (Int_t axesType, Bool_t axesDepthTest, Bool_t referenceOn, const Double_t *referencePos)
 Set the state of guides (axes & reference markers) from arguments.
 
void SetIgnoreSizesOnUpdate (Bool_t v)
 
void SetLineScale (Float_t s)
 
void SetMaxSceneDrawTimeHQ (Float_t t)
 
void SetMaxSceneDrawTimeLQ (Float_t t)
 
void SetOrthoCamera (ECameraType camera, Double_t zoom, Double_t dolly, Double_t center[3], Double_t hRotate, Double_t vRotate)
 Set an orthographic camera to supplied configuration - note this does not need to be the current camera - though you will not see the effect if it is not.
 
void SetPerspectiveCamera (ECameraType camera, Double_t fov, Double_t dolly, Double_t center[3], Double_t hRotate, Double_t vRotate)
 Set a perspective camera to supplied configuration - note this does not need to be the current camera - though you will not see the effect if it is not.
 
void SetPictureFileName (const TString &f)
 
void SetPointScale (Float_t s)
 
void SetResetCamerasOnUpdate (Bool_t v)
 
void SetSmartRefresh (Bool_t smart_ref)
 
void SetSmoothLines (Bool_t s)
 
void SetSmoothPoints (Bool_t s)
 
void SetStereo (Bool_t stereo, Bool_t quad_buf=kTRUE)
 Enable stereo rendering.
 
void SetStereoEyeOffsetFac (Float_t f)
 
void SetStereoFrustumAsymFac (Float_t f)
 
void SetStereoZeroParallax (Float_t f)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void SwitchColorSet ()
 Switch between dark and light colorsets.
 
virtual void UnClicked (TObject *obj, UInt_t button, UInt_t state)
 Emit UnClicked signal with button id and modifier state.
 
virtual void UnMouseOver (TObject *obj, UInt_t state)
 Emit UnMouseOver signal.
 
void UpdateScene (Bool_t redraw=kTRUE)
 Force update of pad-scenes.
 
void UseDarkColorSet ()
 Use the dark color-set.
 
void UseDefaultColorSet (Bool_t x)
 Set usage of the default color set.
 
void UseLightColorSet ()
 Use the light color-set.
 
Int_t ViewportDiagonal () const
 
- Public Member Functions inherited from TVirtualViewer3D
virtual ~TVirtualViewer3D ()
 
virtual void DrawViewer ()
 
TClassIsA () const override
 
virtual void ObjectPaint (TObject *, Option_t *="")
 
virtual TObjectSelectObject (Int_t, Int_t)
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual const char * GetName () const
 Returns name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object.
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
virtual ULong_t Hash () const
 Return hash value for this object.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout.
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TGLViewerBase
 TGLViewerBase ()
 
 ~TGLViewerBase () override
 Destructor.
 
virtual void AddOverlayElement (TGLOverlayElement *el)
 Add overlay element.
 
TGLSceneInfoAddScene (TGLSceneBase *scene)
 Add new scene, appropriate scene-info is created.
 
virtual void Changed ()
 
TGLClipClip () const
 
virtual void DeleteOverlayAnnotations ()
 Delete overlay elements that are annotations.
 
virtual void DeleteOverlayElements (TGLOverlayElement::ERole r)
 Delete overlay elements.
 
Bool_t FindClosestOpaqueRecord (TGLSelectRecord &rec, Int_t &recIdx)
 Find next select record that can be resolved and whose result is not transparent, starting from position 'recIdx'.
 
Bool_t FindClosestOverlayRecord (TGLOvlSelectRecord &rec, Int_t &recIdx)
 Find next overlay-select record that can be resolved, starting from position 'recIdx'.
 
Bool_t FindClosestRecord (TGLSelectRecord &rec, Int_t &recIdx)
 Find next select record that can be resolved, starting from position 'recIdx'.
 
TGLLogicalShapeFindLogicalInScenes (TObject *id)
 Find logical-shape representing object id in the list of scenes.
 
TGLRnrCtxGetRnrCtx () const
 
TGLSceneInfoGetSceneInfo (TGLSceneBase *scene)
 Find scene-info corresponding to scene.
 
TClassIsA () const override
 
virtual Bool_t IsChanged () const
 
const char * LockIdStr () const override
 Name to print in locking output.
 
Short_t LOD () const
 
virtual void MergeSceneBBoxes (TGLBoundingBox &bbox)
 Merge bounding-boxes of all active registered scenes.
 
Float_t OLLineW () const
 
virtual void PostRenderOverlaySelection ()
 Perform cleanup after overlay selection.
 
virtual void PreRenderOverlaySelection ()
 Perform minimal initialization for overlay selection.
 
const TGLBoundingBoxRefOverallBoundingBox () const
 
void RemoveAllScenes ()
 Remove all scenes from the viewer, their scene-infos are deleted.
 
void RemoveScene (TGLSceneBase *scene)
 Remove scene from the viewer, its scene-info is deleted.
 
virtual void RenderNonSelected ()
 Render non-selected objects from all scenes.
 
virtual void RenderOpaque (Bool_t rnr_non_selected=kTRUE, Bool_t rnr_selected=kTRUE)
 Render opaque objects from all scenes.
 
virtual void RenderOverlay (Int_t state, Bool_t selection)
 Render overlay objects.
 
virtual void RenderSelected ()
 Render selected objects from all scenes.
 
virtual void RenderSelectedForHighlight ()
 Render selected objects from all scenes for highlight.
 
virtual void RenderTransparent (Bool_t rnr_non_selected=kTRUE, Bool_t rnr_selected=kTRUE)
 Render transparent objects from all scenes.
 
virtual void ResetSceneInfos ()
 Force rebuild of view-dependent scene-info structures.
 
Bool_t ResolveSelectRecord (TGLSelectRecord &rec, Int_t recIdx)
 Process selection record on buffer-position 'recIdx' and fill the data into 'rec'.
 
TGLRnrCtxRnrCtx () const
 
void SceneDestructing (TGLSceneBase *scene)
 Remove scene, its scene-info is deleted.
 
void SetClip (TGLClip *p)
 
void SetLOD (Short_t lod)
 
void SetOLLineW (Float_t w)
 
void SetStyle (Short_t st)
 
void SetWFLineW (Float_t w)
 
void Streamer (TBuffer &) override
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Short_t Style () const
 
Float_t WFLineW () const
 
- Public Member Functions inherited from TGLLockable
 TGLLockable ()
 
virtual ~TGLLockable ()
 
ELock CurrentLock () const
 
Bool_t IsDrawOrSelectLock () const
 
Bool_t IsLocked () const
 
Bool_t ReleaseLock (ELock lock) const
 Release current lock, make sure it the same as the 'lock' argument.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Bool_t TakeLock (ELock lock) const
 Lock the object in mode 'lock'.
 
- Public Member Functions inherited from TQObject
 TQObject ()
 TQObject Constructor.
 
virtual ~TQObject ()
 TQObject Destructor.
 
Bool_t AreSignalsBlocked () const
 
Bool_t BlockSignals (Bool_t b)
 
virtual void ChangedBy (const char *method)
 
void CollectClassSignalLists (TList &list, TClass *cls)
 Collect class signal lists from class cls and all its base-classes.
 
Bool_t Connect (const char *signal, const char *receiver_class, void *receiver, const char *slot)
 Non-static method is used to connect from the signal of this object to the receiver slot.
 
virtual void Connected (const char *)
 
virtual void Destroyed ()
 
Bool_t Disconnect (const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal of this object from slot of receiver.
 
virtual void Disconnected (const char *)
 
void Emit (const char *signal)
 Activate signal without args.
 
template<typename T >
void Emit (const char *signal, const T &arg)
 Activate signal with single parameter.
 
template<typename... T>
void EmitVA (const char *signal_name, Int_t, const T &... params)
 Emit a signal with a varying number of arguments.
 
TListGetListOfClassSignals () const
 Returns pointer to list of signals of this class.
 
TListGetListOfConnections () const
 
TListGetListOfSignals () const
 
virtual Bool_t HasConnection (const char *signal_name) const
 Return true if there is any object connected to this signal.
 
virtual void HighPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void LowPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void Message (const char *msg)
 
virtual Int_t NumberOfConnections () const
 Return number of connections for this object.
 
virtual Int_t NumberOfSignals () const
 Return number of signals for this object.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static TGLColorSetGetDefaultColorSet ()
 Returns reference to the default color-set.
 
static Bool_t IsUsingDefaultColorSetForNewViewers ()
 Returns the value of the static flag that determines if new viewers should use the default color-set.
 
static void SetAxisLabelScale (Float_t als)
 Sets static scaling facor that allows simple guide axies to have label values scaled relative to actual scene dimensions.
 
static void UseDefaultColorSetForNewViewers (Bool_t x)
 Sets static flag that determines if new viewers should use the default color-set.
 
- Static Public Member Functions inherited from TVirtualViewer3D
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static TVirtualViewer3DViewer3D (TVirtualPad *pad=nullptr, Option_t *type="")
 Create a Viewer 3D of specified type.
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TGLViewerBase
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TGLLockable
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static const char * LockName (ELock lock)
 Return name-string for given lock-type.
 
static Bool_t LockValid (ELock lock)
 Test if lock is a valid type to take/release.
 
- Static Public Member Functions inherited from TQObject
static Bool_t AreAllSignalsBlocked ()
 Returns true if all signals are blocked.
 
static Bool_t BlockAllSignals (Bool_t b)
 Block or unblock all signals. Returns the previous block status.
 
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static Bool_t Connect (const char *sender_class, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 This method allows to make a connection from any object of the same class to a single slot.
 
static Bool_t Connect (TQObject *sender, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 
static const char * DeclFileName ()
 
static Bool_t Disconnect (const char *class_name, const char *signal, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects "class signal".
 
static Bool_t Disconnect (TQObject *sender, const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal in object sender from slot_method in object receiver.
 

Protected Member Functions

void FadeView (Float_t alpha)
 Draw a rectangle (background color and given alpha) across the whole viewport.
 
void InitGL ()
 Initialise GL state.
 
void MakeCurrent () const
 Make GL context current.
 
void PostDraw ()
 Perform GL work which must be done after each draw.
 
void PreDraw ()
 Perform GL work which must be done before each draw.
 
void SetupCameras (Bool_t reset)
 Setup cameras for current bounding box.
 
void SetupClipObject () override
 allow simple guide axes labels to be scaled relative to scene units
 
void SetViewport (const TGLRect &vp)
 
void SetViewport (Int_t x, Int_t y, Int_t width, Int_t height)
 Set viewer viewport (window area) with bottom/left at (x,y), with dimensions 'width'/'height'.
 
void SwapBuffers () const
 Swap GL buffers.
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Member Functions inherited from TGLViewerBase
SceneInfoList_i FindScene (TGLSceneBase *scene)
 Find scene-info corresponding to scene.
 
void SubRenderScenes (SubRender_foo render_foo)
 Call sub-rendering function render_foo on all currently visible scenes.
 
- Protected Member Functions inherited from TQObject
virtual void * GetSender ()
 
virtual const char * GetSenderClassName () const
 

Protected Attributes

TGLAutoRotatorfAutoRotator
 
Bool_t fAxesDepthTest
 axes type
 
Int_t fAxesType
 smooth line edge rendering
 
TGLCameraOverlayfCameraOverlay
 reference marker on?
 
TGLClipSetfClipSet
 
TContextMenufContextMenu
 external pad - remove replace with signal
 
TGLCamerafCurrentCamera
 
TGLOverlayElementfCurrentOvlElm
 
TGLSelectRecord fCurrentSelRec
 
TGLColorSet fDarkColorSet
 viewport - drawn area
 
Bool_t fDebugMode
 cache logicals during scene rebuilds
 
EDragAction fDragAction
 
Bool_t fDrawCameraCenter
 reference position
 
TGEventHandlerfEventHandler
 select record from last overlay select
 
Float_t fFader
 default file-name for SavePicture()
 
TGedEditorfGedEditor
 event handler
 
TGLContextIdentityfGLCtxId
 for embedded gl viewer
 
Int_t fGLDevice
 
TGLWidgetfGLWidget
 
Bool_t fIgnoreSizesOnUpdate
 for embedded gl viewer
 
Bool_t fIsPrinting
 debug mode (forced rebuild + draw scene/frustum/interest boxes)
 
TGLColorSet fLightColorSet
 color-set with dark background
 
TGLLightSetfLightSet
 
Float_t fLineScale
 size scale for points
 
Float_t fMaxSceneDrawTimeHQ
 timer for triggering redraws
 
Float_t fMaxSceneDrawTimeLQ
 max time for scene rendering at high LOD (in ms)
 
TGLOrthoCamera fOrthoXnOYCamera
 
TGLOrthoCamera fOrthoXnOZCamera
 
TGLOrthoCamera fOrthoXOYCamera
 
TGLOrthoCamera fOrthoXOZCamera
 
TGLOrthoCamera fOrthoZnOXCamera
 
TGLOrthoCamera fOrthoZnOYCamera
 
TGLOrthoCamera fOrthoZOXCamera
 
TGLOrthoCamera fOrthoZOYCamera
 
TGLOvlSelectRecord fOvlSelRec
 current overlay element
 
TVirtualPadfPad
 
TGLPerspectiveCamera fPerspectiveCameraXOY
 
TGLPerspectiveCamera fPerspectiveCameraXOZ
 
TGLPerspectiveCamera fPerspectiveCameraYOZ
 
TString fPictureFileName
 
Float_t fPointScale
 color-set with light background
 
TGLPShapeObjfPShapeWrap
 GED editor.
 
EPushAction fPushAction
 
TGLRedrawTimerfRedrawTimer
 
Bool_t fReferenceOn
 remove guides hidden-lines
 
TGLVertex3 fReferencePos
 reference marker on?
 
Bool_t fResetCamerasOnNextUpdate
 
Bool_t fResetCamerasOnUpdate
 
TGLSelectRecord fSecSelRec
 select record from last select (should go to context)
 
TGLManipSetfSelectedPShapeRef
 select record from last secondary select (should go to context)
 
TGLSelectRecord fSelRec
 select record in use as selected
 
Bool_t fSmartRefresh
 markup size of viewport in scene units
 
Bool_t fSmoothLines
 smooth point edge rendering
 
Bool_t fSmoothPoints
 width scale for lines
 
Bool_t fStereo
 
Float_t fStereoEyeOffsetFac
 position of zero-parallax plane: 0 - near clipping plane, 1 - far clipping plane
 
Float_t fStereoFrustumAsymFac
 
Bool_t fStereoQuadBuf
 use stereo rendering
 
Float_t fStereoZeroParallax
 draw quad buffer or left/right stereo in left/right half of window
 
TGLRect fViewport
 max time for scene rendering at high LOD (in ms)
 
- Protected Attributes inherited from TGLViewerBase
TGLCamerafCamera
 
Bool_t fChanged
 
TGLClipfClip
 
Short_t fLOD
 
Float_t fOLLineW
 
TGLBoundingBox fOverallBoundingBox
 
OverlayElmVec_t fOverlay
 
Bool_t fResetSceneInfosOnRender
 
TGLRnrCtxfRnrCtx
 
SceneInfoList_t fScenes
 
Short_t fStyle
 
SceneInfoVec_t fVisScenes
 
Float_t fWFLineW
 
- Protected Attributes inherited from TGLLockable
ELock fLock
 
- Protected Attributes inherited from TQObject
TListfListOfConnections
 list of signals from this object
 
TListfListOfSignals
 
Bool_t fSignalsBlocked
 list of connections to this object
 

Static Protected Attributes

static Float_t fgAxisLabelScale = 1
 name says it all
 
static TGLColorSet fgDefaultColorSet
 fade the view (0 - no fade/default, 1 - full fade/no rendering done)
 
static Bool_t fgUseDefaultColorSetForNewViewers = kFALSE
 a shared, default color-set
 
- Static Protected Attributes inherited from TQObject
static Bool_t fgAllSignalsBlocked = kFALSE
 flag used for suppression of signals
 

Private Member Functions

 TGLViewer (const TGLViewer &)=delete
 
void InitSecondaryObjects ()
 Common initialization.
 
TGLVieweroperator= (const TGLViewer &)=delete
 

Friends

class TGLAutoRotator
 
class TGLEventHandler
 
class TGLOutput
 

Additional Inherited Members

- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Types inherited from TGLViewerBase
typedef OverlayElmVec_t::iterator OverlayElmVec_i
 
typedef std::vector< TGLOverlayElement * > OverlayElmVec_t
 
typedef SceneInfoList_t::iterator SceneInfoList_i
 
typedef std::list< TGLSceneInfo * > SceneInfoList_t
 
typedef SceneInfoVec_t::iterator SceneInfoVec_i
 
typedef std::vector< TGLSceneInfo * > SceneInfoVec_t
 
typedef void(TGLSceneBase::* SubRender_foo) (TGLRnrCtx &)
 
- Static Protected Member Functions inherited from TQObject
static Int_t CheckConnectArgs (TQObject *sender, TClass *sender_class, const char *signal, TClass *receiver_class, const char *slot)
 Checking of consistency of sender/receiver methods/arguments.
 
static TString CompressName (const char *method_name)
 Removes "const" words and blanks from full (with prototype) method name and resolve any typedefs in the method signature.
 
static Bool_t ConnectToClass (const char *sender_class, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 This method allows to make connection from any object of the same class to the receiver object.
 
static Bool_t ConnectToClass (TQObject *sender, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 

#include <TGLViewer.h>

Inheritance diagram for TGLViewer:
[legend]

Member Enumeration Documentation

◆ ECameraType

Enumerator
kCameraPerspXOZ 
kCameraPerspYOZ 
kCameraPerspXOY 
kCameraOrthoXOY 
kCameraOrthoXOZ 
kCameraOrthoZOY 
kCameraOrthoZOX 
kCameraOrthoXnOY 
kCameraOrthoXnOZ 
kCameraOrthoZnOY 
kCameraOrthoZnOX 

Definition at line 61 of file TGLViewer.h.

◆ EDragAction

Enumerator
kDragNone 
kDragCameraRotate 
kDragCameraTruck 
kDragCameraDolly 
kDragOverlay 

Definition at line 127 of file TGLViewer.h.

◆ EPushAction

Enumerator
kPushStd 
kPushCamCenter 
kPushAnnotate 

Definition at line 125 of file TGLViewer.h.

◆ ESecSelType

Enumerator
kOnRequest 
kOnKeyMod1 

Definition at line 65 of file TGLViewer.h.

Constructor & Destructor Documentation

◆ TGLViewer() [1/3]

TGLViewer::TGLViewer ( const TGLViewer )
privatedelete

◆ TGLViewer() [2/3]

TGLViewer::TGLViewer ( TVirtualPad pad,
Int_t  x,
Int_t  y,
Int_t  width,
Int_t  height 
)

Definition at line 98 of file TGLViewer.cxx.

◆ TGLViewer() [3/3]

TGLViewer::TGLViewer ( TVirtualPad pad)

Definition at line 165 of file TGLViewer.cxx.

◆ ~TGLViewer()

TGLViewer::~TGLViewer ( )
override

Destroy viewer object.

Definition at line 274 of file TGLViewer.cxx.

Member Function Documentation

◆ Activated()

virtual void TGLViewer::Activated ( )
inlinevirtual

Definition at line 363 of file TGLViewer.h.

◆ AddCompositeOp()

void TGLViewer::AddCompositeOp ( UInt_t  )
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 217 of file TGLViewer.h.

◆ AddObject() [1/2]

Int_t TGLViewer::AddObject ( const TBuffer3D ,
Bool_t = nullptr 
)
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 213 of file TGLViewer.h.

◆ AddObject() [2/2]

Int_t TGLViewer::AddObject ( UInt_t  ,
const TBuffer3D ,
Bool_t = nullptr 
)
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 214 of file TGLViewer.h.

◆ ApplySelection()

void TGLViewer::ApplySelection ( )

Process result from last selection (in fSelRec) and extract a new current selection from it.

Here we only use physical shape.

Definition at line 1472 of file TGLViewer.cxx.

◆ AutoFade()

void TGLViewer::AutoFade ( Float_t  fade,
Float_t  time = 1,
Int_t  steps = 10 
)

Animate fading from current value to fade over given time (sec) and number of steps.

Definition at line 1606 of file TGLViewer.cxx.

◆ BeginScene()

void TGLViewer::BeginScene ( )
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 210 of file TGLViewer.h.

◆ BuildingScene()

Bool_t TGLViewer::BuildingScene ( ) const
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 211 of file TGLViewer.h.

◆ CanLoopOnPrimitives()

Bool_t TGLViewer::CanLoopOnPrimitives ( ) const
inlineoverridevirtual

Reimplemented from TVirtualViewer3D.

Definition at line 202 of file TGLViewer.h.

◆ Class()

static TClass * TGLViewer::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGLViewer::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGLViewer::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 395 of file TGLViewer.h.

◆ ClearCurrentOvlElm()

void TGLViewer::ClearCurrentOvlElm ( )

Reset current overlay-element to zero, eventually notifying the old one that the mouse has left.

Usually called when mouse leaves the window.

Definition at line 2328 of file TGLViewer.cxx.

◆ Clicked() [1/2]

void TGLViewer::Clicked ( TObject obj)
virtual

Emit Clicked signal.

Definition at line 2158 of file TGLViewer.cxx.

◆ Clicked() [2/2]

void TGLViewer::Clicked ( TObject obj,
UInt_t  button,
UInt_t  state 
)
virtual

Emit Clicked signal with button id and modifier state.

Definition at line 2166 of file TGLViewer.cxx.

◆ CloseComposite()

void TGLViewer::CloseComposite ( )
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 216 of file TGLViewer.h.

◆ ColorSet()

TGLColorSet & TGLViewer::ColorSet ( )
inline

Definition at line 234 of file TGLViewer.h.

◆ CreateGLWidget()

virtual void TGLViewer::CreateGLWidget ( )
inlinevirtual

Reimplemented in TGLEmbeddedViewer, and TGLSAViewer.

Definition at line 225 of file TGLViewer.h.

◆ CurrentCamera()

TGLCamera & TGLViewer::CurrentCamera ( ) const
inline

Definition at line 268 of file TGLViewer.h.

◆ DeclFileName()

static const char * TGLViewer::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 395 of file TGLViewer.h.

◆ DestroyGLWidget()

virtual void TGLViewer::DestroyGLWidget ( )
inlinevirtual

Reimplemented in TGLEmbeddedViewer, and TGLSAViewer.

Definition at line 226 of file TGLViewer.h.

◆ DistancetoPrimitive()

Int_t TGLViewer::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
overridevirtual

Calculate and return pixel distance to nearest viewer object from window location px, py This is provided for use when embedding GL viewer into pad.

Reimplemented from TObject.

Definition at line 2225 of file TGLViewer.cxx.

◆ DoDraw()

void TGLViewer::DoDraw ( Bool_t  swap_buffers = kTRUE)

Draw out the viewer.

Definition at line 548 of file TGLViewer.cxx.

◆ DoDrawMono()

void TGLViewer::DoDrawMono ( Bool_t  swap_buffers)

Draw out in monoscopic mode.

Definition at line 626 of file TGLViewer.cxx.

◆ DoDrawStereo()

void TGLViewer::DoDrawStereo ( Bool_t  swap_buffers)

Draw out in stereoscopic mode.

Definition at line 658 of file TGLViewer.cxx.

◆ DoOverlaySelect()

Bool_t TGLViewer::DoOverlaySelect ( Int_t  x,
Int_t  y 
)

Perform GL selection, picking overlay objects only.

Return TRUE if the selected overlay-element has changed.

Definition at line 1508 of file TGLViewer.cxx.

◆ DoSecondarySelect()

Bool_t TGLViewer::DoSecondarySelect ( Int_t  x,
Int_t  y 
)

Secondary selection.

Definition at line 1397 of file TGLViewer.cxx.

◆ DoSelect()

Bool_t TGLViewer::DoSelect ( Int_t  x,
Int_t  y 
)

Perform GL selection, picking objects overlapping WINDOW area described by 'rect'.

Return kTRUE if selection should be changed, kFALSE otherwise. Select lock should already been taken in other thread in TGLViewer::ReqSelect().

Definition at line 1328 of file TGLViewer.cxx.

◆ DoubleClicked()

virtual void TGLViewer::DoubleClicked ( )
inlinevirtual

Definition at line 376 of file TGLViewer.h.

◆ DrawDebugInfo()

void TGLViewer::DrawDebugInfo ( )

If in debug mode draw camera aids and overall bounding box.

Definition at line 1191 of file TGLViewer.cxx.

◆ DrawGuides()

void TGLViewer::DrawGuides ( )

Draw reference marker and coordinate axes.

Definition at line 1156 of file TGLViewer.cxx.

◆ EndScene()

void TGLViewer::EndScene ( )
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 212 of file TGLViewer.h.

◆ ExecuteEvent()

void TGLViewer::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
overridevirtual

Process event of type 'event' - one of EEventType types, occurring at window location px, py This is provided for use when embedding GL viewer into pad.

Reimplemented from TObject.

Definition at line 2238 of file TGLViewer.cxx.

◆ FadeView()

void TGLViewer::FadeView ( Float_t  alpha)
protected

Draw a rectangle (background color and given alpha) across the whole viewport.

Definition at line 1252 of file TGLViewer.cxx.

◆ GetAutoRotator()

TGLAutoRotator * TGLViewer::GetAutoRotator ( )

Get the auto-rotator for this viewer.

Definition at line 2009 of file TGLViewer.cxx.

◆ GetCameraOverlay()

TGLCameraOverlay * TGLViewer::GetCameraOverlay ( ) const
inline

Definition at line 282 of file TGLViewer.h.

◆ GetClipAutoUpdate()

Bool_t TGLViewer::GetClipAutoUpdate ( ) const
inline

Definition at line 264 of file TGLViewer.h.

◆ GetClipSet()

TGLClipSet * TGLViewer::GetClipSet ( ) const
inline

Definition at line 263 of file TGLViewer.h.

◆ GetCurrentOvlElm()

TGLOverlayElement * TGLViewer::GetCurrentOvlElm ( ) const
inline

Definition at line 392 of file TGLViewer.h.

◆ GetDefaultColorSet()

TGLColorSet & TGLViewer::GetDefaultColorSet ( )
static

Returns reference to the default color-set.

Static function.

Definition at line 1681 of file TGLViewer.cxx.

◆ GetDev()

Int_t TGLViewer::GetDev ( ) const
inline

Definition at line 228 of file TGLViewer.h.

◆ GetDragAction()

EDragAction TGLViewer::GetDragAction ( ) const
inline

Definition at line 300 of file TGLViewer.h.

◆ GetDrawCameraCenter()

Bool_t TGLViewer::GetDrawCameraCenter ( )
inline

Definition at line 279 of file TGLViewer.h.

◆ GetEventHandler()

TGEventHandler * TGLViewer::GetEventHandler ( ) const
inline

Definition at line 378 of file TGLViewer.h.

◆ GetFader()

Float_t TGLViewer::GetFader ( ) const
inline

Definition at line 349 of file TGLViewer.h.

◆ GetGedEditor()

TGedEditor * TGLViewer::GetGedEditor ( ) const
inline

Definition at line 381 of file TGLViewer.h.

◆ GetGLWidget()

TGLWidget * TGLViewer::GetGLWidget ( )
inline

Definition at line 223 of file TGLViewer.h.

◆ GetGuideState()

void TGLViewer::GetGuideState ( Int_t axesType,
Bool_t axesDepthTest,
Bool_t referenceOn,
Double_t referencePos 
) const

Fetch the state of guides (axes & reference markers) into arguments.

Definition at line 2055 of file TGLViewer.cxx.

◆ GetIgnoreSizesOnUpdate()

Bool_t TGLViewer::GetIgnoreSizesOnUpdate ( ) const
inline

Definition at line 355 of file TGLViewer.h.

◆ GetLightSet()

TGLLightSet * TGLViewer::GetLightSet ( ) const
inline

Definition at line 262 of file TGLViewer.h.

◆ GetLineScale()

Float_t TGLViewer::GetLineScale ( ) const
inline

Definition at line 254 of file TGLViewer.h.

◆ GetMaxSceneDrawTimeHQ()

Float_t TGLViewer::GetMaxSceneDrawTimeHQ ( ) const
inline

Definition at line 308 of file TGLViewer.h.

◆ GetMaxSceneDrawTimeLQ()

Float_t TGLViewer::GetMaxSceneDrawTimeLQ ( ) const
inline

Definition at line 309 of file TGLViewer.h.

◆ GetOvlSelRec()

TGLOvlSelectRecord & TGLViewer::GetOvlSelRec ( )
inline

Definition at line 391 of file TGLViewer.h.

◆ GetPictureFileName()

const char * TGLViewer::GetPictureFileName ( ) const
inline

Definition at line 347 of file TGLViewer.h.

◆ GetPictureUsingBB()

TImage * TGLViewer::GetPictureUsingBB ( )

Returns current image.

Back-Buffer is used for capturing of the image. The viewer window most be fully contained within the desktop but can be covered by other windows.

Definition at line 985 of file TGLViewer.cxx.

◆ GetPictureUsingFBO()

TImage * TGLViewer::GetPictureUsingFBO ( Int_t  w,
Int_t  h,
Float_t  pixel_object_scale = 0 
)

Returns current image.

Frame-Buffer-Object is used for capturing of the image - OpenGL 1.5 is required. The viewer window does not have to be visible at all.

pixel_object_scale is used to scale (as much as possible) the objects whose representation size is pixel based (point-sizes, line-widths, bitmap/pixmap font-sizes). If set to 0 (default) no scaling is applied.

Definition at line 1032 of file TGLViewer.cxx.

◆ GetPointScale()

Float_t TGLViewer::GetPointScale ( ) const
inline

Definition at line 253 of file TGLViewer.h.

◆ GetPushAction()

EPushAction TGLViewer::GetPushAction ( ) const
inline

Definition at line 299 of file TGLViewer.h.

◆ GetResetCamerasOnUpdate()

Bool_t TGLViewer::GetResetCamerasOnUpdate ( ) const
inline

Definition at line 358 of file TGLViewer.h.

◆ GetSelected()

const TGLPhysicalShape * TGLViewer::GetSelected ( ) const

Return selected physical shape.

Definition at line 2094 of file TGLViewer.cxx.

◆ GetSelRec()

TGLSelectRecord & TGLViewer::GetSelRec ( )
inline

Definition at line 390 of file TGLViewer.h.

◆ GetSmartRefresh()

Bool_t TGLViewer::GetSmartRefresh ( ) const
inline

Definition at line 229 of file TGLViewer.h.

◆ GetSmoothLines()

Bool_t TGLViewer::GetSmoothLines ( ) const
inline

Definition at line 258 of file TGLViewer.h.

◆ GetSmoothPoints()

Bool_t TGLViewer::GetSmoothPoints ( ) const
inline

Definition at line 257 of file TGLViewer.h.

◆ GetStereo()

Bool_t TGLViewer::GetStereo ( ) const
inline

Definition at line 288 of file TGLViewer.h.

◆ GetStereoEyeOffsetFac()

Float_t TGLViewer::GetStereoEyeOffsetFac ( ) const
inline

Definition at line 290 of file TGLViewer.h.

◆ GetStereoFrustumAsymFac()

Float_t TGLViewer::GetStereoFrustumAsymFac ( ) const
inline

Definition at line 291 of file TGLViewer.h.

◆ GetStereoZeroParallax()

Float_t TGLViewer::GetStereoZeroParallax ( ) const
inline

Definition at line 289 of file TGLViewer.h.

◆ InitGL()

void TGLViewer::InitGL ( )
protected

Initialise GL state.

Definition at line 409 of file TGLViewer.cxx.

◆ InitSecondaryObjects()

void TGLViewer::InitSecondaryObjects ( )
private

Common initialization.

Definition at line 240 of file TGLViewer.cxx.

◆ IsA()

TClass * TGLViewer::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TObject.

Definition at line 395 of file TGLViewer.h.

◆ IsColorSetDark()

Bool_t TGLViewer::IsColorSetDark ( ) const

Returns true if current color set is dark.

Definition at line 1719 of file TGLViewer.cxx.

◆ IsUsingDefaultColorSet()

Bool_t TGLViewer::IsUsingDefaultColorSet ( ) const

Check if the viewer is using the default color set.

If yes, some operations might be disabled.

Definition at line 1663 of file TGLViewer.cxx.

◆ IsUsingDefaultColorSetForNewViewers()

Bool_t TGLViewer::IsUsingDefaultColorSetForNewViewers ( )
static

Returns the value of the static flag that determines if new viewers should use the default color-set.

This is false at startup.

Definition at line 1701 of file TGLViewer.cxx.

◆ MakeCurrent()

void TGLViewer::MakeCurrent ( ) const
protected

Make GL context current.

Definition at line 1277 of file TGLViewer.cxx.

◆ MouseIdle()

void TGLViewer::MouseIdle ( TGLPhysicalShape shape,
UInt_t  posx,
UInt_t  posy 
)
virtual

Emit MouseIdle signal.

Definition at line 2203 of file TGLViewer.cxx.

◆ MouseOver() [1/3]

void TGLViewer::MouseOver ( TGLPhysicalShape shape)
virtual

Emit MouseOver signal.

Definition at line 2105 of file TGLViewer.cxx.

◆ MouseOver() [2/3]

void TGLViewer::MouseOver ( TGLPhysicalShape shape,
UInt_t  state 
)
virtual

Emit MouseOver signal.

Definition at line 2113 of file TGLViewer.cxx.

◆ MouseOver() [3/3]

void TGLViewer::MouseOver ( TObject obj,
UInt_t  state 
)
virtual

Emit MouseOver signal.

Definition at line 2124 of file TGLViewer.cxx.

◆ OpenComposite()

Bool_t TGLViewer::OpenComposite ( const TBuffer3D ,
Bool_t = nullptr 
)
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 215 of file TGLViewer.h.

◆ operator=()

TGLViewer & TGLViewer::operator= ( const TGLViewer )
privatedelete

◆ OverlayDragFinished()

void TGLViewer::OverlayDragFinished ( )
virtual

An overlay operation can result in change to an object.

Refresh geditor.

Definition at line 2275 of file TGLViewer.cxx.

◆ PadPaint()

void TGLViewer::PadPaint ( TVirtualPad pad)
overridevirtual

Entry point for updating viewer contents via VirtualViewer3D interface.

We search and forward the request to appropriate TGLScenePad. If it is not found we create a new TGLScenePad so this can potentially also be used for registration of new pads.

Reimplemented from TVirtualViewer3D.

Definition at line 304 of file TGLViewer.cxx.

◆ PickAnnotate()

void TGLViewer::PickAnnotate ( )
inline

Definition at line 281 of file TGLViewer.h.

◆ PickCameraCenter()

void TGLViewer::PickCameraCenter ( )
inline

Definition at line 280 of file TGLViewer.h.

◆ PostDraw()

void TGLViewer::PostDraw ( )
protected

Perform GL work which must be done after each draw.

Definition at line 1242 of file TGLViewer.cxx.

◆ PostRender()

void TGLViewer::PostRender ( )
overridevirtual

Restore state set in PreRender().

Called after every render.

Reimplemented from TGLViewerBase.

Definition at line 537 of file TGLViewer.cxx.

◆ PostSceneBuildSetup()

void TGLViewer::PostSceneBuildSetup ( Bool_t  resetCameras)
virtual

Perform post scene-build setup.

Definition at line 392 of file TGLViewer.cxx.

◆ PreDraw()

void TGLViewer::PreDraw ( )
protected

Perform GL work which must be done before each draw.

Definition at line 1217 of file TGLViewer.cxx.

◆ PreferLocalFrame()

Bool_t TGLViewer::PreferLocalFrame ( ) const
inlineoverridevirtual

Implements TVirtualViewer3D.

Definition at line 209 of file TGLViewer.h.

◆ PreRender()

void TGLViewer::PreRender ( )
overridevirtual

Initialize objects that influence rendering.

Called before every render.

Reimplemented from TGLViewerBase.

Definition at line 483 of file TGLViewer.cxx.

◆ PrintObjects()

void TGLViewer::PrintObjects ( )
overridevirtual

Pass viewer for print capture by TGLOutput.

Reimplemented from TVirtualViewer3D.

Definition at line 2247 of file TGLViewer.cxx.

◆ ReClicked()

void TGLViewer::ReClicked ( TObject obj,
UInt_t  button,
UInt_t  state 
)
virtual

Emit ReClicked signal with button id and modifier state.

Definition at line 2179 of file TGLViewer.cxx.

◆ RefCamera()

TGLCamera & TGLViewer::RefCamera ( ECameraType  camera)

Return camera reference by type.

Definition at line 1764 of file TGLViewer.cxx.

◆ RefDarkColorSet()

TGLColorSet & TGLViewer::RefDarkColorSet ( )
inline

Definition at line 232 of file TGLViewer.h.

◆ RefLightColorSet()

TGLColorSet & TGLViewer::RefLightColorSet ( )
inline

Definition at line 233 of file TGLViewer.h.

◆ RefreshPadEditor()

void TGLViewer::RefreshPadEditor ( TObject obj = nullptr)
virtual

Update GED editor if it is set.

Definition at line 2286 of file TGLViewer.cxx.

◆ RefViewport()

const TGLRect & TGLViewer::RefViewport ( ) const
inline

Definition at line 250 of file TGLViewer.h.

◆ ReinitializeCurrentCamera()

void TGLViewer::ReinitializeCurrentCamera ( const TGLVector3 hAxis,
const TGLVector3 vAxis,
Bool_t  redraw = kTRUE 
)

Change base-vectors defining the camera-base transformation of current camera.

hAxis and vAxis are the default directions for forward (inverted) and upwards.

Definition at line 1997 of file TGLViewer.cxx.

◆ ReMouseOver()

void TGLViewer::ReMouseOver ( TObject obj,
UInt_t  state 
)
virtual

Emit MouseOver signal.

Definition at line 2135 of file TGLViewer.cxx.

◆ RemoveOverlayElement()

void TGLViewer::RemoveOverlayElement ( TGLOverlayElement el)
overridevirtual

Remove overlay element.

Reimplemented from TGLViewerBase.

Definition at line 2314 of file TGLViewer.cxx.

◆ Render()

void TGLViewer::Render ( )
overridevirtual

Normal rendering, used by mono and stereo rendering.

Reimplemented from TGLViewerBase.

Definition at line 517 of file TGLViewer.cxx.

◆ RequestDraw()

void TGLViewer::RequestDraw ( Short_t  LOD = TGLRnrCtx::kLODMed)

Post request for redraw of viewer at level of detail 'LOD' Request is directed via cross thread gVirtualGL object.

Definition at line 438 of file TGLViewer.cxx.

◆ RequestOverlaySelect()

Bool_t TGLViewer::RequestOverlaySelect ( Int_t  x,
Int_t  y 
)

Post request for secondary selection rendering of selected object around the window point (x,y).

Definition at line 1489 of file TGLViewer.cxx.

◆ RequestSecondarySelect()

Bool_t TGLViewer::RequestSecondarySelect ( Int_t  x,
Int_t  y 
)

Request secondary select.

Definition at line 1382 of file TGLViewer.cxx.

◆ RequestSelect()

Bool_t TGLViewer::RequestSelect ( Int_t  x,
Int_t  y 
)

Post request for selection render pass viewer, picking objects around the window point (x,y).

Definition at line 1306 of file TGLViewer.cxx.

◆ ResetCameras()

void TGLViewer::ResetCameras ( )
inlineoverridevirtual

Reimplemented from TVirtualViewer3D.

Definition at line 220 of file TGLViewer.h.

◆ ResetCamerasAfterNextUpdate()

void TGLViewer::ResetCamerasAfterNextUpdate ( )
inlineoverridevirtual

Reimplemented from TVirtualViewer3D.

Definition at line 221 of file TGLViewer.h.

◆ ResetCurrentCamera()

void TGLViewer::ResetCurrentCamera ( )

Resets position/rotation of current camera to default values.

Definition at line 358 of file TGLViewer.cxx.

◆ SavePicture() [1/2]

Bool_t TGLViewer::SavePicture ( )

Save current image using the default file name which can be set via SetPictureFileName() and defaults to "viewer.jpg".

Really useful for the files ending with 'gif+'.

Definition at line 783 of file TGLViewer.cxx.

◆ SavePicture() [2/2]

Bool_t TGLViewer::SavePicture ( const TString fileName)

Save current image in various formats (gif, gif+, jpg, png, eps, pdf).

'gif+' will append image to an existing file (animated gif). 'eps' and 'pdf' do not fully support transparency and texturing. The viewer window most be fully contained within the desktop but can be covered by other windows. Returns false if something obvious goes wrong, true otherwise.

The mage is saved using a frame-buffer object if the GL implementation claims to support it – this claim is not always true, especially when running over ssh with drastically different GL implementations on the client and server sides. Set this in .rootrc to enforce creation of pictures using the back-buffer: OpenGL.SavePicturesViaFBO: off

Definition at line 803 of file TGLViewer.cxx.

◆ SavePictureHeight()

Bool_t TGLViewer::SavePictureHeight ( const TString fileName,
Int_t  height,
Bool_t  pixel_object_scale = kTRUE 
)

Save picture with given height (width scaled proportionally).

If pixel_object_scale is true (default), the corresponding scaling gets calculated from the current window size.

Definition at line 1130 of file TGLViewer.cxx.

◆ SavePictureScale()

Bool_t TGLViewer::SavePictureScale ( const TString fileName,
Float_t  scale,
Bool_t  pixel_object_scale = kTRUE 
)

Save picture with given scale to current window size.

If pixel_object_scale is true (default), the same scaling is used.

Definition at line 1144 of file TGLViewer.cxx.

◆ SavePictureUsingBB()

Bool_t TGLViewer::SavePictureUsingBB ( const TString fileName)

Save current image in various formats (gif, gif+, jpg, png).

'gif+' will append image to an existing file (animated gif). Back-Buffer is used for capturing of the image. The viewer window most be fully contained within the desktop but can be covered by other windows. Returns false if something obvious goes wrong, true otherwise.

Definition at line 834 of file TGLViewer.cxx.

◆ SavePictureUsingFBO()

Bool_t TGLViewer::SavePictureUsingFBO ( const TString fileName,
Int_t  w,
Int_t  h,
Float_t  pixel_object_scale = 0 
)

Save current image in various formats (gif, gif+, jpg, png).

'gif+' will append image to an existing file (animated gif). Frame-Buffer-Object is used for capturing of the image - OpenGL 1.5 is required. The viewer window does not have to be visible at all. Returns false if something obvious goes wrong, true otherwise.

pixel_object_scale is used to scale (as much as possible) the objects whose representation size is pixel based (point-sizes, line-widths, bitmap/pixmap font-sizes). If set to 0 (default) no scaling is applied.

Definition at line 891 of file TGLViewer.cxx.

◆ SavePictureWidth()

Bool_t TGLViewer::SavePictureWidth ( const TString fileName,
Int_t  width,
Bool_t  pixel_object_scale = kTRUE 
)

Save picture with given width (height scaled proportionally).

If pixel_object_scale is true (default), the corresponding scaling gets calculated from the current window size.

Definition at line 1116 of file TGLViewer.cxx.

◆ SelectionChanged()

void TGLViewer::SelectionChanged ( )
virtual

Update GUI components for embedded viewer selection change.

Reimplemented in TGLSAViewer.

Definition at line 2255 of file TGLViewer.cxx.

◆ SetAutoRotator()

void TGLViewer::SetAutoRotator ( TGLAutoRotator ar)

Set the auto-rotator for this viewer. The old rotator is deleted.

Definition at line 2019 of file TGLViewer.cxx.

◆ SetAxisLabelScale()

void TGLViewer::SetAxisLabelScale ( Float_t  als)
static

Sets static scaling facor that allows simple guide axies to have label values scaled relative to actual scene dimensions.

This is set to 1 in static initialization.

Definition at line 1711 of file TGLViewer.cxx.

◆ SetCameraOverlay()

void TGLViewer::SetCameraOverlay ( TGLCameraOverlay m)
inline

Definition at line 283 of file TGLViewer.h.

◆ SetClearColor()

void TGLViewer::SetClearColor ( Color_t  col)

Set background method.

Deprecated method - set background color in the color-set.

Definition at line 1672 of file TGLViewer.cxx.

◆ SetClipAutoUpdate()

void TGLViewer::SetClipAutoUpdate ( Bool_t  x)
inline

Definition at line 265 of file TGLViewer.h.

◆ SetCurrentCamera()

void TGLViewer::SetCurrentCamera ( ECameraType  camera)

Set current active camera - 'cameraType' one of: kCameraPerspX, kCameraPerspY, kCameraPerspZ, kCameraOrthoXOY, kCameraOrthoXOZ, kCameraOrthoZOY, kCameraOrthoXnOY, kCameraOrthoXnOZ, kCameraOrthoZnOY.

Definition at line 1802 of file TGLViewer.cxx.

◆ SetDrawCameraCenter()

void TGLViewer::SetDrawCameraCenter ( Bool_t  x)

Draw camera look at and rotation point.

Definition at line 2084 of file TGLViewer.cxx.

◆ SetEventHandler()

void TGLViewer::SetEventHandler ( TGEventHandler handler)
virtual

Set the event-handler.

The event-handler is owned by the viewer. If GLWidget is set, the handler is propagated to it.

If called with handler=0, the current handler will be deleted (also from TGLWidget).

Definition at line 2301 of file TGLViewer.cxx.

◆ SetFader()

void TGLViewer::SetFader ( Float_t  x)
inline

Definition at line 350 of file TGLViewer.h.

◆ SetGedEditor()

virtual void TGLViewer::SetGedEditor ( TGedEditor ed)
inlinevirtual

Definition at line 382 of file TGLViewer.h.

◆ SetGuideState()

void TGLViewer::SetGuideState ( Int_t  axesType,
Bool_t  axesDepthTest,
Bool_t  referenceOn,
const Double_t referencePos 
)

Set the state of guides (axes & reference markers) from arguments.

Definition at line 2069 of file TGLViewer.cxx.

◆ SetIgnoreSizesOnUpdate()

void TGLViewer::SetIgnoreSizesOnUpdate ( Bool_t  v)
inline

Definition at line 356 of file TGLViewer.h.

◆ SetLineScale()

void TGLViewer::SetLineScale ( Float_t  s)
inline

Definition at line 256 of file TGLViewer.h.

◆ SetMaxSceneDrawTimeHQ()

void TGLViewer::SetMaxSceneDrawTimeHQ ( Float_t  t)
inline

Definition at line 310 of file TGLViewer.h.

◆ SetMaxSceneDrawTimeLQ()

void TGLViewer::SetMaxSceneDrawTimeLQ ( Float_t  t)
inline

Definition at line 311 of file TGLViewer.h.

◆ SetOrthoCamera()

void TGLViewer::SetOrthoCamera ( ECameraType  camera,
Double_t  zoom,
Double_t  dolly,
Double_t  center[3],
Double_t  hRotate,
Double_t  vRotate 
)

Set an orthographic camera to supplied configuration - note this does not need to be the current camera - though you will not see the effect if it is not.

'camera' defines the ortho camera - one of kCameraOrthoXOY / XOZ / ZOY 'left' / 'right' / 'top' / 'bottom' define the WORLD coordinates which correspond with the left/right/top/bottom positions on the GL viewer viewport E.g. for kCameraOrthoXOY camera left/right are X world coords, top/bottom are Y world coords As this is an orthographic camera the other axis (in eye direction) is no relevant. The near/far clip planes are set automatically based in scene contents

Definition at line 1902 of file TGLViewer.cxx.

◆ SetPerspectiveCamera()

void TGLViewer::SetPerspectiveCamera ( ECameraType  camera,
Double_t  fov,
Double_t  dolly,
Double_t  center[3],
Double_t  hRotate,
Double_t  vRotate 
)

Set a perspective camera to supplied configuration - note this does not need to be the current camera - though you will not see the effect if it is not.

  • 'camera' defines the persp camera - one of kCameraPerspXOZ, kCameraPerspYOZ, kCameraPerspXOY
  • 'fov' - field of view (lens angle) in degrees (clamped to 0.1 - 170.0)
  • 'dolly' - distance from 'center'
  • 'center' - world position from which dolly/hRotate/vRotate are measured camera rotates round this, always facing in (in center of viewport)
  • 'hRotate' - horizontal rotation from initial configuration in radians
  • 'vRotate' - vertical rotation from initial configuration in radians

Definition at line 1957 of file TGLViewer.cxx.

◆ SetPictureFileName()

void TGLViewer::SetPictureFileName ( const TString f)
inline

Definition at line 348 of file TGLViewer.h.

◆ SetPointScale()

void TGLViewer::SetPointScale ( Float_t  s)
inline

Definition at line 255 of file TGLViewer.h.

◆ SetResetCamerasOnUpdate()

void TGLViewer::SetResetCamerasOnUpdate ( Bool_t  v)
inline

Definition at line 359 of file TGLViewer.h.

◆ SetSmartRefresh()

void TGLViewer::SetSmartRefresh ( Bool_t  smart_ref)
inline

Definition at line 230 of file TGLViewer.h.

◆ SetSmoothLines()

void TGLViewer::SetSmoothLines ( Bool_t  s)
inline

Definition at line 260 of file TGLViewer.h.

◆ SetSmoothPoints()

void TGLViewer::SetSmoothPoints ( Bool_t  s)
inline

Definition at line 259 of file TGLViewer.h.

◆ SetStereo()

void TGLViewer::SetStereo ( Bool_t  stereo,
Bool_t  quad_buf = kTRUE 
)

Enable stereo rendering.

If quad_buf is true rendering is done into separate left and right GL buffers. This requires hardware support. Otherwise left and right images get rendered into left and right half of the window. Note that mouse highlighting and selection will not work exactly right as image for each eye gets slightly shifted and there are two different directions through the mouse pointer, one for each eye.

Definition at line 2034 of file TGLViewer.cxx.

◆ SetStereoEyeOffsetFac()

void TGLViewer::SetStereoEyeOffsetFac ( Float_t  f)
inline

Definition at line 295 of file TGLViewer.h.

◆ SetStereoFrustumAsymFac()

void TGLViewer::SetStereoFrustumAsymFac ( Float_t  f)
inline

Definition at line 296 of file TGLViewer.h.

◆ SetStereoZeroParallax()

void TGLViewer::SetStereoZeroParallax ( Float_t  f)
inline

Definition at line 294 of file TGLViewer.h.

◆ SetupCameras()

void TGLViewer::SetupCameras ( Bool_t  reset)
protected

Setup cameras for current bounding box.

Definition at line 367 of file TGLViewer.cxx.

◆ SetupClipObject()

void TGLViewer::SetupClipObject ( )
overrideprotectedvirtual

allow simple guide axes labels to be scaled relative to scene units

Setup clip-object. Protected virtual method.

Reimplemented from TGLViewerBase.

Definition at line 468 of file TGLViewer.cxx.

◆ SetViewport() [1/2]

void TGLViewer::SetViewport ( const TGLRect vp)
protected

Definition at line 1750 of file TGLViewer.cxx.

◆ SetViewport() [2/2]

void TGLViewer::SetViewport ( Int_t  x,
Int_t  y,
Int_t  width,
Int_t  height 
)
protected

Set viewer viewport (window area) with bottom/left at (x,y), with dimensions 'width'/'height'.

Definition at line 1732 of file TGLViewer.cxx.

◆ Streamer()

void TGLViewer::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TObject.

◆ StreamerNVirtual()

void TGLViewer::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 395 of file TGLViewer.h.

◆ SwapBuffers()

void TGLViewer::SwapBuffers ( ) const
protected

Swap GL buffers.

Definition at line 1288 of file TGLViewer.cxx.

◆ SwitchColorSet()

void TGLViewer::SwitchColorSet ( )

Switch between dark and light colorsets.

Definition at line 1633 of file TGLViewer.cxx.

◆ UnClicked()

void TGLViewer::UnClicked ( TObject obj,
UInt_t  button,
UInt_t  state 
)
virtual

Emit UnClicked signal with button id and modifier state.

Definition at line 2191 of file TGLViewer.cxx.

◆ UnMouseOver()

void TGLViewer::UnMouseOver ( TObject obj,
UInt_t  state 
)
virtual

Emit UnMouseOver signal.

Definition at line 2147 of file TGLViewer.cxx.

◆ UpdateScene()

void TGLViewer::UpdateScene ( Bool_t  redraw = kTRUE)

Force update of pad-scenes.

Eventually this could be generalized to all scene-types via a virtual function in TGLSceneBase.

Definition at line 336 of file TGLViewer.cxx.

◆ UseDarkColorSet()

void TGLViewer::UseDarkColorSet ( )

Use the dark color-set.

Definition at line 1615 of file TGLViewer.cxx.

◆ UseDefaultColorSet()

void TGLViewer::UseDefaultColorSet ( Bool_t  x)

Set usage of the default color set.

Definition at line 1650 of file TGLViewer.cxx.

◆ UseDefaultColorSetForNewViewers()

void TGLViewer::UseDefaultColorSetForNewViewers ( Bool_t  x)
static

Sets static flag that determines if new viewers should use the default color-set.

This is false at startup.

Definition at line 1691 of file TGLViewer.cxx.

◆ UseLightColorSet()

void TGLViewer::UseLightColorSet ( )

Use the light color-set.

Definition at line 1624 of file TGLViewer.cxx.

◆ ViewportDiagonal()

Int_t TGLViewer::ViewportDiagonal ( ) const
inline

Definition at line 251 of file TGLViewer.h.

Friends And Related Symbol Documentation

◆ TGLAutoRotator

friend class TGLAutoRotator
friend

Definition at line 58 of file TGLViewer.h.

◆ TGLEventHandler

friend class TGLEventHandler
friend

Definition at line 57 of file TGLViewer.h.

◆ TGLOutput

friend class TGLOutput
friend

Definition at line 56 of file TGLViewer.h.

Member Data Documentation

◆ fAutoRotator

TGLAutoRotator* TGLViewer::fAutoRotator
protected

Definition at line 97 of file TGLViewer.h.

◆ fAxesDepthTest

Bool_t TGLViewer::fAxesDepthTest
protected

axes type

Definition at line 147 of file TGLViewer.h.

◆ fAxesType

Int_t TGLViewer::fAxesType
protected

smooth line edge rendering

Definition at line 146 of file TGLViewer.h.

◆ fCameraOverlay

TGLCameraOverlay* TGLViewer::fCameraOverlay
protected

reference marker on?

Definition at line 151 of file TGLViewer.h.

◆ fClipSet

TGLClipSet* TGLViewer::fClipSet
protected

Definition at line 109 of file TGLViewer.h.

◆ fContextMenu

TContextMenu* TGLViewer::fContextMenu
protected

external pad - remove replace with signal

Definition at line 81 of file TGLViewer.h.

◆ fCurrentCamera

TGLCamera* TGLViewer::fCurrentCamera
protected

Definition at line 96 of file TGLViewer.h.

◆ fCurrentOvlElm

TGLOverlayElement* TGLViewer::fCurrentOvlElm
protected

Definition at line 116 of file TGLViewer.h.

◆ fCurrentSelRec

TGLSelectRecord TGLViewer::fCurrentSelRec
protected

Definition at line 111 of file TGLViewer.h.

◆ fDarkColorSet

TGLColorSet TGLViewer::fDarkColorSet
protected

viewport - drawn area

Definition at line 140 of file TGLViewer.h.

◆ fDebugMode

Bool_t TGLViewer::fDebugMode
protected

cache logicals during scene rebuilds

Definition at line 156 of file TGLViewer.h.

◆ fDragAction

EDragAction TGLViewer::fDragAction
protected

Definition at line 132 of file TGLViewer.h.

◆ fDrawCameraCenter

Bool_t TGLViewer::fDrawCameraCenter
protected

reference position

Definition at line 150 of file TGLViewer.h.

◆ fEventHandler

TGEventHandler* TGLViewer::fEventHandler
protected

select record from last overlay select

Definition at line 119 of file TGLViewer.h.

◆ fFader

Float_t TGLViewer::fFader
protected

default file-name for SavePicture()

Definition at line 159 of file TGLViewer.h.

◆ fgAxisLabelScale

Float_t TGLViewer::fgAxisLabelScale = 1
staticprotected

name says it all

Definition at line 163 of file TGLViewer.h.

◆ fgDefaultColorSet

TGLColorSet TGLViewer::fgDefaultColorSet
staticprotected

fade the view (0 - no fade/default, 1 - full fade/no rendering done)

Definition at line 161 of file TGLViewer.h.

◆ fGedEditor

TGedEditor* TGLViewer::fGedEditor
protected

event handler

Definition at line 120 of file TGLViewer.h.

◆ fGLCtxId

TGLContextIdentity* TGLViewer::fGLCtxId
protected

for embedded gl viewer

Definition at line 187 of file TGLViewer.h.

◆ fGLDevice

Int_t TGLViewer::fGLDevice
protected

Definition at line 186 of file TGLViewer.h.

◆ fGLWidget

TGLWidget* TGLViewer::fGLWidget
protected

Definition at line 185 of file TGLViewer.h.

◆ fgUseDefaultColorSetForNewViewers

Bool_t TGLViewer::fgUseDefaultColorSetForNewViewers = kFALSE
staticprotected

a shared, default color-set

Definition at line 162 of file TGLViewer.h.

◆ fIgnoreSizesOnUpdate

Bool_t TGLViewer::fIgnoreSizesOnUpdate
protected

for embedded gl viewer

Definition at line 190 of file TGLViewer.h.

◆ fIsPrinting

Bool_t TGLViewer::fIsPrinting
protected

debug mode (forced rebuild + draw scene/frustum/interest boxes)

Definition at line 157 of file TGLViewer.h.

◆ fLightColorSet

TGLColorSet TGLViewer::fLightColorSet
protected

color-set with dark background

Definition at line 141 of file TGLViewer.h.

◆ fLightSet

TGLLightSet* TGLViewer::fLightSet
protected

Definition at line 107 of file TGLViewer.h.

◆ fLineScale

Float_t TGLViewer::fLineScale
protected

size scale for points

Definition at line 143 of file TGLViewer.h.

◆ fMaxSceneDrawTimeHQ

Float_t TGLViewer::fMaxSceneDrawTimeHQ
protected

timer for triggering redraws

Definition at line 136 of file TGLViewer.h.

◆ fMaxSceneDrawTimeLQ

Float_t TGLViewer::fMaxSceneDrawTimeLQ
protected

max time for scene rendering at high LOD (in ms)

Definition at line 137 of file TGLViewer.h.

◆ fOrthoXnOYCamera

TGLOrthoCamera TGLViewer::fOrthoXnOYCamera
protected

Definition at line 92 of file TGLViewer.h.

◆ fOrthoXnOZCamera

TGLOrthoCamera TGLViewer::fOrthoXnOZCamera
protected

Definition at line 93 of file TGLViewer.h.

◆ fOrthoXOYCamera

TGLOrthoCamera TGLViewer::fOrthoXOYCamera
protected

Definition at line 88 of file TGLViewer.h.

◆ fOrthoXOZCamera

TGLOrthoCamera TGLViewer::fOrthoXOZCamera
protected

Definition at line 89 of file TGLViewer.h.

◆ fOrthoZnOXCamera

TGLOrthoCamera TGLViewer::fOrthoZnOXCamera
protected

Definition at line 95 of file TGLViewer.h.

◆ fOrthoZnOYCamera

TGLOrthoCamera TGLViewer::fOrthoZnOYCamera
protected

Definition at line 94 of file TGLViewer.h.

◆ fOrthoZOXCamera

TGLOrthoCamera TGLViewer::fOrthoZOXCamera
protected

Definition at line 91 of file TGLViewer.h.

◆ fOrthoZOYCamera

TGLOrthoCamera TGLViewer::fOrthoZOYCamera
protected

Definition at line 90 of file TGLViewer.h.

◆ fOvlSelRec

TGLOvlSelectRecord TGLViewer::fOvlSelRec
protected

current overlay element

Definition at line 117 of file TGLViewer.h.

◆ fPad

TVirtualPad* TGLViewer::fPad
protected

Definition at line 78 of file TGLViewer.h.

◆ fPerspectiveCameraXOY

TGLPerspectiveCamera TGLViewer::fPerspectiveCameraXOY
protected

Definition at line 87 of file TGLViewer.h.

◆ fPerspectiveCameraXOZ

TGLPerspectiveCamera TGLViewer::fPerspectiveCameraXOZ
protected

Definition at line 85 of file TGLViewer.h.

◆ fPerspectiveCameraYOZ

TGLPerspectiveCamera TGLViewer::fPerspectiveCameraYOZ
protected

Definition at line 86 of file TGLViewer.h.

◆ fPictureFileName

TString TGLViewer::fPictureFileName
protected

Definition at line 158 of file TGLViewer.h.

◆ fPointScale

Float_t TGLViewer::fPointScale
protected

color-set with light background

Definition at line 142 of file TGLViewer.h.

◆ fPShapeWrap

TGLPShapeObj* TGLViewer::fPShapeWrap
protected

GED editor.

Definition at line 121 of file TGLViewer.h.

◆ fPushAction

EPushAction TGLViewer::fPushAction
protected

Definition at line 131 of file TGLViewer.h.

◆ fRedrawTimer

TGLRedrawTimer* TGLViewer::fRedrawTimer
protected

Definition at line 135 of file TGLViewer.h.

◆ fReferenceOn

Bool_t TGLViewer::fReferenceOn
protected

remove guides hidden-lines

Definition at line 148 of file TGLViewer.h.

◆ fReferencePos

TGLVertex3 TGLViewer::fReferencePos
protected

reference marker on?

Definition at line 149 of file TGLViewer.h.

◆ fResetCamerasOnNextUpdate

Bool_t TGLViewer::fResetCamerasOnNextUpdate
protected

Definition at line 192 of file TGLViewer.h.

◆ fResetCamerasOnUpdate

Bool_t TGLViewer::fResetCamerasOnUpdate
protected

Definition at line 191 of file TGLViewer.h.

◆ fSecSelRec

TGLSelectRecord TGLViewer::fSecSelRec
protected

select record from last select (should go to context)

Definition at line 113 of file TGLViewer.h.

◆ fSelectedPShapeRef

TGLManipSet* TGLViewer::fSelectedPShapeRef
protected

select record from last secondary select (should go to context)

Definition at line 114 of file TGLViewer.h.

◆ fSelRec

TGLSelectRecord TGLViewer::fSelRec
protected

select record in use as selected

Definition at line 112 of file TGLViewer.h.

◆ fSmartRefresh

Bool_t TGLViewer::fSmartRefresh
protected

markup size of viewport in scene units

Definition at line 153 of file TGLViewer.h.

◆ fSmoothLines

Bool_t TGLViewer::fSmoothLines
protected

smooth point edge rendering

Definition at line 145 of file TGLViewer.h.

◆ fSmoothPoints

Bool_t TGLViewer::fSmoothPoints
protected

width scale for lines

Definition at line 144 of file TGLViewer.h.

◆ fStereo

Bool_t TGLViewer::fStereo
protected

Definition at line 100 of file TGLViewer.h.

◆ fStereoEyeOffsetFac

Float_t TGLViewer::fStereoEyeOffsetFac
protected

position of zero-parallax plane: 0 - near clipping plane, 1 - far clipping plane

Definition at line 103 of file TGLViewer.h.

◆ fStereoFrustumAsymFac

Float_t TGLViewer::fStereoFrustumAsymFac
protected

Definition at line 104 of file TGLViewer.h.

◆ fStereoQuadBuf

Bool_t TGLViewer::fStereoQuadBuf
protected

use stereo rendering

Definition at line 101 of file TGLViewer.h.

◆ fStereoZeroParallax

Float_t TGLViewer::fStereoZeroParallax
protected

draw quad buffer or left/right stereo in left/right half of window

Definition at line 102 of file TGLViewer.h.

◆ fViewport

TGLRect TGLViewer::fViewport
protected

max time for scene rendering at high LOD (in ms)

Definition at line 139 of file TGLViewer.h.

Libraries for TGLViewer:

The documentation for this class was generated from the following files: