15#include "TGLIncludes.h"
70 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
71 glDisable(GL_CULL_FACE);
106 glEnable(GL_CULL_FACE);
130 TGLVector3 constrainedShift = widgetAxis *
Dot(shift, widgetAxis);
131 fShape->Translate(constrainedShift);
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
Double_t Dot(const TGLVector3 &v1, const TGLVector3 &v2)
Concrete class describing an orientated (free) or axis aligned box of 8 vertices.
Abstract base camera class - concrete classes for orthographic and perspective cameras derive from it...
TGLVector3 ViewportDeltaToWorld(const TGLVertex3 &worldRef, Double_t viewportXDelta, Double_t viewportYDelta, TGLMatrix *modviewMat=nullptr) const
Apply a 2D viewport delta (shift) to the projection of worldRef onto viewport, returning the resultan...
TPoint fLastMouse
! last (latest) mouse position (in WINDOW coords)
const UChar_t * ColorFor(UInt_t widget) const
Returns color to be used for given widget.
Bool_t fActive
! manipulator is active?
void CalcDrawScale(const TGLBoundingBox &box, const TGLCamera &camera, Double_t &base, TGLVector3 axis[3]) const
Calculates base and axis scale factor (in world units) for drawing manipulators with reasonable size ...
UInt_t fSelectedWidget
! active width (axis) component
TGLPhysicalShape * fShape
! manipulated shape
TGLManip(const TGLManip &)
Copy constructor.
Concrete physical shape - a GL drawable.
Bool_t HandleMotion(const Event_t &event, const TGLCamera &camera) override
Handle mouse motion over manipulator - if active (selected widget) translate physical along selected ...
void Draw(const TGLCamera &camera) const override
Draw translation manipulator - tubes with arrow heads, in local axes of attached shape,...
~TGLTransManip() override
Destroy the translation manipulator.
TGLTransManip()
Construct translation manipulator not bound to any physical shape.
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 const UChar_t fgWhite[4]
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,...
static const UChar_t fgGrey[4]
3 component (x/y/z) vector class.
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)
Int_t fY
pointer x, y coordinates in event window