ROOT
6.06/09
Reference Guide
|
OpenGL renderer class for TEveProjectionAxes.
Definition at line 21 of file TEveProjectionAxesGL.h.
Public Member Functions | |
TEveProjectionAxesGL () | |
Constructor. More... | |
virtual | ~TEveProjectionAxesGL () |
virtual Bool_t | SetModel (TObject *obj, const Option_t *opt=0) |
Set model object. More... | |
virtual void | SetBBox () |
Fill the bounding-box data of the logical-shape. More... | |
virtual void | Draw (TGLRnrCtx &rnrCtx) const |
Draw function for TEveProjectionAxesGL. Skips line-pass of outline mode. More... | |
virtual void | DirectDraw (TGLRnrCtx &rnrCtx) const |
Actual rendering code. More... | |
Bool_t | IgnoreSizeForOfInterest () const |
Return true if size of this shape should be ignored when determining if the object should be drawn. More... | |
ClassDef (TEveProjectionAxesGL, 0) | |
Public Member Functions inherited from TGLObject | |
TGLObject () | |
virtual | ~TGLObject () |
virtual Bool_t | ShouldDLCache (const TGLRnrCtx &rnrCtx) const |
Decide if display-list should be used for this pass rendering, as determined by rnrCtx. More... | |
virtual Bool_t | KeepDuringSmartRefresh () const |
virtual void | UpdateBoundingBox () |
Update bounding box from external source. More... | |
ClassDef (TGLObject, 0) | |
Public Member Functions inherited from TGLLogicalShape | |
TGLLogicalShape () | |
Constructor. More... | |
TGLLogicalShape (TObject *obj) | |
Constructor with external object. More... | |
TGLLogicalShape (const TBuffer3D &buffer) | |
Constructor from TBuffer3D. More... | |
virtual | ~TGLLogicalShape () |
Destroy logical shape. More... | |
UInt_t | Ref () const |
void | AddRef (TGLPhysicalShape *phys) const |
Add reference to given physical shape. More... | |
void | SubRef (TGLPhysicalShape *phys) const |
Remove reference to given physical shape, potentially deleting this object when hitting zero ref-count (if fRefStrong is true). More... | |
void | StrongRef (Bool_t strong) const |
void | DestroyPhysicals () |
Destroy all physicals attached to this logical. More... | |
UInt_t | UnrefFirstPhysical () |
Unreferenced first physical in the list, returning its id and making it fit for destruction somewhere else. More... | |
const TGLPhysicalShape * | GetFirstPhysical () const |
TObject * | ID () const |
TObject * | GetExternal () const |
TGLScene * | GetScene () const |
const TGLBoundingBox & | BoundingBox () const |
void | UpdateBoundingBoxesOfPhysicals () |
Update bounding-boxed of all dependent physicals. More... | |
Bool_t | SetDLCache (Bool_t cached) |
Modify capture of draws into display list cache kTRUE - capture, kFALSE direct draw. More... | |
virtual UInt_t | DLOffset (Short_t) const |
virtual void | DLCacheClear () |
Clear all entries for all LODs for this drawable from the display list cache but keeping the reserved ids from GL context. More... | |
virtual void | DLCacheDrop () |
Drop all entries for all LODs for this drawable from the display list cache, WITHOUT returning the reserved ids to GL context. More... | |
virtual void | DLCachePurge () |
Purge all entries for all LODs for this drawable from the display list cache, returning the reserved ids to GL context. More... | |
virtual ELODAxes | SupportedLODAxes () const |
virtual Short_t | QuantizeShapeLOD (Short_t shapeLOD, Short_t combiLOD) const |
Logical shapes usually support only discreet LOD values, especially in view of display-list caching. More... | |
virtual void | DrawHighlight (TGLRnrCtx &rnrCtx, const TGLPhysicalShape *pshp, Int_t lvl=-1) const |
Draw the logical shape in highlight mode. More... | |
virtual Bool_t | SupportsSecondarySelect () const |
virtual Bool_t | AlwaysSecondarySelect () const |
virtual void | ProcessSelection (TGLRnrCtx &rnrCtx, TGLSelectRecord &rec) |
Virtual method called-back after a secondary selection hit is recorded (see TGLViewer::HandleButton(), Ctrl-Button1). More... | |
void | InvokeContextMenu (TContextMenu &menu, UInt_t x, UInt_t y) const |
Invoke popup menu or our bound external TObject (if any), using passed 'menu' object, at location 'x' 'y'. More... | |
Protected Attributes | |
TEveProjectionAxes * | fM |
TEveProjection * | fProjection |
TGLAxisPainter | fAxisPainter |
Protected Attributes inherited from TGLObject | |
Bool_t | fMultiColor |
Protected Attributes inherited from TGLLogicalShape | |
UInt_t | fRef |
TGLPhysicalShape * | fFirstPhysical |
physical instance ref counting More... | |
TObject * | fExternalObj |
first replica More... | |
TGLBoundingBox | fBoundingBox |
Also plays the role of ID. More... | |
TGLScene * | fScene |
Shape's bounding box. More... | |
UInt_t | fDLBase |
scene where object is stored (can be zero!) More... | |
Int_t | fDLSize |
display-list id base More... | |
UShort_t | fDLValid |
display-list size for different LODs More... | |
Bool_t | fDLCache |
display-list validity bit-field More... | |
Bool_t | fRefStrong |
use display list caching More... | |
Bool_t | fOwnExtObj |
Strong ref (delete on 0 ref); not in scene. More... | |
Private Member Functions | |
TEveProjectionAxesGL (const TEveProjectionAxesGL &) | |
TEveProjectionAxesGL & | operator= (const TEveProjectionAxesGL &) |
void | GetRange (Int_t ax, Float_t frustMin, Float_t frustMax, Float_t &start, Float_t &en) const |
Get range from bounding box of projection manager and frustum size. More... | |
void | SplitInterval (Float_t x1, Float_t x2, Int_t axis) const |
Build an array of tick-mark position-value pairs. More... | |
void | SplitIntervalByPos (Float_t min, Float_t max, Int_t axis) const |
Add tick-marks at equidistant position. More... | |
void | SplitIntervalByVal (Float_t min, Float_t max, Int_t axis) const |
Add tick-marks on fixed value step. More... | |
void | FilterOverlappingLabels (Int_t idx, Float_t ref) const |
Filter overlapping labels. More... | |
Additional Inherited Members | |
Public Types inherited from TGLLogicalShape | |
enum | ELODAxes { kLODAxesNone = 0, kLODAxesX = 1 << 0, kLODAxesY = 1 << 1, kLODAxesZ = 1 << 2, kLODAxesAll = kLODAxesX | kLODAxesY | kLODAxesZ } |
Static Public Member Functions inherited from TGLObject | |
static TClass * | GetGLRenderer (TClass *isa) |
Return direct-rendering GL class for class isa. More... | |
Static Public Member Functions inherited from TGLLogicalShape | |
static Bool_t | GetIgnoreSizeForCameraInterest () |
Get state of static fgIgnoreSizeForCameraInterest flag. More... | |
static void | SetIgnoreSizeForCameraInterest (Bool_t isfci) |
Set state of static fgIgnoreSizeForCameraInterest flag. More... | |
Protected Member Functions inherited from TGLObject | |
Bool_t | SetModelCheckClass (TObject *obj, TClass *cls) |
Checks if obj is of proper class and sets the model. More... | |
void | SetAxisAlignedBBox (Float_t xmin, Float_t xmax, Float_t ymin, Float_t ymax, Float_t zmin, Float_t zmax) |
Set axis-aligned bounding-box. More... | |
void | SetAxisAlignedBBox (const Float_t *p) |
Set axis-aligned bounding-box. More... | |
template<class TT > | |
TT * | SetModelDynCast (TObject *obj) |
template<class TT > | |
TT * | DynCast (TObject *obj) |
Protected Member Functions inherited from TGLLogicalShape | |
void | PurgeDLRange (UInt_t base, Int_t size) const |
External object is a fake. More... | |
Static Protected Attributes inherited from TGLLogicalShape | |
static Bool_t | fgIgnoreSizeForCameraInterest = kFALSE |
#include <TEveProjectionAxesGL.h>
|
private |
TEveProjectionAxesGL::TEveProjectionAxesGL | ( | ) |
Constructor.
Definition at line 34 of file TEveProjectionAxesGL.cxx.
|
inlinevirtual |
Definition at line 39 of file TEveProjectionAxesGL.h.
TEveProjectionAxesGL::ClassDef | ( | TEveProjectionAxesGL | , |
0 | |||
) |
Actual rendering code.
Virtual from TGLLogicalShape.
Implements TGLLogicalShape.
Definition at line 318 of file TEveProjectionAxesGL.cxx.
Draw function for TEveProjectionAxesGL. Skips line-pass of outline mode.
Reimplemented from TGLLogicalShape.
Definition at line 306 of file TEveProjectionAxesGL.cxx.
Filter overlapping labels.
Definition at line 65 of file TEveProjectionAxesGL.cxx.
Referenced by DirectDraw().
|
private |
Get range from bounding box of projection manager and frustum size.
Definition at line 273 of file TEveProjectionAxesGL.cxx.
Referenced by DirectDraw().
|
inlinevirtual |
Return true if size of this shape should be ignored when determining if the object should be drawn.
In this base-class we simply return state of static flag fgIgnoreSizeForCameraInterest.
Several sub-classes override this virtual function.
Reimplemented from TGLLogicalShape.
Definition at line 46 of file TEveProjectionAxesGL.h.
|
private |
|
virtual |
Fill the bounding-box data of the logical-shape.
Virtual from TGLObject.
Implements TGLObject.
Definition at line 57 of file TEveProjectionAxesGL.cxx.
Set model object.
Virtual from TGLObject.
Implements TGLObject.
Definition at line 46 of file TEveProjectionAxesGL.cxx.
Build an array of tick-mark position-value pairs.
Definition at line 143 of file TEveProjectionAxesGL.cxx.
Referenced by DirectDraw().
|
private |
Add tick-marks at equidistant position.
Definition at line 167 of file TEveProjectionAxesGL.cxx.
Referenced by SplitInterval().
|
private |
Add tick-marks on fixed value step.
Definition at line 215 of file TEveProjectionAxesGL.cxx.
Referenced by SplitInterval().
|
mutableprotected |
Definition at line 35 of file TEveProjectionAxesGL.h.
Referenced by DirectDraw(), FilterOverlappingLabels(), SetModel(), SplitInterval(), SplitIntervalByPos(), and SplitIntervalByVal().
|
protected |
Definition at line 33 of file TEveProjectionAxesGL.h.
Referenced by DirectDraw(), FilterOverlappingLabels(), GetRange(), SetModel(), SplitInterval(), SplitIntervalByPos(), and SplitIntervalByVal().
|
mutableprotected |
Definition at line 34 of file TEveProjectionAxesGL.h.
Referenced by DirectDraw(), SplitIntervalByPos(), and SplitIntervalByVal().