ROOT logo
ROOT » GRAF3D » GL » TArcBall

class TArcBall


 Implements the arc-ball rotation manipulator.
 Used by plot-painters.

Function Members (Methods)

public:
TArcBall(UInt_t NewWidth = 100, UInt_t NewHeight = 100)
virtual~TArcBall()
static TClass*Class()
voidClick(const TPoint& NewPt)
voidDrag(const TPoint& NewPt)
const Double_t*GetRotMatrix() const
virtual TClass*IsA() const
voidSetBounds(UInt_t NewWidth, UInt_t NewHeight)
virtual voidShowMembers(TMemberInspector& insp)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
protected:
voidMapToSphere(const TPoint& NewPt, Double_t* NewVec) const
private:
TArcBall(const TArcBall&)
TArcBall&operator=(const TArcBall&)
voidResetMatrices()

Data Members

private:
Double_tfAdjustHeightMouse bounds height
Double_tfAdjustWidthMouse bounds width
Double_tfEnVec[3]Saved drag vector
Double_tfLastRot[9]
Double_tfStVec[3]Saved click vector
Double_tfThisRot[9]
Double_tfTransform[16]

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void MapToSphere(const TPoint& NewPt, Double_t* NewVec) const
map to sphere
TArcBall(UInt_t NewWidth = 100, UInt_t NewHeight = 100)
 constructor
void Click(const TPoint& NewPt)
Mouse down
void Drag(const TPoint& NewPt)
Mouse drag, calculate rotation
void ResetMatrices()
Set rotation matrix as union
TArcBall(const TArcBall& )
Non-copyable
virtual ~TArcBall()
{ }
void SetBounds(UInt_t NewWidth, UInt_t NewHeight)
const Double_t * GetRotMatrix() const