A++ » INCLUDE » TGLUtil

class TGLUtil


TGLVertex3

3 component (x/y/z) vertex class

 This is part of collection of utility classes for GL in TGLUtil.h/cxx
These provide const and non-const accessors Arr() / CArr() to a GL
 compatible internal field - so can be used directly with OpenGL C API
calls. They are not intended to be fully featured just provide
minimum required.

Function Members (Methods)

public:
virtual~TGLUtil()
static voidBeginAttLine(const TAttLine& aline, Char_t transp, Int_t pick_radius = 0, Bool_t selection = kFALSE)
static voidBeginExtendPickRegion(Float_t scale)
static Int_tCheckError(const char* loc)
static TClass*Class()
static voidColor(const TGLColor& color)
static voidColor3f(Float_t r, Float_t g, Float_t b)
static voidColor3fv(const Float_t* rgb)
static voidColor3ub(UChar_t r, UChar_t g, UChar_t b)
static voidColor3ubv(const UChar_t* rgb)
static voidColor4f(Float_t r, Float_t g, Float_t b, Float_t a)
static voidColor4fv(const Float_t* rgba)
static voidColor4ub(UChar_t r, UChar_t g, UChar_t b, UChar_t a)
static voidColor4ubv(const UChar_t* rgba)
static voidColorAlpha(const TGLColor& color, UChar_t alpha)
static voidColorAlpha(const TGLColor& color, Float_t alpha)
static voidColorAlpha(Color_t color_index, Float_t alpha = 1)
static voidColorTransparency(Color_t color_index, Char_t transparency = 0)
static voidDrawLine(const TGLLine3& line, TGLUtil::ELineHeadShape head, Double_t size, const UChar_t[4] rgba)
static voidDrawLine(const TGLVertex3& start, const TGLVector3& vector, TGLUtil::ELineHeadShape head, Double_t size, const UChar_t[4] rgba)
static voidDrawNumber(const TString& num, const TGLVertex3& pos, Bool_t center = kFALSE)
static voidDrawReferenceMarker(const TGLCamera& camera, const TGLVertex3& pos, Float_t radius = 3, const UChar_t* rgba = 0)
static voidDrawRing(const TGLVertex3& center, const TGLVector3& normal, Double_t radius, const UChar_t* rgba)
static voidDrawSimpleAxes(const TGLCamera& camera, const TGLBoundingBox& bbox, Int_t axesType)
static voidDrawSphere(const TGLVertex3& position, Double_t radius, const UChar_t[4] rgba)
static voidEndAttLine(Int_t pick_radius = 0, Bool_t selection = kFALSE)
static voidEndExtendPickRegion()
static UInt_tGetDefaultDrawQuality()
static UInt_tGetDrawQuality()
static GLUtesselator*GetDrawTesselator3dv()
static GLUtesselator*GetDrawTesselator3fv()
static GLUtesselator*GetDrawTesselator4dv()
static GLUtesselator*GetDrawTesselator4fv()
static Float_tGetLineWidthScale()
static Int_tGetPickingRadius()
static Float_tGetPointLineScalingFactor()
static Float_tGetPointSizeScale()
static Float_tGetScreenScalingFactor()
static voidInitializeIfNeeded()
virtual TClass*IsA() const
static Bool_tIsColorLocked()
static Float_tLineWidth()
static voidLineWidth(Float_t line_width)
static UInt_tLockColor()
static Float_tPointSize()
static voidPointSize(Float_t point_size)
static voidPointToViewport(Int_t& x, Int_t& y)
static voidPointToViewport(Int_t& x, Int_t& y, Int_t& w, Int_t& h)
static voidRenderCrosses(const TAttMarker& marker, Float_t* p, Int_t n, Bool_t sec_selection = kFALSE)
static voidRenderCrosses(const TAttMarker& marker, const vector<Double_t>& points, Double_t dX, Double_t dY, Double_t dZ)
static voidRenderPoints(const TAttMarker& marker, const vector<Double_t>& points)
static voidRenderPoints(const TAttMarker& marker, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE, Bool_t sec_selection = kFALSE)
static voidRenderPolyLine(const TAttLine& aline, Char_t transp, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE)
static voidRenderPolyMarkers(const TAttMarker& marker, const vector<Double_t>& points, Double_t dX, Double_t dY, Double_t dZ)
static voidRenderPolyMarkers(const TAttMarker& marker, Char_t transp, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE, Bool_t sec_selection = kFALSE)
static voidResetDrawQuality()
static voidSetDefaultDrawQuality(UInt_t dq)
static voidSetDrawColors(const UChar_t[4] rgba)
static voidSetDrawQuality(UInt_t dq)
static voidSetLineWidthScale(Float_t scale)
static voidSetPointSizeScale(Float_t scale)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
static UInt_tUnlockColor()
private:
TGLUtil&operator=(const TGLUtil&)
TGLUtil(const TGLUtil&)

Data Members

public:
static const UChar_tfgBlue[4]
static const UChar_tfgGreen[4]
static const UChar_tfgGrey[4]
static const UChar_tfgRed[4]
static const UChar_tfgWhite[4]
static const UChar_tfgYellow[4]
static TGLUtil::EAxesTypekAxesEdge
static TGLUtil::EAxesTypekAxesNone
static TGLUtil::EAxesTypekAxesOrigin
static TGLUtil::ELineHeadShapekLineHeadArrow
static TGLUtil::ELineHeadShapekLineHeadBox
static TGLUtil::ELineHeadShapekLineHeadNone
private:
static UInt_tfgColorLockCount
static UInt_tfgDefaultDrawQuality
static UInt_tfgDrawQuality
static Float_tfgLineWidth
static Float_tfgLineWidthScale
static Int_tfgPickingRadius
static Float_tfgPointLineScalingFactor
static Float_tfgPointSize
static Float_tfgPointSizeScale
static Float_tfgScreenScalingFactor

Class Charts

Inheritance Chart:
TGLUtil

Function documentation

TGLColor& operator=(const TGLUtil& )
TGLUtil(const TGLUtil& )
virtual ~TGLUtil()
{}
void InitializeIfNeeded()
Int_t CheckError(const char* loc)
 Error checking
GLUtesselator* GetDrawTesselator3fv()
 Polygon tesselator for direct drawing
GLUtesselator* GetDrawTesselator4fv()
GLUtesselator* GetDrawTesselator3dv()
GLUtesselator* GetDrawTesselator4dv()
UInt_t GetDrawQuality()
void SetDrawQuality(UInt_t dq)
void ResetDrawQuality()
UInt_t GetDefaultDrawQuality()
void SetDefaultDrawQuality(UInt_t dq)
UInt_t LockColor()
UInt_t UnlockColor()
Bool_t IsColorLocked()
void Color(const TGLColor& color)
void ColorAlpha(const TGLColor& color, UChar_t alpha)
void ColorAlpha(const TGLColor& color, Float_t alpha)
void ColorAlpha(Color_t color_index, Float_t alpha = 1)
void ColorTransparency(Color_t color_index, Char_t transparency = 0)
void Color3ub(UChar_t r, UChar_t g, UChar_t b)
void Color4ub(UChar_t r, UChar_t g, UChar_t b, UChar_t a)
void Color3ubv(const UChar_t* rgb)
void Color4ubv(const UChar_t* rgba)
void Color3f(Float_t r, Float_t g, Float_t b)
void Color4f(Float_t r, Float_t g, Float_t b, Float_t a)
void Color3fv(const Float_t* rgb)
void Color4fv(const Float_t* rgba)
void PointToViewport(Int_t& x, Int_t& y)
 Coordinate conversion and extra scaling (needed for osx retina)
void PointToViewport(Int_t& x, Int_t& y, Int_t& w, Int_t& h)
Float_t GetScreenScalingFactor()
Float_t GetPointLineScalingFactor()
Int_t GetPickingRadius()
Float_t GetPointSizeScale()
void SetPointSizeScale(Float_t scale)
Float_t GetLineWidthScale()
void SetLineWidthScale(Float_t scale)
void PointSize(Float_t point_size)
void LineWidth(Float_t line_width)
Float_t PointSize()
Float_t LineWidth()
void BeginExtendPickRegion(Float_t scale)
void EndExtendPickRegion()
void RenderPolyMarkers(const TAttMarker& marker, Char_t transp, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE, Bool_t sec_selection = kFALSE)
void RenderPoints(const TAttMarker& marker, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE, Bool_t sec_selection = kFALSE)
void RenderCrosses(const TAttMarker& marker, Float_t* p, Int_t n, Bool_t sec_selection = kFALSE)
void RenderPolyLine(const TAttLine& aline, Char_t transp, Float_t* p, Int_t n, Int_t pick_radius = 0, Bool_t selection = kFALSE)
void EndAttLine(Int_t pick_radius = 0, Bool_t selection = kFALSE)
void SetDrawColors(const UChar_t[4] rgba)
 TODO: These draw routines should take LOD hints
void DrawSphere(const TGLVertex3& position, Double_t radius, const UChar_t[4] rgba)
void DrawLine(const TGLLine3& line, TGLUtil::ELineHeadShape head, Double_t size, const UChar_t[4] rgba)
void DrawLine(const TGLVertex3& start, const TGLVector3& vector, TGLUtil::ELineHeadShape head, Double_t size, const UChar_t[4] rgba)
void DrawReferenceMarker(const TGLCamera& camera, const TGLVertex3& pos, Float_t radius = 3, const UChar_t* rgba = 0)
void DrawNumber(const TString& num, const TGLVertex3& pos, Bool_t center = kFALSE)
 Frequently used colors.