TGLMatrix Class Reference

#include <TGLUtil.h>

List of all members.

Public Member Functions

 TGLMatrix ()
 TGLMatrix (Double_t x, Double_t y, Double_t z)
 TGLMatrix (const TGLVertex3 &translation)
 TGLMatrix (const TGLVertex3 &origin, const TGLVector3 &zAxis, const TGLVector3 &xAxis)
 TGLMatrix (const TGLVertex3 &origin, const TGLVector3 &zAxis)
 TGLMatrix (const Double_t vals[16])
 TGLMatrix (const TGLMatrix &other)
virtual ~TGLMatrix ()
TGLMatrixoperator= (const TGLMatrix &rhs)
Double_toperator[] (Int_t index)
Double_t operator[] (Int_t index) const
void MultRight (const TGLMatrix &rhs)
void MultLeft (const TGLMatrix &lhs)
TGLMatrixoperator *= (const TGLMatrix &rhs)
void Set (const TGLVertex3 &origin, const TGLVector3 &zAxis, const TGLVector3 &xAxis=0)
void Set (const Double_t vals[16])
void SetIdentity ()
void SetTranslation (Double_t x, Double_t y, Double_t z)
void SetTranslation (const TGLVertex3 &translation)
void Translate (const TGLVector3 &vect)
void MoveLF (Int_t ai, Double_t amount)
void Move3LF (Double_t x, Double_t y, Double_t z)
void Scale (const TGLVector3 &scale)
void Rotate (const TGLVertex3 &pivot, const TGLVector3 &axis, Double_t angle)
void RotateLF (Int_t i1, Int_t i2, Double_t amount)
void RotatePF (Int_t i1, Int_t i2, Double_t amount)
void TransformVertex (TGLVertex3 &vertex) const
void Transpose3x3 ()
Double_t Invert ()
TGLVector3 GetTranslation () const
TGLVector3 GetScale () const
void SetBaseVec (Int_t b, Double_t x, Double_t y, Double_t z)
void SetBaseVec (Int_t b, const TGLVector3 &v)
void SetBaseVec (Int_t b, Double_t *x)
TGLVector3 GetBaseVec (Int_t b) const
void GetBaseVec (Int_t b, TGLVector3 &v) const
void GetBaseVec (Int_t b, Double_t *x) const
TGLVector3 Multiply (const TGLVector3 &v, Double_t w=1) const
TGLVector3 Rotate (const TGLVector3 &v) const
void MultiplyIP (TGLVector3 &v, Double_t w=1) const
void RotateIP (TGLVector3 &v) const
const Double_tCArr () const
Double_tArr ()
void Dump () const
 ClassDef (TGLMatrix, 0)
 TGLMatrix ()
 TGLMatrix (Double_t x, Double_t y, Double_t z)
 TGLMatrix (const TGLVertex3 &translation)
 TGLMatrix (const TGLVertex3 &origin, const TGLVector3 &zAxis, const TGLVector3 &xAxis)
 TGLMatrix (const TGLVertex3 &origin, const TGLVector3 &zAxis)
 TGLMatrix (const Double_t vals[16])
 TGLMatrix (const TGLMatrix &other)
virtual ~TGLMatrix ()
TGLMatrixoperator= (const TGLMatrix &rhs)
Double_toperator[] (Int_t index)
Double_t operator[] (Int_t index) const
void MultRight (const TGLMatrix &rhs)
void MultLeft (const TGLMatrix &lhs)
TGLMatrixoperator *= (const TGLMatrix &rhs)
void Set (const TGLVertex3 &origin, const TGLVector3 &zAxis, const TGLVector3 &xAxis=0)
void Set (const Double_t vals[16])
void SetIdentity ()
void SetTranslation (Double_t x, Double_t y, Double_t z)
void SetTranslation (const TGLVertex3 &translation)
void Translate (const TGLVector3 &vect)
void MoveLF (Int_t ai, Double_t amount)
void Move3LF (Double_t x, Double_t y, Double_t z)
void Scale (const TGLVector3 &scale)
void Rotate (const TGLVertex3 &pivot, const TGLVector3 &axis, Double_t angle)
void RotateLF (Int_t i1, Int_t i2, Double_t amount)
void RotatePF (Int_t i1, Int_t i2, Double_t amount)
void TransformVertex (TGLVertex3 &vertex) const
void Transpose3x3 ()
Double_t Invert ()
TGLVector3 GetTranslation () const
TGLVector3 GetScale () const
void SetBaseVec (Int_t b, Double_t x, Double_t y, Double_t z)
void SetBaseVec (Int_t b, const TGLVector3 &v)
void SetBaseVec (Int_t b, Double_t *x)
TGLVector3 GetBaseVec (Int_t b) const
void GetBaseVec (Int_t b, TGLVector3 &v) const
void GetBaseVec (Int_t b, Double_t *x) const
TGLVector3 Multiply (const TGLVector3 &v, Double_t w=1) const
TGLVector3 Rotate (const TGLVector3 &v) const
void MultiplyIP (TGLVector3 &v, Double_t w=1) const
void RotateIP (TGLVector3 &v) const
const Double_tCArr () const
Double_tArr ()
void Dump () const
 ClassDef (TGLMatrix, 0)

Private Member Functions

Bool_t ValidIndex (UInt_t index) const
Bool_t ValidIndex (UInt_t index) const

Private Attributes

Double_t fVals [16]


Detailed Description

Definition at line 617 of file TGLUtil.h.


Constructor & Destructor Documentation

TGLMatrix::TGLMatrix (  ) 

Definition at line 597 of file TGLUtil.cxx.

References SetIdentity().

TGLMatrix::TGLMatrix ( Double_t  x,
Double_t  y,
Double_t  z 
)

Definition at line 609 of file TGLUtil.cxx.

References SetIdentity(), and SetTranslation().

TGLMatrix::TGLMatrix ( const TGLVertex3 translation  ) 

Definition at line 622 of file TGLUtil.cxx.

References SetIdentity(), and SetTranslation().

TGLMatrix::TGLMatrix ( const TGLVertex3 origin,
const TGLVector3 zAxis,
const TGLVector3 xAxis 
)

Definition at line 658 of file TGLUtil.cxx.

References Set(), and SetIdentity().

TGLMatrix::TGLMatrix ( const TGLVertex3 origin,
const TGLVector3 zAxis 
)

Definition at line 635 of file TGLUtil.cxx.

References TMath::Abs(), Cross(), TGLVector3::Normalise(), Set(), TGLVertex3::Set(), SetIdentity(), TGLVertex3::X(), TGLVertex3::Y(), and TGLVertex3::Z().

TGLMatrix::TGLMatrix ( const Double_t  vals[16]  ) 

Definition at line 668 of file TGLUtil.cxx.

References Set().

TGLMatrix::TGLMatrix ( const TGLMatrix other  ) 

Definition at line 677 of file TGLUtil.cxx.

TGLMatrix::~TGLMatrix (  )  [virtual]

Definition at line 684 of file TGLUtil.cxx.

TGLMatrix::TGLMatrix (  ) 

TGLMatrix::TGLMatrix ( Double_t  x,
Double_t  y,
Double_t  z 
)

TGLMatrix::TGLMatrix ( const TGLVertex3 translation  ) 

TGLMatrix::TGLMatrix ( const TGLVertex3 origin,
const TGLVector3 zAxis,
const TGLVector3 xAxis 
)

TGLMatrix::TGLMatrix ( const TGLVertex3 origin,
const TGLVector3 zAxis 
)

TGLMatrix::TGLMatrix ( const Double_t  vals[16]  ) 

TGLMatrix::TGLMatrix ( const TGLMatrix other  ) 

virtual TGLMatrix::~TGLMatrix (  )  [virtual]


Member Function Documentation

Bool_t TGLMatrix::ValidIndex ( UInt_t  index  )  const [inline, private]

Definition at line 624 of file TGLUtil.h.

TGLMatrix & TGLMatrix::operator= ( const TGLMatrix rhs  )  [inline]

Definition at line 692 of file TGLUtil.h.

References fVals, and Set().

Double_t & TGLMatrix::operator[] ( Int_t  index  )  [inline]

Definition at line 702 of file TGLUtil.h.

References fVals.

Double_t TGLMatrix::operator[] ( Int_t  index  )  const [inline]

Definition at line 713 of file TGLUtil.h.

References fVals.

void TGLMatrix::MultRight ( const TGLMatrix rhs  ) 

Definition at line 690 of file TGLUtil.cxx.

References B, C, c, fVals, and T.

Referenced by operator *=().

void TGLMatrix::MultLeft ( const TGLMatrix lhs  ) 

Definition at line 706 of file TGLUtil.cxx.

References B, C, c, fVals, and T.

TGLMatrix& TGLMatrix::operator *= ( const TGLMatrix rhs  )  [inline]

Definition at line 643 of file TGLUtil.h.

References MultRight().

void TGLMatrix::Set ( const TGLVertex3 origin,
const TGLVector3 zAxis,
const TGLVector3 xAxis = 0 
)

Definition at line 722 of file TGLUtil.cxx.

References Cross(), fVals, TGLVector3::Normalise(), TGLVertex3::X(), TGLVertex3::Y(), and TGLVertex3::Z().

Referenced by operator=(), TGLPhysicalShape::SetTransform(), TGLCamera::TGLCamera(), and TGLMatrix().

void TGLMatrix::Set ( const Double_t  vals[16]  ) 

Definition at line 741 of file TGLUtil.cxx.

References fVals, and i.

void TGLMatrix::SetIdentity (  ) 

Definition at line 752 of file TGLUtil.cxx.

References fVals.

Referenced by TGLOrthoCamera::Reset(), TGLPerspectiveCamera::Reset(), and TGLMatrix().

void TGLMatrix::SetTranslation ( Double_t  x,
Double_t  y,
Double_t  z 
)

Definition at line 763 of file TGLUtil.cxx.

Referenced by TGLPhysicalShape::SetTranslation(), and TGLMatrix().

void TGLMatrix::SetTranslation ( const TGLVertex3 translation  ) 

Definition at line 771 of file TGLUtil.cxx.

References fVals.

void TGLMatrix::Translate ( const TGLVector3 vect  ) 

Definition at line 789 of file TGLUtil.cxx.

References fVals.

Referenced by TGLScenePad::AddHistoPhysical(), and TGLPhysicalShape::Translate().

void TGLMatrix::MoveLF ( Int_t  ai,
Double_t  amount 
)

Definition at line 799 of file TGLUtil.cxx.

References C, and fVals.

Referenced by TGLOrthoCamera::Configure(), TGLPerspectiveCamera::Configure(), TGLCamera::Dolly(), TGLOrthoCamera::Reset(), TGLPerspectiveCamera::Reset(), TGLCamera::RotateRad(), TGLAutoRotator::Timeout(), and TGLCamera::Truck().

void TGLMatrix::Move3LF ( Double_t  x,
Double_t  y,
Double_t  z 
)

Definition at line 809 of file TGLUtil.cxx.

References fVals.

void TGLMatrix::Scale ( const TGLVector3 scale  ) 

Definition at line 819 of file TGLUtil.cxx.

References Error, fVals, and GetScale().

Referenced by TGLScenePad::AddHistoPhysical(), and TGLPhysicalShape::Scale().

void TGLMatrix::Rotate ( const TGLVertex3 pivot,
const TGLVector3 axis,
Double_t  angle 
)

Definition at line 853 of file TGLUtil.cxx.

References axis, c, TMath::Cos(), TGLVector3::Normalise(), s, TMath::Sin(), TGLVertex3::X(), x, TGLVertex3::Y(), y, and TGLVertex3::Z().

Referenced by TGLPhysicalShape::Rotate().

void TGLMatrix::RotateLF ( Int_t  i1,
Int_t  i2,
Double_t  amount 
)

Definition at line 881 of file TGLUtil.cxx.

References c, cos(), TMath::Cos(), fVals, sin(), and TMath::Sin().

Referenced by TGLScenePad::AddHistoPhysical(), and TGLCamera::RotateRad().

void TGLMatrix::RotatePF ( Int_t  i1,
Int_t  i2,
Double_t  amount 
)

Definition at line 899 of file TGLUtil.cxx.

References C, c, cos(), TMath::Cos(), fVals, sin(), and TMath::Sin().

Referenced by TGLCamera::RotateRad().

void TGLMatrix::TransformVertex ( TGLVertex3 vertex  )  const

Definition at line 918 of file TGLUtil.cxx.

References fVals, and i.

void TGLMatrix::Transpose3x3 (  ) 

Definition at line 929 of file TGLUtil.cxx.

References fVals.

Referenced by TGLPhysicalShape::TGLPhysicalShape().

Double_t TGLMatrix::Invert (  ) 

Definition at line 954 of file TGLUtil.cxx.

References fVals, and Warning().

Referenced by TGLCamera::SetCenterVec(), and TGLCamera::SetExternalCenter().

TGLVector3 TGLMatrix::GetTranslation (  )  const

Definition at line 781 of file TGLUtil.cxx.

References fVals.

Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), TGLPhysicalShape::GetTranslation(), TGLCameraOverlay::RenderPlaneIntersect(), TEveLegoEventHandler::Rotate(), and TGLCamera::RotateRad().

TGLVector3 TGLMatrix::GetScale (  )  const

Definition at line 1079 of file TGLUtil.cxx.

References fVals, x, and y.

Referenced by TGLPhysicalShape::GetScale(), and Scale().

void TGLMatrix::SetBaseVec ( Int_t  b,
Double_t  x,
Double_t  y,
Double_t  z 
) [inline]

Definition at line 752 of file TGLUtil.h.

References C, and fVals.

Referenced by TGLCamera::SetCenterVec(), TGLCamera::SetCenterVecWarp(), and TGLCamera::SetExternalCenter().

void TGLMatrix::SetBaseVec ( Int_t  b,
const TGLVector3 v 
) [inline]

Definition at line 759 of file TGLUtil.h.

References C, and fVals.

void TGLMatrix::SetBaseVec ( Int_t  b,
Double_t x 
) [inline]

Definition at line 766 of file TGLUtil.h.

References C, and fVals.

TGLVector3 TGLMatrix::GetBaseVec ( Int_t  b  )  const [inline]

Definition at line 773 of file TGLUtil.h.

References fVals.

Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), TEveCaloLegoGL::DirectDraw(), TGLCamera::GetTheta(), TGLCameraGuide::Render(), TGLCameraOverlay::RenderAxis(), TGLCameraOverlay::RenderBar(), TGLCameraOverlay::RenderPlaneIntersect(), TEveLegoEventHandler::Rotate(), TGLCamera::RotateRad(), TGLCameraOverlay::SetFrustum(), and TGLAutoRotator::Start().

void TGLMatrix::GetBaseVec ( Int_t  b,
TGLVector3 v 
) const [inline]

Definition at line 779 of file TGLUtil.h.

References C, and fVals.

void TGLMatrix::GetBaseVec ( Int_t  b,
Double_t x 
) const [inline]

Definition at line 786 of file TGLUtil.h.

References C, and fVals.

TGLVector3 TGLMatrix::Multiply ( const TGLVector3 v,
Double_t  w = 1 
) const

Definition at line 1033 of file TGLUtil.cxx.

References fVals.

TGLVector3 TGLMatrix::Rotate ( const TGLVector3 v  )  const

Definition at line 1045 of file TGLUtil.cxx.

References fVals.

void TGLMatrix::MultiplyIP ( TGLVector3 v,
Double_t  w = 1 
) const

Definition at line 1057 of file TGLUtil.cxx.

References fVals.

void TGLMatrix::RotateIP ( TGLVector3 v  )  const

Definition at line 1068 of file TGLUtil.cxx.

References fVals.

Referenced by TGLCamera::GetTheta(), and TGLCamera::RotateRad().

const Double_t* TGLMatrix::CArr (  )  const [inline]

Definition at line 683 of file TGLUtil.h.

References fVals.

Referenced by TEveTextGL::DirectDraw(), TGLPhysicalShape::Draw(), TGLAxisPainterBox::SetAxis3DTitlePos(), TEveCaloLegoGL::SetAxis3DTitlePos(), TGLCamera::ViewportRect(), TGLCamera::ViewportToWorld(), and TGLCamera::WorldToViewport().

Double_t* TGLMatrix::Arr (  )  [inline]

Definition at line 684 of file TGLUtil.h.

References fVals.

Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), TEveCaloLegoGL::DrawAxis2D(), TEveCaloLegoGL::DrawAxis3D(), TGLAxisPainterBox::DrawAxis3D(), and TGLCamera::UpdateCache().

void TGLMatrix::Dump (  )  const

Definition at line 1089 of file TGLUtil.cxx.

References fVals, x, and y.

TGLMatrix::ClassDef ( TGLMatrix  ,
 
)

Bool_t TGLMatrix::ValidIndex ( UInt_t  index  )  const [inline, private]

Definition at line 624 of file TGLUtil.h.

TGLMatrix& TGLMatrix::operator= ( const TGLMatrix rhs  ) 

Double_t& TGLMatrix::operator[] ( Int_t  index  ) 

Double_t TGLMatrix::operator[] ( Int_t  index  )  const

void TGLMatrix::MultRight ( const TGLMatrix rhs  ) 

void TGLMatrix::MultLeft ( const TGLMatrix lhs  ) 

TGLMatrix& TGLMatrix::operator *= ( const TGLMatrix rhs  )  [inline]

Definition at line 643 of file TGLUtil.h.

References MultRight().

void TGLMatrix::Set ( const TGLVertex3 origin,
const TGLVector3 zAxis,
const TGLVector3 xAxis = 0 
)

void TGLMatrix::Set ( const Double_t  vals[16]  ) 

void TGLMatrix::SetIdentity (  ) 

void TGLMatrix::SetTranslation ( Double_t  x,
Double_t  y,
Double_t  z 
)

void TGLMatrix::SetTranslation ( const TGLVertex3 translation  ) 

void TGLMatrix::Translate ( const TGLVector3 vect  ) 

void TGLMatrix::MoveLF ( Int_t  ai,
Double_t  amount 
)

void TGLMatrix::Move3LF ( Double_t  x,
Double_t  y,
Double_t  z 
)

void TGLMatrix::Scale ( const TGLVector3 scale  ) 

void TGLMatrix::Rotate ( const TGLVertex3 pivot,
const TGLVector3 axis,
Double_t  angle 
)

void TGLMatrix::RotateLF ( Int_t  i1,
Int_t  i2,
Double_t  amount 
)

void TGLMatrix::RotatePF ( Int_t  i1,
Int_t  i2,
Double_t  amount 
)

void TGLMatrix::TransformVertex ( TGLVertex3 vertex  )  const

void TGLMatrix::Transpose3x3 (  ) 

Double_t TGLMatrix::Invert (  ) 

TGLVector3 TGLMatrix::GetTranslation (  )  const

TGLVector3 TGLMatrix::GetScale (  )  const

void TGLMatrix::SetBaseVec ( Int_t  b,
Double_t  x,
Double_t  y,
Double_t  z 
)

void TGLMatrix::SetBaseVec ( Int_t  b,
const TGLVector3 v 
)

void TGLMatrix::SetBaseVec ( Int_t  b,
Double_t x 
)

TGLVector3 TGLMatrix::GetBaseVec ( Int_t  b  )  const

void TGLMatrix::GetBaseVec ( Int_t  b,
TGLVector3 v 
) const

void TGLMatrix::GetBaseVec ( Int_t  b,
Double_t x 
) const

TGLVector3 TGLMatrix::Multiply ( const TGLVector3 v,
Double_t  w = 1 
) const

TGLVector3 TGLMatrix::Rotate ( const TGLVector3 v  )  const

void TGLMatrix::MultiplyIP ( TGLVector3 v,
Double_t  w = 1 
) const

void TGLMatrix::RotateIP ( TGLVector3 v  )  const

const Double_t* TGLMatrix::CArr (  )  const [inline]

Definition at line 683 of file TGLUtil.h.

References fVals.

Double_t* TGLMatrix::Arr (  )  [inline]

Definition at line 684 of file TGLUtil.h.

References fVals.

void TGLMatrix::Dump (  )  const

TGLMatrix::ClassDef ( TGLMatrix  ,
 
)


Member Data Documentation

Double_t TGLMatrix::fVals [private]

Definition at line 621 of file TGLUtil.h.

Referenced by Arr(), CArr(), Dump(), GetBaseVec(), GetScale(), GetTranslation(), Invert(), Move3LF(), MoveLF(), Multiply(), MultiplyIP(), MultLeft(), MultRight(), operator=(), operator[](), Rotate(), RotateIP(), RotateLF(), RotatePF(), Scale(), Set(), SetBaseVec(), SetIdentity(), SetTranslation(), TransformVertex(), Translate(), and Transpose3x3().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:40:11 2011 for ROOT_528-00b_version by  doxygen 1.5.1