309 Error(
"TGLVector3::Normalise",
"vector has zero magnitude");
320 return v1[0]*v2[0] + v1[1]*v2[1] + v1[2]*v2[2];
327 v1[2]*v2[0] - v2[2]*v1[0],
328 v1[0]*v2[1] - v2[0]*v1[1]);
334 return TGLVector3(vec[0] / val, vec[1] / val, vec[2] / val);
340 return TGLVector3(vec[0] * val, vec[1] * val, vec[2] * val);
347 return TGLVertex3(vertex1[0] + vertex2[0], vertex1[1] + vertex2[1], vertex1[2] + vertex2[2]);
354 return TGLVector3(vertex1[0] - vertex2[0], vertex1[1] - vertex2[1], vertex1[2] - vertex2[2]);
361 return TGLVector3(vector1[0] + vector2[0], vector1[1] + vector2[1], vector1[2] + vector2[2]);
368 return TGLVector3(vector1[0] - vector2[0], vector1[1] - vector2[1], vector1[2] - vector2[2]);
375 return a[0]*
b[0] +
a[1]*
b[1] +
a[2]*
b[2];
708 res[ 0] = rhs[ 0] * lhs[ 0] + rhs[ 1] * lhs[ 4] + rhs[ 2] * lhs[ 8] + rhs[ 3] * lhs[12];
709 res[ 1] = rhs[ 0] * lhs[ 1] + rhs[ 1] * lhs[ 5] + rhs[ 2] * lhs[ 9] + rhs[ 3] * lhs[13];
710 res[ 2] = rhs[ 0] * lhs[ 2] + rhs[ 1] * lhs[ 6] + rhs[ 2] * lhs[10] + rhs[ 3] * lhs[14];
711 res[ 3] = rhs[ 0] * lhs[ 3] + rhs[ 1] * lhs[ 7] + rhs[ 2] * lhs[11] + rhs[ 3] * lhs[15];
713 res[ 4] = rhs[ 4] * lhs[ 0] + rhs[ 5] * lhs[ 4] + rhs[ 6] * lhs[ 8] + rhs[ 7] * lhs[12];
714 res[ 5] = rhs[ 4] * lhs[ 1] + rhs[ 5] * lhs[ 5] + rhs[ 6] * lhs[ 9] + rhs[ 7] * lhs[13];
715 res[ 6] = rhs[ 4] * lhs[ 2] + rhs[ 5] * lhs[ 6] + rhs[ 6] * lhs[10] + rhs[ 7] * lhs[14];
716 res[ 7] = rhs[ 4] * lhs[ 3] + rhs[ 5] * lhs[ 7] + rhs[ 6] * lhs[11] + rhs[ 7] * lhs[15];
718 res[ 8] = rhs[ 8] * lhs[ 0] + rhs[ 9] * lhs[ 4] + rhs[10] * lhs[ 8] + rhs[11] * lhs[12];
719 res[ 9] = rhs[ 8] * lhs[ 1] + rhs[ 9] * lhs[ 5] + rhs[10] * lhs[ 9] + rhs[11] * lhs[13];
720 res[10] = rhs[ 8] * lhs[ 2] + rhs[ 9] * lhs[ 6] + rhs[10] * lhs[10] + rhs[11] * lhs[14];
721 res[11] = rhs[ 8] * lhs[ 3] + rhs[ 9] * lhs[ 7] + rhs[10] * lhs[11] + rhs[11] * lhs[15];
723 res[12] = rhs[12] * lhs[ 0] + rhs[13] * lhs[ 4] + rhs[14] * lhs[ 8] + rhs[15] * lhs[12];
724 res[13] = rhs[12] * lhs[ 1] + rhs[13] * lhs[ 5] + rhs[14] * lhs[ 9] + rhs[15] * lhs[13];
725 res[14] = rhs[12] * lhs[ 2] + rhs[13] * lhs[ 6] + rhs[14] * lhs[10] + rhs[15] * lhs[14];
726 res[15] = rhs[12] * lhs[ 3] + rhs[13] * lhs[ 7] + rhs[14] * lhs[11] + rhs[15] * lhs[15];
735 C[0] =
x;
C[1] =
y;
C[2] =
z;
742 C[0] =
v[0];
C[1] =
v[1];
C[2] =
v[2];
749 C[0] =
x[0];
C[1] =
x[1];
C[2] =
x[2];
762 v[0] =
C[0];
v[1] =
C[1];
v[2] =
C[2];
769 x[0] =
C[0],
x[1] =
C[1],
x[2] =
C[2];
1008 const std::vector<Double_t> &
points);
1015 const std::vector<Double_t> &
points,
1170 return &std::vector<T>::operator [](ind *
fRowLen);
1174 return &std::vector<T>::operator [] (ind *
fRowLen);
1250 Double_t zScale, std::vector<Double_t> &zLevels);
1287 template<
class Func,
class Arg>
1304 template<
class Func,
class Arg1,
class Arg2>
1323 template<
class Func,
class Arg>
1329 template<
class Func,
class Arg1,
class Arg2>
1354 void SetContours(
const std::vector<Double_t> *contours);
1367 #endif // ROOT_TGLUtil
virtual ~TGLColor()
Destructor.
static UInt_t fgDefaultDrawQuality
const TGLColor & Outline() const
Double_t DistanceTo(const TGLVertex3 &vertex) const
Distance from plane to vertex.
static void DrawRing(const TGLVertex3 ¢er, const TGLVector3 &normal, Double_t radius, const UChar_t *rgba)
Draw ring, centered on 'center', lying on plane defined by 'center' & 'normal' of outer radius 'radiu...
std::vector< T >::size_type size_type
void SetZLevels(TAxis *zAxis, Double_t zMin, Double_t zMax, Double_t zScale, std::vector< Double_t > &zLevels)
void SetRowLen(Int_t len)
std::vector< UChar_t > fTexels
TDrawQualityModifier(Int_t dq)
Class encapsulating a set of colors used throughout standard rendering.
static GLUtesselator * GetDrawTesselator3fv()
Returns a tesselator for direct drawing when using 3-vertices with single precision.
static UInt_t fgColorLockCount
void DrawFaceTextured(const TGLVertex3 &v1, const TGLVertex3 &v2, const TGLVertex3 &v3, Double_t t1, Double_t t2, Double_t t3, const TGLVector3 &norm1, const TGLVector3 &norm2, const TGLVector3 &norm3)
Draw textured triangle.
void ReadColorBuffer(Int_t width, Int_t height)
Read color buffer.
void DrawQuadFilled(const TGLVertex3 &v0, const TGLVertex3 &v1, const TGLVertex3 &v2, const TGLVertex3 &v3, const TGLVector3 &normal)
Draw quad face.
Abstract base camera class - concrete classes for orthographic and perspective cameras derive from it...
static void Color(const TGLColor &color)
Set color from TGLColor.
TGLVertex3 operator*(Double_t f, const TGLVertex3 &v)
static double p3(double t, double a, double b, double c, double d)
Wrapper class for various misc static functions - error checking, draw helpers etc.
void SetTranslation(Double_t x, Double_t y, Double_t z)
Set matrix translation components x,y,z.
void StdLightBackground()
Set defaults for light (white) background.
static void ColorTransparency(Color_t color_index, Char_t transparency=0)
Set color from color_index and ROOT-style transparency (default 0).
static const UChar_t fgYellow[4]
Double_t Invert()
Invert the matrix, returns determinant.
virtual ~TGLLine3()
Destroy 3D line object.
const Float_t gNullEmission[]
const TGLVertex3 & operator+=(const TGLVector3 &val)
static void DrawReferenceMarker(const TGLCamera &camera, const TGLVertex3 &pos, Float_t radius=3, const UChar_t *rgba=0)
Draw a sphere- marker on world-coordinate 'pos' with pixel radius 'radius'.
void SetBaseVec(Int_t b, Double_t x, Double_t y, Double_t z)
const T * operator[](size_type ind) const
std::pair< Double_t, Double_t > Range_t
const TGLVector3 operator/(const TGLVector3 &vec, Double_t val)
16 component (4x4) transform matrix - column MAJOR as per GL.
void DrawQuadStripWithRadialGradientFill(unsigned nPoints, const Double_t *inner, const Double_t *innerRGBA, const Double_t *outer, const Double_t *outerRGBA)
TODO: is it possible to use GLdouble to avoid problems with Double_t/GLdouble if they are not the sam...
Class encapsulating color information in preferred GL format - an array of four unsigned bytes...
static void DrawLine(const TGLLine3 &line, ELineHeadShape head, Double_t size, const UChar_t rgba[4])
Draw thick line (tube) defined by 'line', with head at end shape 'head' - box/arrow/none, (head) size 'size', color 'rgba'.
TGLCapabilitySwitch & operator=(const TGLCapabilitySwitch &)
void Expand(Int_t x, Int_t y)
Expand the rect to encompass point (x,y)
static void DrawSimpleAxes(const TGLCamera &camera, const TGLBoundingBox &bbox, Int_t axesType)
Draw simple xyz-axes for given bounding-box.
TGLMatrix & operator*=(const TGLMatrix &rhs)
static void BeginAttLine(const TAttLine &aline, Char_t transp, Int_t pick_radius=0, Bool_t selection=kFALSE)
Setup drawing parameters according to passed TAttLine.
Int_t GetPaletteSize() const
Get. Palette. Size.
const TGLColor & Selection(Int_t i) const
Double_t GetTexCoord(Double_t z) const
Get tex coordinate.
std::vector< TGLPlane >::const_iterator TGLPlaneSet_ci
TGLEnableGuard & operator=(const TGLEnableGuard &)
static void Color3fv(const Float_t *rgb)
Wrapper for glColor3fv.
static UInt_t GetDrawQuality()
static: get draw quality
TGLVector3 operator-(const TGLVertex3 &vertex1, const TGLVertex3 &vertex2)
static 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)
Render markers as circular or square points.
static Float_t GetScreenScalingFactor()
Returns scaling factor between screen points and GL viewport pixels.
void TransformVertex(TGLVertex3 &vertex) const
Transform passed 'vertex' by this matrix - converts local frame to parent.
TGLRect()
Positive width/height.
void Transpose3x3()
Transpose the top left 3x3 matrix component along major diagonal Supported as currently incompatibili...
void StdDarkBackground()
Set defaults for dark (black) background.
void Set(const TGLVertex3 &start, const TGLVertex3 &end)
Set 3D line running from 'start' to 'end'.
static const UChar_t fgGrey[4]
TGLVertex3 NearestOn(const TGLVertex3 &point) const
Return nearest point on plane.
const Float_t gBlueEmission[]
Double_t & operator[](Int_t index)
virtual ~TGLPlane()
Destroy plane object.
const TGLVertex3 & Start() const
static void PointToViewport(Int_t &x, Int_t &y)
Convert from point/screen coordinates to GL viewport coordinates.
const UChar_t * GetColour(Double_t z) const
Get color.
void DrawBoxWithGradientFill(Double_t y1, Double_t y2, Double_t x1, Double_t x2, const Double_t *rgba1, const Double_t *rgba2)
static 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)
Render polymarkers at points specified by p-array.
void SetTransparency(Char_t transparency)
Set alpha from the transparency.
TGLEnableGuard(Int_t cap)
TGLEnableGuard constructor.
Bool_t ValidIndex(UInt_t index) const
Wrapper class for GLU quadric shape drawing object.
Char_t GetTransparency() const
Returns transparency value.
TGLVector3 operator-() const
~TGLCapabilitySwitch()
Destructor - reset state if changed.
void Offset(Int_t dX, Int_t dY)
void Set(Double_t x, Double_t y, Double_t z)
TGLColor & operator=(const TGLColor &c)
Assignment operator.
void DrawAxes(Int_t frontPoint, const Int_t *viewport, const TGLVertex3 *box2D, const TGLPlotCoordinates *plotCoord, TAxis *xAxis, TAxis *yAxis, TAxis *zAxis)
Using front point, find, where to draw axes and which labels to use for them gVirtualX->SelectWindow(...
void RotateIP(TGLVector3 &v) const
Rotate vector in-place. Translation is not applied.
static const UChar_t fgRed[4]
TGLMatrix()
Construct default identity matrix:
TGLVertex3()
Construct a default (0.0, 0.0, 0.0) vertex.
void DrawQuadOutline(const TGLVertex3 &v1, const TGLVertex3 &v2, const TGLVertex3 &v3, const TGLVertex3 &v4)
Draw quad outline.
TGLVertex3 operator-() const
static const double x2[5]
const Float_t gWhiteEmission[]
void Translate(const TGLVector3 &vect)
Shift matrix translation components by 'vect' in parent frame.
#define ClassDef(name, id)
const TGLVertex3 & operator-=(const TGLVector3 &val)
void Move3LF(Double_t x, Double_t y, Double_t z)
Translate in local frame along all base vectors simultaneously.
void Set(const TGLVertex3 &origin, const TGLVector3 &zAxis, const TGLVector3 &xAxis=0)
Set matrix which when applied puts local origin at 'origin' and the local Z axis in direction 'z'...
static void Color3ub(UChar_t r, UChar_t g, UChar_t b)
Wrapper for glColor3ub.
TGLVector3 fVector
Start vertex of line.
3 component (x/y/z) vertex class.
~TGLCapabilityEnabler()
Destructor - reset state if changed.
TGLVertex3 & operator=(const TGLVertex3 &rhs)
static void DrawSphere(const TGLVertex3 &position, Double_t radius, const UChar_t rgba[4])
Draw sphere, centered on vertex 'position', with radius 'radius', color 'rgba'.
static GLUtesselator * GetDrawTesselator4dv()
Returns a tesselator for direct drawing when using 4-vertices with double precision.
static Float_t GetPointSizeScale()
Get global point-size scale.
static void Color4ub(UChar_t r, UChar_t g, UChar_t b, UChar_t a)
Wrapper for glColor4ub.
const UChar_t * CArr() const
void RotateLF(Int_t i1, Int_t i2, Double_t amount)
Rotate in local frame.
void DrawTrapezoidTextured2(const Double_t ver[][2], Double_t zMin, Double_t zMax, Double_t tMin, Double_t tMax)
In polar coordinates, box became trapezoid.
Rgl::EOverlap Overlap(const TGLRect &other) const
Return overlap result (kInside, kOutside, kPartial) of this rect with 'other'.
void RotatePF(Int_t i1, Int_t i2, Double_t amount)
Rotate in parent frame. Does optimised version of MultLeft.
void EnableTexture(Int_t mode) const
Enable 1D texture.
static double p2(double t, double a, double b, double c)
Bool_t ValidIndex(UInt_t index) const
static Int_t fgPickingRadius
Viewport (pixel base) 2D rectangle class.
std::vector< UChar_t > fBuffer
const TGLVertex3 End() const
3 component (x/y/z) vector class.
std::vector< TGLPlane >::iterator TGLPlaneSet_i
TGLVector3 Multiply(const TGLVector3 &v, Double_t w=1) const
Multiply vector.
static UInt_t fgDrawQuality
static Bool_t IsColorLocked()
Returns true if color lock-count is greater than 0.
static UInt_t LockColor()
Prevent further color changes.
static UInt_t UnlockColor()
Allow color changes.
TGLSelectionBuffer()
TGLSelectionBuffer constructor.
void SetIdentity()
Set matrix to identity.
void Error(const char *location, const char *msgfmt,...)
void MultLeft(const TGLMatrix &lhs)
Multiply with matrix lhs on left.
static void SetDefaultDrawQuality(UInt_t dq)
static: set default draw quality
const Double_t * CArr() const
Int_t ColorToObjectID(const UChar_t *color, Bool_t highColor)
const UChar_t * GetPixelColor(Int_t px, Int_t py) const
Get pixel color.
static void SetPointSizeScale(Float_t scale)
Set global point-size scale.
void SetContours(const std::vector< Double_t > *contours)
Clear :)
void ObjectIDToColor(Int_t objectID, Bool_t highColor)
Object id encoded as rgb triplet.
TGLVector3 GetTranslation() const
Return the translation component of matrix.
void MultiplyIP(TGLVector3 &v, Double_t w=1) const
Multiply vector in-place.
static const UChar_t fgBlue[4]
const TGLColor & Markup() const
TGLColorSet & operator=(const TGLColorSet &s)
Assignment operator.
static Float_t fgLineWidth
void DrawBoxFront(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax, Int_t fp)
Draws lego's bar as a 3d box.
static Float_t fgPointSizeScale
void DrawError(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax)
static void EndAttLine(Int_t pick_radius=0, Bool_t selection=kFALSE)
Restore previous line drawing state.
TGLFloatHolder(const TGLFloatHolder &)
Bool_t operator==(const TGLVertex3 &rhs) const
TGuardBase & operator=(const TGuardBase &rhs)
static void SetLineWidthScale(Float_t scale)
Set global line-width scale.
void DrawSmoothFace(const TGLVertex3 &v1, const TGLVertex3 &v2, const TGLVertex3 &v3, const TGLVector3 &norm1, const TGLVector3 &norm2, const TGLVector3 &norm3)
Draws triangle face, each vertex has its own averaged normal.
Class to manage histogram axis.
static void InitializeIfNeeded()
Initialize globals that require other libraries to be initialized.
void Dump() const
Output 16 matrix components to std::cout.
const Float_t gGreenEmission[]
const Float_t gRedEmission[]
static const UChar_t fgWhite[4]
static GLUtesselator * GetDrawTesselator4fv()
Returns a tesselator for direct drawing when using 4-vertices with single precision.
TOneArgGuard< Func, Arg > make_guard(Func f, Arg a)
std::pair< Int_t, Int_t > BinRange_t
TGLFloatHolder & operator=(const TGLFloatHolder &)
TGLColorSet()
Constructor. Sets default for dark background.
TDrawQualityScaler(Float_t fac)
TGLCapabilityEnabler & operator=(const TGLCapabilityEnabler &)
static void Color4f(Float_t r, Float_t g, Float_t b, Float_t a)
Wrapper for glColor4f.
const Float_t gGrayEmission[]
Helper class for plot-painters holding information about axis ranges, numbers of bins and flags if ce...
const Double_t * CArr() const
void Minimum(const TGLVertex3 &other)
static void DrawNumber(const TString &num, const TGLVertex3 &pos, Bool_t center=kFALSE)
Draw number in string 'num' via internal 8x8-pixel bitmap on vertex 'pos'.
const TGLColor & Background() const
const TGLVector3 & Vector() const
TGLUtil & operator=(const TGLUtil &)
static void Color4fv(const Float_t *rgba)
Wrapper for glColor4fv.
3D space, fixed length, line class, with direction / length 'vector', passing through point 'vertex'...
static Float_t PointSize()
Get the point-size, taking the global scaling into account.
void Dump() const
Output plane equation to std::out.
static double p1(double t, double a, double b)
~TGLDisableGuard()
TGLDisableGuard destructor.
TGLPlane()
Construct a default plane of x + y + z = 0.
void DrawTransparentBox(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax, Int_t fp)
Draws lego's bar as a 3d box.
TGLColor()
Default constructor. Color is initialized to black.
Int_t Diagonal() const
Return the diagonal of the rectangle.
TGLVector3 & operator=(const TGLVertex3 &v)
static const UChar_t fgGreen[4]
static void Color3f(Float_t r, Float_t g, Float_t b)
Wrapper for glColor3f.
Double_t Dot(const TGLVector3 &v1, const TGLVector3 &v2)
static Float_t fgPointLineScalingFactor
static const double x1[5]
std::vector< TGLPlane > TGLPlaneSet_t
Double_t & operator[](Int_t index)
static Float_t fgScreenScalingFactor
void SetCorner(Int_t x, Int_t y)
void Negate()
Negate the plane.
TGLCapabilitySwitch(const TGLCapabilitySwitch &)
ClassDefNV(TGLVertex3, 1)
void DrawTrapezoidTextured(const Double_t ver[][2], Double_t zMin, Double_t zMax, Double_t tMin, Double_t tMax)
In polar coordinates, box became trapezoid.
void Rotate(const TGLVertex3 &pivot, const TGLVector3 &axis, Double_t angle)
Update matrix so resulting transform has been rotated about 'pivot' (in parent frame), round vector 'axis', through 'angle' (radians) Equivalent to glRotate function, but with addition of translation and compounded on top of existing.
TGLVertex3 operator+(const TGLVertex3 &vertex1, const TGLVector3 &vertex2)
TGLDisableGuard & operator=(const TGLDisableGuard &)
void MultRight(const TGLMatrix &rhs)
Multiply with matrix rhs on right.
Color_t GetColorIndex() const
Returns color-index representing the color.
static void BeginExtendPickRegion(Float_t scale)
static void RenderPolyLine(const TAttLine &aline, Char_t transp, Float_t *p, Int_t n, Int_t pick_radius=0, Bool_t selection=kFALSE)
Render poly-line as specified by the p-array.
static constexpr double s
Bool_t IsScalingForRender() const
Return true if matrix is to be considered a scaling matrix for rendering.
const TGLColor & Foreground() const
static void EndExtendPickRegion()
TGLSelectionBuffer & operator=(const TGLSelectionBuffer &)
void DisableTexture() const
Disable 1D texture.
void DrawTrapezoid(const Double_t ver[][2], Double_t zMin, Double_t zMax, Bool_t color=kTRUE)
void DrawSphere(TGLQuadric *quadric, Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax)
Cylinder for lego3.
static Float_t GetPointLineScalingFactor()
Return extra scaling factor for points and lines.
static Int_t CheckError(const char *loc)
Check current GL error state, outputting details via ROOT Error method if one.
Concrete class describing an orientated (free) or axis aligned box of 8 vertices. ...
you should not use this method at all Int_t Int_t z
void GetColor(Float_t v, Float_t vmin, Float_t vmax, Int_t type, Float_t *rgba)
This function creates color for parametric surface's vertex, using its 'u' value. ...
const Double_t * CArr() const
TTwoArgsGuard(Func f, Arg1 a1, Arg2 a2)
virtual ~TGLMatrix()
Destroy matrix object.
typedef void((*Func_t)())
TGLColor & Selection(Int_t i)
static void ResetDrawQuality()
static: reset draw quality
virtual ~TDrawQualityModifier()
static Float_t GetLineWidthScale()
Returns global line-width scale.
TGLLine3(const TGLVertex3 &start, const TGLVertex3 &end)
Vector of line from fVertex.
TGLVector3 & operator/=(Double_t val)
~TGLEnableGuard()
TGLEnableGuard destructor.
TGLVertex3 & operator*=(Double_t f)
TGLMatrix & operator=(const TGLMatrix &rhs)
TGLDisableGuard(Int_t cap)
TGLDisableGuard constructor.
static void RenderCrosses(const TAttMarker &marker, Float_t *p, Int_t n, Bool_t sec_selection=kFALSE)
Render markers as crosses.
TGLCapabilityEnabler(const TGLCapabilityEnabler &)
static Float_t fgLineWidthScale
static GLUtesselator * GetDrawTesselator3dv()
Returns a tesselator for direct drawing when using 3-vertices with double precision.
void Maximum(const TGLVertex3 &other)
virtual ~TGLSelectionBuffer()
TGLSelectionBuffer destructor.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
void Scale(const TGLVector3 &scale)
Set matrix axis scales to 'scale'.
TGLLevelPalette & operator=(const TGLLevelPalette &)
static Int_t GetPickingRadius()
Returns picking radius.
static void SetDrawQuality(UInt_t dq)
static: set draw quality
void Draw() const
Draw line in current basic GL color.
virtual ~TGLRect()
Destroy rect object.
~TGLVertex3()
Destroy vertex object.
static Float_t LineWidth()
Get the line-width, taking the global scaling into account.
void SetMaxRow(Int_t max)
TGLVector3 Cross(const TGLVector3 &v1, const TGLVector3 &v2)
void DrawCylinder(TGLQuadric *quadric, Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax)
Cylinder for lego3.
def normal(shape, name=None)
static Float_t fgPointSize
void Normalise()
Normalise the plane.
void Shift(TGLVector3 &shift)
Offset a vertex by vector 'shift'.
void DrawBoxFrontTextured(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax, Double_t tMin, Double_t tMax, Int_t front)
Draws lego's bar as a 3d box LULULULU.
void SetColor(Int_t r, Int_t g, Int_t b, Int_t a=255)
Set color with Int_t values.
Bool_t GeneratePalette(UInt_t paletteSize, const Rgl::Range_t &zRange, Bool_t checkSize=kTRUE)
Try to find colors for palette.
virtual ~TGLColorSet()
Destructor.
static void ColorAlpha(const TGLColor &color, UChar_t alpha)
Set color from TGLColor and alpha value.
3D plane class - of format Ax + By + Cz + D = 0
const Float_t gOrangeEmission[]
TString AsString() const
Return string describing the color.
~TGLVector3()
Destroy vector object.
static void SetDrawColors(const UChar_t rgba[4])
Set basic draw colors from 4 component 'rgba' Used by other TGLUtil drawing routines.
virtual ~TDrawQualityScaler()
TGLVector3 GetScale() const
Get local axis scaling factors.
TGLVector3()
Construct a default (0.0, 0.0, 0.0) vector.
static void Color4ubv(const UChar_t *rgba)
Wrapper for glColor4ubv.
ClassDefNV(TGLVector3, 1)
void MoveLF(Int_t ai, Double_t amount)
Translate in local frame.
TGuardBase(const TGuardBase &rhs)
void Set(Int_t x, Int_t y, Int_t width, Int_t height)
static void Color3ubv(const UChar_t *rgb)
Wrapper for glColor3ubv.
TOneArgGuard(Func f, Arg a)
static UInt_t GetDefaultDrawQuality()
static: get default draw quality
TGLVector3 GetBaseVec(Int_t b) const
void Set(const TGLPlane &other)
Assign from other.
const std::vector< Double_t > * fContours
void Dump() const
Output vertex component values to std::cout.
const Int_t * CArr() const
std::pair< Bool_t, TGLLine3 > Intersection(const TGLPlane &p1, const TGLPlane &p2)
Find 3D line interestion of this plane with 'other'.
static constexpr double g