TGLPerspectiveCamera Class Reference

#include <TGLPerspectiveCamera.h>

Inheritance diagram for TGLPerspectiveCamera:

TGLCamera TGLCamera List of all members.

Public Member Functions

 TGLPerspectiveCamera (const TGLVector3 &hAxis, const TGLVector3 &vAxis)
virtual ~TGLPerspectiveCamera ()
virtual Bool_t IsPerspective () const
Double_t GetFOV () const
virtual void Setup (const TGLBoundingBox &box, Bool_t reset=kTRUE)
virtual void Reset ()
virtual Bool_t Zoom (Int_t delta, Bool_t mod1, Bool_t mod2)
virtual Bool_t Truck (Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
virtual void Apply (const TGLBoundingBox &box, const TGLRect *pickRect=0) const
virtual void Configure (Double_t fov, Double_t dolly, Double_t center[3], Double_t hRotate, Double_t vRotate)
 TGLPerspectiveCamera (const TGLVector3 &hAxis, const TGLVector3 &vAxis)
virtual ~TGLPerspectiveCamera ()
virtual Bool_t IsPerspective () const
Double_t GetFOV () const
virtual void Setup (const TGLBoundingBox &box, Bool_t reset=kTRUE)
virtual void Reset ()
virtual Bool_t Zoom (Int_t delta, Bool_t mod1, Bool_t mod2)
virtual Bool_t Truck (Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
virtual void Apply (const TGLBoundingBox &box, const TGLRect *pickRect=0) const
virtual void Configure (Double_t fov, Double_t dolly, Double_t center[3], Double_t hRotate, Double_t vRotate)

Private Attributes

Double_t fFOV

Static Private Attributes

static Double_t fgFOVMin
static Double_t fgFOVDefault
static Double_t fgFOVMax
static UInt_t fgFOVDeltaSens

Detailed Description

Definition at line 30 of file TGLPerspectiveCamera.h.


Constructor & Destructor Documentation

TGLPerspectiveCamera::TGLPerspectiveCamera ( const TGLVector3 hAxis,
const TGLVector3 vAxis 
)

Definition at line 40 of file TGLPerspectiveCamera.cxx.

References xmlio::Setup.

TGLPerspectiveCamera::~TGLPerspectiveCamera (  )  [virtual]

Definition at line 50 of file TGLPerspectiveCamera.cxx.

TGLPerspectiveCamera::TGLPerspectiveCamera ( const TGLVector3 hAxis,
const TGLVector3 vAxis 
)

virtual TGLPerspectiveCamera::~TGLPerspectiveCamera (  )  [virtual]


Member Function Documentation

virtual Bool_t TGLPerspectiveCamera::IsPerspective (  )  const [inline, virtual]

Reimplemented from TGLCamera.

Definition at line 43 of file TGLPerspectiveCamera.h.

References kTRUE.

Double_t TGLPerspectiveCamera::GetFOV (  )  const [inline]

Definition at line 45 of file TGLPerspectiveCamera.h.

References fFOV.

void TGLPerspectiveCamera::Setup ( const TGLBoundingBox box,
Bool_t  reset = kTRUE 
) [virtual]

Implements TGLCamera.

Definition at line 56 of file TGLPerspectiveCamera.cxx.

References TGLRect::Aspect(), box(), TGLCamera::fDollyDefault, TGLCamera::fDollyDistance, TGLCamera::fExternalCenter, TGLCamera::fFDCenter, TGLCamera::fFixDefCenter, fgFOVDefault, TGLCamera::fViewport, TMath::Hypot(), kFALSE, TMath::Min(), TMath::Pi(), Reset(), TGLCamera::SetCenterVec(), size, TMath::Sort(), TMath::Tan(), TGLVertex3::X(), TGLVertex3::Y(), and TGLVertex3::Z().

Referenced by TEveLegoEventHandler::Rotate(), and TGLViewer::SetupCameras().

void TGLPerspectiveCamera::Reset (  )  [virtual]

Implements TGLCamera.

Definition at line 91 of file TGLPerspectiveCamera.cxx.

References TGLCamera::fCamTrans, TGLCamera::fDollyDefault, fFOV, fgFOVDefault, TGLCamera::IncTimeStamp(), TGLMatrix::MoveLF(), and TGLMatrix::SetIdentity().

Referenced by Setup().

Bool_t TGLPerspectiveCamera::Zoom ( Int_t  delta,
Bool_t  mod1,
Bool_t  mod2 
) [virtual]

Implements TGLCamera.

Definition at line 105 of file TGLPerspectiveCamera.cxx.

References TGLCamera::AdjustAndClampVal(), fFOV, fgFOVDeltaSens, fgFOVMax, fgFOVMin, TGLCamera::IncTimeStamp(), kFALSE, and kTRUE.

Bool_t TGLPerspectiveCamera::Truck ( Int_t  xDelta,
Int_t  yDelta,
Bool_t  mod1,
Bool_t  mod2 
) [virtual]

Implements TGLCamera.

Definition at line 126 of file TGLPerspectiveCamera.cxx.

References TGLCamera::AdjustDelta(), TMath::DegToRad(), TGLCamera::fFarClip, fFOV, TGLCamera::fNearClip, TGLCamera::fViewport, TGLRect::Height(), and TMath::Tan().

void TGLPerspectiveCamera::Apply ( const TGLBoundingBox box,
const TGLRect pickRect = 0 
) const [virtual]

Implements TGLCamera.

Definition at line 143 of file TGLPerspectiveCamera.cxx.

References TGLMatrix::Arr(), TGLRect::Aspect(), TGLRect::CArr(), TGLPlane::DistanceTo(), TGLCamera::EyeDirection(), TGLCamera::EyePoint(), TGLCamera::fCacheDirty, TGLCamera::fCamBase, TGLCamera::fCamTrans, TGLCamera::fFarClip, fFOV, TGLCamera::fLastNoPickProjM, TGLCamera::fNearClip, TGLCamera::fViewport, TGLMatrix::GetBaseVec(), TGLMatrix::GetTranslation(), GL_MODELVIEW, GL_PROJECTION, GL_PROJECTION_MATRIX, glGetDoublev(), glLoadIdentity(), glMatrixMode(), glViewport(), TGLRect::Height(), i, kFALSE, kTRUE, TGLCamera::UpdateCache(), TGLRect::Width(), TGLCamera::WindowToViewport(), TGLRect::X(), and TGLRect::Y().

void TGLPerspectiveCamera::Configure ( Double_t  fov,
Double_t  dolly,
Double_t  center[3],
Double_t  hRotate,
Double_t  vRotate 
) [virtual]

Implements TGLCamera.

Definition at line 260 of file TGLPerspectiveCamera.cxx.

References TGLCamera::fCamTrans, fFOV, TGLCamera::IncTimeStamp(), TGLMatrix::MoveLF(), TGLCamera::RotateRad(), and TGLCamera::SetCenterVec().

Referenced by TEveLegoEventHandler::Rotate(), and TGLViewer::SetPerspectiveCamera().

virtual Bool_t TGLPerspectiveCamera::IsPerspective (  )  const [inline, virtual]

Reimplemented from TGLCamera.

Definition at line 43 of file TGLPerspectiveCamera.h.

References kTRUE.

Double_t TGLPerspectiveCamera::GetFOV (  )  const [inline]

Definition at line 45 of file TGLPerspectiveCamera.h.

References fFOV.

virtual void TGLPerspectiveCamera::Setup ( const TGLBoundingBox box,
Bool_t  reset = kTRUE 
) [virtual]

Implements TGLCamera.

virtual void TGLPerspectiveCamera::Reset (  )  [virtual]

Implements TGLCamera.

virtual Bool_t TGLPerspectiveCamera::Zoom ( Int_t  delta,
Bool_t  mod1,
Bool_t  mod2 
) [virtual]

Implements TGLCamera.

virtual Bool_t TGLPerspectiveCamera::Truck ( Int_t  xDelta,
Int_t  yDelta,
Bool_t  mod1,
Bool_t  mod2 
) [virtual]

Implements TGLCamera.

virtual void TGLPerspectiveCamera::Apply ( const TGLBoundingBox box,
const TGLRect pickRect = 0 
) const [virtual]

Implements TGLCamera.

virtual void TGLPerspectiveCamera::Configure ( Double_t  fov,
Double_t  dolly,
Double_t  center[3],
Double_t  hRotate,
Double_t  vRotate 
) [virtual]

Implements TGLCamera.


Member Data Documentation

Double_t TGLPerspectiveCamera::fFOV [private]

Definition at line 34 of file TGLPerspectiveCamera.h.

Referenced by Apply(), Configure(), GetFOV(), Reset(), Truck(), and Zoom().

static Double_t TGLPerspectiveCamera::fgFOVMin [static, private]

Definition at line 36 of file TGLPerspectiveCamera.h.

Referenced by Zoom().

static Double_t TGLPerspectiveCamera::fgFOVDefault [static, private]

Definition at line 36 of file TGLPerspectiveCamera.h.

Referenced by Reset(), and Setup().

static Double_t TGLPerspectiveCamera::fgFOVMax [static, private]

Definition at line 36 of file TGLPerspectiveCamera.h.

Referenced by Zoom().

static UInt_t TGLPerspectiveCamera::fgFOVDeltaSens [static, private]

Definition at line 37 of file TGLPerspectiveCamera.h.

Referenced by Zoom().


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