#include <TGLCamera.h>
Inheritance diagram for TGLCamera:
Definition at line 42 of file TGLCamera.h.
Definition at line 45 of file TGLCamera.h.
Definition at line 45 of file TGLCamera.h.
TGLCamera::TGLCamera | ( | const TGLCamera & | ) | [private] |
TGLCamera::TGLCamera | ( | ) |
TGLCamera::TGLCamera | ( | const TGLVector3 & | hAxis, | |
const TGLVector3 & | vAxis | |||
) |
Definition at line 66 of file TGLCamera.cxx.
References fCamBase, fFrustumPlanes, i, kPlanesPerFrustum, and TGLMatrix::Set().
TGLCamera::~TGLCamera | ( | ) | [virtual] |
Definition at line 88 of file TGLCamera.cxx.
TGLCamera::TGLCamera | ( | const TGLCamera & | ) | [private] |
TGLCamera::TGLCamera | ( | ) |
TGLCamera::TGLCamera | ( | const TGLVector3 & | hAxis, | |
const TGLVector3 & | vAxis | |||
) |
virtual TGLCamera::~TGLCamera | ( | ) | [virtual] |
TGLBoundingBox TGLCamera::Frustum | ( | Bool_t | asBox = kTRUE |
) | const [private] |
expansion c.f. aligned current frustum box
Definition at line 157 of file TGLCamera.cxx.
References Error, fCacheDirty, fFrustumPlanes, Intersection(), kBottom, kFar, kLeft, kNear, kRight, kTop, and TGLPlane::NearestOn().
Referenced by UpdateInterest().
void TGLCamera::UpdateCache | ( | ) | const [protected] |
largest box diagonal seen in OfInterest() - used when bootstrapping interest box
Definition at line 103 of file TGLCamera.cxx.
References TGLMatrix::Arr(), fCacheDirty, fClipM, fFrustumPlanes, fModVM, fProjM, GL_MODELVIEW_MATRIX, GL_PROJECTION_MATRIX, glGetDoublev(), kBottom, kFALSE, kFar, kLeft, kNear, kRight, kTop, and TGLPlane::Set().
Referenced by TGLPerspectiveCamera::Apply(), and TGLOrthoCamera::Apply().
virtual Bool_t TGLCamera::IsOrthographic | ( | ) | const [inline, virtual] |
Definition at line 116 of file TGLCamera.h.
References kFALSE.
Referenced by TEveCaloLegoGL::DirectDraw(), TEveCaloLegoOverlay::Handle(), TEveCaloLegoOverlay::Render(), TGLCameraOverlay::Render(), TEveLegoEventHandler::Rotate(), and TGLViewerEditor::SetGuides().
virtual Bool_t TGLCamera::IsPerspective | ( | ) | const [inline, virtual] |
Definition at line 117 of file TGLCamera.h.
References kFALSE.
Referenced by TGLViewerEditor::DoCameraOverlay(), TGLViewer::DoDraw(), TEveCaloLegoOverlay::Render(), and TGLCameraOverlay::Render().
const TGLMatrix& TGLCamera::RefModelViewMatrix | ( | ) | const [inline] |
Definition at line 119 of file TGLCamera.h.
References fModVM.
Referenced by TGLCameraGuide::Render().
Bool_t TGLCamera::IsCacheDirty | ( | ) | const [inline] |
void TGLCamera::IncTimeStamp | ( | ) | [inline] |
Definition at line 122 of file TGLCamera.h.
References fCacheDirty, fTimeStamp, and kTRUE.
Referenced by TGLOrthoCamera::Configure(), TGLPerspectiveCamera::Configure(), Dolly(), TGLOrthoCamera::Reset(), TGLPerspectiveCamera::Reset(), RotateRad(), SetCenterVec(), SetCenterVecWarp(), SetExternalCenter(), SetViewport(), TGLOrthoCamera::SetZoomMax(), TGLOrthoCamera::SetZoomMin(), Truck(), TGLPerspectiveCamera::Zoom(), and TGLOrthoCamera::Zoom().
UInt_t TGLCamera::TimeStamp | ( | ) | const [inline] |
Definition at line 123 of file TGLCamera.h.
References fTimeStamp.
Referenced by TGLSceneBase::PreDraw(), and TGLSceneBase::UpdateSceneInfo().
void TGLCamera::SetViewport | ( | const TGLRect & | viewport | ) |
Definition at line 94 of file TGLCamera.cxx.
References fViewport, and IncTimeStamp().
Referenced by TGLViewer::SetCurrentCamera(), and TGLViewer::SetViewport().
TGLRect& TGLCamera::RefViewport | ( | ) | [inline] |
Definition at line 126 of file TGLCamera.h.
References fViewport.
Referenced by TEveCaloLegoGL::DrawAxis2D(), TEvePolygonSetProjectedGL::DrawHighlight(), TGLLogicalShape::DrawHighlight(), TGLAnnotation::Handle(), TEveCaloLegoOverlay::Handle(), TGLCameraGuide::Handle(), TGLEventHandler::HandleButton(), TGLRnrCtx::ProjectionMatrixPushIdentity(), TGLOverlayButton::Render(), TGLCameraGuide::Render(), TEveCaloLegoOverlay::Render(), TGLAnnotation::Render(), TGLCameraOverlay::RenderBar(), TEveCaloLegoOverlay::RenderHeader(), TEveCaloLegoOverlay::RenderLogaritmicScales(), TEveCaloLegoOverlay::RenderPaletteScales(), TEveCaloLegoOverlay::RenderPlaneInterface(), TGLCameraOverlay::RenderPlaneIntersect(), TEveLegoEventHandler::Rotate(), and TEveCaloLegoOverlay::SetSliderVal().
const TGLRect& TGLCamera::RefViewport | ( | ) | const [inline] |
virtual void TGLCamera::Setup | ( | const TGLBoundingBox & | box, | |
Bool_t | reset = kTRUE | |||
) | [pure virtual] |
Referenced by TGLViewer::ResetCurrentCamera().
virtual void TGLCamera::Reset | ( | ) | [pure virtual] |
Definition at line 940 of file TGLCamera.cxx.
References AdjustDelta(), fCamTrans, fDollyDistance, IncTimeStamp(), kFALSE, kTRUE, and TGLMatrix::MoveLF().
Referenced by TGLOrthoCamera::Dolly(), TGLEventHandler::HandleKey(), TGLEventHandler::HandleMotion(), and RootShower::ProcessMessage().
Referenced by TGLEventHandler::ExecuteEvent(), and TGLEventHandler::HandleButton().
Definition at line 865 of file TGLCamera.cxx.
References fCamTrans, IncTimeStamp(), kFALSE, kTRUE, and TGLMatrix::MoveLF().
Referenced by TGLEventHandler::HandleKey(), and TGLEventHandler::HandleMotion().
virtual Bool_t TGLCamera::Truck | ( | Int_t | xDelta, | |
Int_t | yDelta, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | [pure virtual] |
Definition at line 885 of file TGLCamera.cxx.
References AdjustDelta(), fViewport, TGLRect::Height(), TMath::Pi(), RotateRad(), TMath::TwoPi(), and TGLRect::Width().
Referenced by TGLEventHandler::Rotate(), TEveLegoEventHandler::Rotate(), and TGLOrthoCamera::Rotate().
Definition at line 899 of file TGLCamera.cxx.
References TMath::ACos(), fCamBase, fCamTrans, fVAxisMinAngle, TGLMatrix::GetBaseVec(), TGLMatrix::GetTranslation(), IncTimeStamp(), kTRUE, TGLMatrix::MoveLF(), TMath::Pi(), TGLMatrix::RotateIP(), TGLMatrix::RotateLF(), TGLMatrix::RotatePF(), and theta.
Referenced by TGLOrthoCamera::Configure(), TGLPerspectiveCamera::Configure(), RootShower::ProcessMessage(), Rotate(), TGLAutoRotator::Timeout(), and track().
virtual void TGLCamera::Apply | ( | const TGLBoundingBox & | sceneBox, | |
const TGLRect * | pickRect = 0 | |||
) | const [pure virtual] |
Referenced by TGLViewerBase::PreRender(), and TGLViewerBase::PreRenderOverlaySelection().
Bool_t TGLCamera::AdjustAndClampVal | ( | Double_t & | val, | |
Double_t | min, | |||
Double_t | max, | |||
Int_t | screenShift, | |||
Int_t | screenShiftRange, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | const |
Definition at line 684 of file TGLCamera.cxx.
References kFALSE.
Referenced by TGLPerspectiveCamera::Zoom(), and TGLOrthoCamera::Zoom().
Double_t TGLCamera::AdjustDelta | ( | Double_t | screenShift, | |
Double_t | deltaFactor, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | const |
Definition at line 733 of file TGLCamera.cxx.
Referenced by Dolly(), TEveLegoEventHandler::Rotate(), Rotate(), TGLOrthoCamera::Truck(), and TGLPerspectiveCamera::Truck().
void TGLCamera::SetExternalCenter | ( | Bool_t | x | ) |
Definition at line 797 of file TGLCamera.cxx.
References fCamBase, fCamTrans, fCenter, fDefCenter, fExtCenter, fExternalCenter, IncTimeStamp(), TGLMatrix::Invert(), and TGLMatrix::SetBaseVec().
Referenced by TGLViewerEditor::DoCameraCenterExt(), TGLEventHandler::HandleButton(), and TGLEventHandler::HandleKey().
Bool_t TGLCamera::GetExternalCenter | ( | ) | [inline] |
Definition at line 149 of file TGLCamera.h.
References fExternalCenter.
Referenced by TGLEventHandler::HandleKey(), and TGLViewerEditor::SetModel().
Definition at line 819 of file TGLCamera.cxx.
References fCamBase, fCamTrans, fCenter, fDefCenter, fExtCenter, fExternalCenter, IncTimeStamp(), TGLMatrix::Invert(), TGLVertex3::Set(), and TGLMatrix::SetBaseVec().
Referenced by TGLOrthoCamera::Configure(), TGLPerspectiveCamera::Configure(), TGLEventHandler::HandleButton(), TGLPerspectiveCamera::Setup(), TGLOrthoCamera::Setup(), and TGLViewerEditor::UpdateCameraCenter().
Definition at line 837 of file TGLCamera.cxx.
References fCamBase, fCenter, fDefCenter, fExtCenter, fExternalCenter, IncTimeStamp(), TGLVertex3::Set(), and TGLMatrix::SetBaseVec().
Referenced by TEveLegoEventHandler::Rotate().
Double_t* TGLCamera::GetCenterVec | ( | ) | [inline] |
Definition at line 153 of file TGLCamera.h.
References TGLVertex3::Arr(), and fCenter.
Referenced by TGLViewer::DrawGuides(), and TGLViewerEditor::SetModel().
void TGLCamera::SetFixDefCenter | ( | Bool_t | x | ) | [inline] |
Double_t* TGLCamera::GetFixDefCenterVec | ( | ) | [inline] |
Double_t TGLCamera::GetNearClip | ( | ) | const [inline] |
Double_t TGLCamera::GetFarClip | ( | ) | const [inline] |
const TGLMatrix& TGLCamera::GetCamBase | ( | ) | const [inline] |
Definition at line 162 of file TGLCamera.h.
References fCamBase.
Referenced by TEveCaloLegoGL::DirectDraw(), TGLCameraOverlay::RenderAxis(), TGLCameraOverlay::RenderBar(), TGLCameraOverlay::RenderPlaneIntersect(), TEveLegoEventHandler::Rotate(), and TGLCameraOverlay::SetFrustum().
const TGLMatrix& TGLCamera::GetCamTrans | ( | ) | const [inline] |
Definition at line 163 of file TGLCamera.h.
References fCamTrans.
Referenced by TGLCameraOverlay::RenderPlaneIntersect(), TEveLegoEventHandler::Rotate(), and TGLAutoRotator::Start().
TGLMatrix& TGLCamera::RefCamBase | ( | ) | [inline] |
TGLMatrix& TGLCamera::RefCamTrans | ( | ) | [inline] |
Definition at line 166 of file TGLCamera.h.
References fCamTrans.
Referenced by TGLAutoRotator::Timeout().
Double_t TGLCamera::GetTheta | ( | ) | const |
Definition at line 854 of file TGLCamera.cxx.
References TMath::ACos(), fCamBase, fCamTrans, TGLMatrix::GetBaseVec(), and TGLMatrix::RotateIP().
Referenced by TEveLegoEventHandler::Rotate(), and TGLAutoRotator::Timeout().
TGLMatrix& TGLCamera::RefLastNoPickProjM | ( | ) | const [inline] |
Definition at line 170 of file TGLCamera.h.
References fLastNoPickProjM.
Referenced by TEveTextGL::DirectDraw(), TGLAxisPainterBox::SetAxis3DTitlePos(), and TEveCaloLegoGL::SetAxis3DTitlePos().
TGLVertex3 TGLCamera::EyePoint | ( | ) | const |
Definition at line 212 of file TGLCamera.cxx.
References Error, fCacheDirty, fFrustumPlanes, Intersection(), kLeft, kRight, and kTop.
Referenced by TGLPerspectiveCamera::Apply(), and DrawDebugAids().
TGLVector3 TGLCamera::EyeDirection | ( | ) | const |
Definition at line 228 of file TGLCamera.cxx.
References Error, fCacheDirty, fFrustumPlanes, kNear, and TGLPlane::Norm().
Referenced by TGLPerspectiveCamera::Apply(), and DrawDebugAids().
TGLVertex3 TGLCamera::FrustumCenter | ( | ) | const |
Definition at line 240 of file TGLCamera.cxx.
References Error, fCacheDirty, fFrustumPlanes, Intersection(), kBottom, kFar, kLeft, kNear, kRight, and kTop.
const TGLPlane & TGLCamera::FrustumPlane | ( | EFrustumPlane | plane | ) | const [inline] |
Definition at line 215 of file TGLCamera.h.
References Error, fCacheDirty, and fFrustumPlanes.
Referenced by TEveCaloLegoGL::DrawAxis2D(), TEveLegoEventHandler::Rotate(), TGLCameraOverlay::SetFrustum(), and TGLSceneBase::UpdateSceneInfo().
EOverlap TGLCamera::FrustumOverlap | ( | const TGLBoundingBox & | box | ) | const |
Definition at line 264 of file TGLCamera.cxx.
References box(), Error, fCacheDirty, fFrustumPlanes, kInside, kOutside, kPartial, and kPlanesPerFrustum.
Referenced by TGLViewerBase::PreRender().
EOverlap TGLCamera::ViewportOverlap | ( | const TGLBoundingBox & | box | ) | const |
Definition at line 306 of file TGLCamera.cxx.
References box(), fViewport, TGLRect::Overlap(), and ViewportRect().
TGLRect TGLCamera::ViewportRect | ( | const TGLBoundingBox & | box, | |
TGLBoundingBox::EFace | face | |||
) | const |
TGLRect TGLCamera::ViewportRect | ( | const TGLBoundingBox & | box, | |
const TGLBoundingBox::EFace * | face = 0 | |||
) | const |
Definition at line 326 of file TGLCamera.cxx.
References box(), TGLMatrix::CArr(), TGLRect::CArr(), Error, TGLRect::Expand(), fCacheDirty, fModVM, fProjM, fViewport, i, and TGLRect::SetCorner().
TGLVertex3 TGLCamera::WorldToViewport | ( | const TGLVertex3 & | worldVertex, | |
TGLMatrix * | modviewMat = 0 | |||
) | const |
Definition at line 385 of file TGLCamera.cxx.
References TGLMatrix::CArr(), TGLRect::CArr(), Error, fCacheDirty, fModVM, fProjM, and fViewport.
Referenced by TGLAnnotation::Render(), ViewportDeltaToWorld(), and WorldDeltaToViewport().
TGLVector3 TGLCamera::WorldDeltaToViewport | ( | const TGLVertex3 & | worldRef, | |
const TGLVector3 & | worldDelta | |||
) | const |
Definition at line 408 of file TGLCamera.cxx.
References Error, fCacheDirty, v1, and WorldToViewport().
Referenced by TEveCaloLegoOverlay::Render().
TGLVertex3 TGLCamera::ViewportToWorld | ( | const TGLVertex3 & | viewportVertex, | |
TGLMatrix * | modviewMat = 0 | |||
) | const |
Definition at line 428 of file TGLCamera.cxx.
References TGLMatrix::CArr(), TGLRect::CArr(), Error, fCacheDirty, fModVM, fProjM, and fViewport.
Referenced by TGLEventHandler::HandleButton(), ViewportDeltaToWorld(), ViewportPlaneIntersection(), and ViewportToWorld().
Definition at line 477 of file TGLCamera.cxx.
References TPoint::GetX(), TPoint::GetY(), and ViewportToWorld().
TGLVector3 TGLCamera::ViewportDeltaToWorld | ( | const TGLVertex3 & | worldRef, | |
Double_t | viewportXDelta, | |||
Double_t | viewportYDelta, | |||
TGLMatrix * | modviewMat = 0 | |||
) | const |
Definition at line 525 of file TGLCamera.cxx.
References Error, fCacheDirty, TGLVertex3::Shift(), ViewportToWorld(), and WorldToViewport().
Referenced by TEveCaloLegoGL::DrawAxis3D(), TGLAxisPainterBox::DrawAxis3D(), and TGLViewer::DrawGuides().
std::pair< Bool_t, TGLVertex3 > TGLCamera::ViewportPlaneIntersection | ( | Double_t | viewportX, | |
Double_t | viewportY, | |||
const TGLPlane & | worldPlane | |||
) | const |
Definition at line 491 of file TGLCamera.cxx.
References Intersection(), kTRUE, and ViewportToWorld().
Referenced by ViewportPlaneIntersection().
std::pair< Bool_t, TGLVertex3 > TGLCamera::ViewportPlaneIntersection | ( | const TPoint & | viewport, | |
const TGLPlane & | worldPlane | |||
) | const |
Definition at line 513 of file TGLCamera.cxx.
References TPoint::GetX(), TPoint::GetY(), and ViewportPlaneIntersection().
Definition at line 194 of file TGLCamera.h.
References fViewport, and TGLRect::Height().
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), TGLEventHandler::HandleButton(), TGLRnrCtx::ProjectionMatrixPushIdentity(), TGLOverlayButton::Render(), and TEveCaloLegoOverlay::Render().
void TGLCamera::WindowToViewport | ( | TPoint & | point | ) | const [inline] |
void TGLCamera::WindowToViewport | ( | TGLRect & | rect | ) | const [inline] |
Definition at line 196 of file TGLCamera.h.
References fViewport, TGLRect::Height(), and TGLRect::Y().
void TGLCamera::WindowToViewport | ( | TGLVertex3 & | vertex | ) | const [inline] |
Definition at line 197 of file TGLCamera.h.
References fViewport, TGLRect::Height(), and TGLVertex3::Y().
Float_t TGLCamera::GetVAxisMinAngle | ( | ) | [inline] |
Definition at line 199 of file TGLCamera.h.
References fVAxisMinAngle.
Referenced by TEveLegoEventHandler::Rotate().
void TGLCamera::SetVAxisMinAngle | ( | Float_t | x | ) | [inline] |
virtual void TGLCamera::Configure | ( | Double_t | zoom, | |
Double_t | dolly, | |||
Double_t | center[3], | |||
Double_t | hRotate, | |||
Double_t | vRotate | |||
) | [pure virtual] |
Bool_t TGLCamera::OfInterest | ( | const TGLBoundingBox & | box, | |
Bool_t | ignoreSize | |||
) | const |
Definition at line 542 of file TGLCamera.cxx.
References box(), TGLBoundingBox::Diagonal(), fInterestBox, fLargestSeen, TGLBoundingBox::IsEmpty(), kFALSE, kOutside, kTRUE, and TGLBoundingBox::Overlap().
Referenced by TGLScene::RebuildSceneInfo().
Definition at line 607 of file TGLCamera.cxx.
References Error, TGLBoundingBox::Extents(), fgInterestBoxExpansion, fInterestBox, fInterestFrustum, fInterestFrustumAsBox, fPreviousInterestBox, Frustum(), gDebug, Info, TGLBoundingBox::IsEmpty(), kFALSE, kInside, kTRUE, TGLVector3::Mag(), TGLBoundingBox::Overlap(), TGLBoundingBox::Scale(), and TGLBoundingBox::Volume().
void TGLCamera::ResetInterest | ( | ) |
Definition at line 673 of file TGLCamera.cxx.
References fInterestBox, fLargestSeen, and TGLBoundingBox::SetEmpty().
void TGLCamera::DrawDebugAids | ( | ) | const |
Definition at line 760 of file TGLCamera.cxx.
References TGLBoundingBox::Draw(), EyeDirection(), EyePoint(), fInterestBox, fInterestFrustum, fInterestFrustumAsBox, fPreviousInterestBox, GL_LINES, glBegin(), glColor3d(), glEnd(), glVertex3dv(), and start.
Referenced by TGLViewer::DrawDebugInfo().
TGLCamera::ClassDef | ( | TGLCamera | , | |
0 | ||||
) |
TGLBoundingBox TGLCamera::Frustum | ( | Bool_t | asBox = kTRUE |
) | const [private] |
expansion c.f. aligned current frustum box
void TGLCamera::UpdateCache | ( | ) | const [protected] |
largest box diagonal seen in OfInterest() - used when bootstrapping interest box
virtual Bool_t TGLCamera::IsOrthographic | ( | ) | const [inline, virtual] |
virtual Bool_t TGLCamera::IsPerspective | ( | ) | const [inline, virtual] |
const TGLMatrix& TGLCamera::RefModelViewMatrix | ( | ) | const [inline] |
Bool_t TGLCamera::IsCacheDirty | ( | ) | const [inline] |
void TGLCamera::IncTimeStamp | ( | ) | [inline] |
UInt_t TGLCamera::TimeStamp | ( | ) | const [inline] |
void TGLCamera::SetViewport | ( | const TGLRect & | viewport | ) |
TGLRect& TGLCamera::RefViewport | ( | ) | [inline] |
const TGLRect& TGLCamera::RefViewport | ( | ) | const [inline] |
virtual void TGLCamera::Setup | ( | const TGLBoundingBox & | box, | |
Bool_t | reset = kTRUE | |||
) | [pure virtual] |
virtual void TGLCamera::Reset | ( | ) | [pure virtual] |
virtual Bool_t TGLCamera::Truck | ( | Int_t | xDelta, | |
Int_t | yDelta, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | [pure virtual] |
virtual void TGLCamera::Apply | ( | const TGLBoundingBox & | sceneBox, | |
const TGLRect * | pickRect = 0 | |||
) | const [pure virtual] |
Bool_t TGLCamera::AdjustAndClampVal | ( | Double_t & | val, | |
Double_t | min, | |||
Double_t | max, | |||
Int_t | screenShift, | |||
Int_t | screenShiftRange, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | const |
Double_t TGLCamera::AdjustDelta | ( | Double_t | screenShift, | |
Double_t | deltaFactor, | |||
Bool_t | mod1, | |||
Bool_t | mod2 | |||
) | const |
void TGLCamera::SetExternalCenter | ( | Bool_t | x | ) |
Bool_t TGLCamera::GetExternalCenter | ( | ) | [inline] |
Double_t* TGLCamera::GetCenterVec | ( | ) | [inline] |
void TGLCamera::SetFixDefCenter | ( | Bool_t | x | ) | [inline] |
Double_t* TGLCamera::GetFixDefCenterVec | ( | ) | [inline] |
Double_t TGLCamera::GetNearClip | ( | ) | const [inline] |
Double_t TGLCamera::GetFarClip | ( | ) | const [inline] |
const TGLMatrix& TGLCamera::GetCamBase | ( | ) | const [inline] |
const TGLMatrix& TGLCamera::GetCamTrans | ( | ) | const [inline] |
TGLMatrix& TGLCamera::RefCamBase | ( | ) | [inline] |
TGLMatrix& TGLCamera::RefCamTrans | ( | ) | [inline] |
Double_t TGLCamera::GetTheta | ( | ) | const |
TGLMatrix& TGLCamera::RefLastNoPickProjM | ( | ) | const [inline] |
TGLVertex3 TGLCamera::EyePoint | ( | ) | const |
TGLVector3 TGLCamera::EyeDirection | ( | ) | const |
TGLVertex3 TGLCamera::FrustumCenter | ( | ) | const |
const TGLPlane& TGLCamera::FrustumPlane | ( | EFrustumPlane | plane | ) | const |
EOverlap TGLCamera::FrustumOverlap | ( | const TGLBoundingBox & | box | ) | const |
EOverlap TGLCamera::ViewportOverlap | ( | const TGLBoundingBox & | box | ) | const |
TGLRect TGLCamera::ViewportRect | ( | const TGLBoundingBox & | box, | |
TGLBoundingBox::EFace | face | |||
) | const |
TGLRect TGLCamera::ViewportRect | ( | const TGLBoundingBox & | box, | |
const TGLBoundingBox::EFace * | face = 0 | |||
) | const |
TGLVertex3 TGLCamera::WorldToViewport | ( | const TGLVertex3 & | worldVertex, | |
TGLMatrix * | modviewMat = 0 | |||
) | const |
TGLVector3 TGLCamera::WorldDeltaToViewport | ( | const TGLVertex3 & | worldRef, | |
const TGLVector3 & | worldDelta | |||
) | const |
TGLVertex3 TGLCamera::ViewportToWorld | ( | const TGLVertex3 & | viewportVertex, | |
TGLMatrix * | modviewMat = 0 | |||
) | const |
TGLVector3 TGLCamera::ViewportDeltaToWorld | ( | const TGLVertex3 & | worldRef, | |
Double_t | viewportXDelta, | |||
Double_t | viewportYDelta, | |||
TGLMatrix * | modviewMat = 0 | |||
) | const |
std::pair<Bool_t, TGLVertex3> TGLCamera::ViewportPlaneIntersection | ( | Double_t | viewportX, | |
Double_t | viewportY, | |||
const TGLPlane & | worldPlane | |||
) | const |
std::pair<Bool_t, TGLVertex3> TGLCamera::ViewportPlaneIntersection | ( | const TPoint & | viewport, | |
const TGLPlane & | worldPlane | |||
) | const |
void TGLCamera::WindowToViewport | ( | TPoint & | point | ) | const [inline] |
void TGLCamera::WindowToViewport | ( | TGLRect & | rect | ) | const [inline] |
Definition at line 196 of file TGLCamera.h.
References fViewport, TGLRect::Height(), and TGLRect::Y().
void TGLCamera::WindowToViewport | ( | TGLVertex3 & | vertex | ) | const [inline] |
Definition at line 197 of file TGLCamera.h.
References fViewport, TGLRect::Height(), and TGLVertex3::Y().
Float_t TGLCamera::GetVAxisMinAngle | ( | ) | [inline] |
void TGLCamera::SetVAxisMinAngle | ( | Float_t | x | ) | [inline] |
virtual void TGLCamera::Configure | ( | Double_t | zoom, | |
Double_t | dolly, | |||
Double_t | center[3], | |||
Double_t | hRotate, | |||
Double_t | vRotate | |||
) | [pure virtual] |
Bool_t TGLCamera::OfInterest | ( | const TGLBoundingBox & | box, | |
Bool_t | ignoreSize | |||
) | const |
void TGLCamera::ResetInterest | ( | ) |
void TGLCamera::DrawDebugAids | ( | ) | const |
TGLCamera::ClassDef | ( | TGLCamera | , | |
0 | ||||
) |
TGLBoundingBox TGLCamera::fInterestFrustum [private] |
previous interest box (DEBUG)
Definition at line 61 of file TGLCamera.h.
Referenced by DrawDebugAids(), and UpdateInterest().
frustum basis of current interest box - NOT a true BB! (DEBUG)
Definition at line 62 of file TGLCamera.h.
Referenced by DrawDebugAids(), and UpdateInterest().
static const Double_t TGLCamera::fgInterestBoxExpansion [static, private] |
frustum basis (as box) of current interest box (DEBUG)
Definition at line 64 of file TGLCamera.h.
Referenced by UpdateInterest().
TGLMatrix TGLCamera::fCamBase [protected] |
Definition at line 75 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), GetCamBase(), GetTheta(), RefCamBase(), RotateRad(), SetCenterVec(), SetCenterVecWarp(), SetExternalCenter(), and TGLCamera().
TGLMatrix TGLCamera::fCamTrans [protected] |
tranformation to center and rotation from up to x vector
Definition at line 76 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), TGLOrthoCamera::Configure(), TGLPerspectiveCamera::Configure(), Dolly(), GetCamTrans(), GetTheta(), RefCamTrans(), TGLOrthoCamera::Reset(), TGLPerspectiveCamera::Reset(), RotateRad(), SetCenterVec(), SetExternalCenter(), and Truck().
Bool_t TGLCamera::fExternalCenter [protected] |
transformation relative to fCamTrans
Definition at line 77 of file TGLCamera.h.
Referenced by GetExternalCenter(), SetCenterVec(), SetCenterVecWarp(), SetExternalCenter(), TGLPerspectiveCamera::Setup(), and TGLOrthoCamera::Setup().
Bool_t TGLCamera::fFixDefCenter [protected] |
use external center insead of scene center
Definition at line 78 of file TGLCamera.h.
Referenced by SetFixDefCenter(), TGLPerspectiveCamera::Setup(), and TGLOrthoCamera::Setup().
TGLVector3 TGLCamera::fExtCenter [protected] |
use fixed default center
Definition at line 79 of file TGLCamera.h.
Referenced by SetCenterVec(), SetCenterVecWarp(), and SetExternalCenter().
TGLVector3 TGLCamera::fDefCenter [protected] |
external camera center
Definition at line 80 of file TGLCamera.h.
Referenced by SetCenterVec(), SetCenterVecWarp(), and SetExternalCenter().
TGLVector3 TGLCamera::fFDCenter [protected] |
deafult camera center
Definition at line 81 of file TGLCamera.h.
Referenced by GetFixDefCenterVec(), SetFixDefCenterVec(), TGLPerspectiveCamera::Setup(), and TGLOrthoCamera::Setup().
TGLVector3* TGLCamera::fCenter [protected] |
fixed deafult camera center
Definition at line 82 of file TGLCamera.h.
Referenced by GetCenterVec(), SetCenterVec(), SetCenterVecWarp(), and SetExternalCenter().
Double_t TGLCamera::fNearClip [mutable, protected] |
current camera center
Definition at line 84 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), GetNearClip(), and TGLPerspectiveCamera::Truck().
Double_t TGLCamera::fFarClip [mutable, protected] |
last applied near-clip
Definition at line 85 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), GetFarClip(), and TGLPerspectiveCamera::Truck().
Double_t TGLCamera::fDollyDefault [protected] |
last applied far-clip
Definition at line 88 of file TGLCamera.h.
Referenced by TGLOrthoCamera::Apply(), TGLOrthoCamera::Reset(), TGLPerspectiveCamera::Reset(), and TGLPerspectiveCamera::Setup().
Double_t TGLCamera::fDollyDistance [protected] |
default distnce from viewing centre
Definition at line 89 of file TGLCamera.h.
Referenced by Dolly(), TGLOrthoCamera::Reset(), and TGLPerspectiveCamera::Setup().
Float_t TGLCamera::fVAxisMinAngle [protected] |
unit distance for camera movement in fwd/bck direction
Definition at line 90 of file TGLCamera.h.
Referenced by GetVAxisMinAngle(), RotateRad(), and SetVAxisMinAngle().
Bool_t TGLCamera::fCacheDirty [mutable, protected] |
minimal allowed angle between up and fCamTrans Z vector
Definition at line 93 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), EyeDirection(), EyePoint(), Frustum(), FrustumCenter(), FrustumOverlap(), FrustumPlane(), IncTimeStamp(), IsCacheDirty(), UpdateCache(), ViewportDeltaToWorld(), ViewportRect(), ViewportToWorld(), WorldDeltaToViewport(), and WorldToViewport().
UInt_t TGLCamera::fTimeStamp [mutable, protected] |
cached items dirty?
Definition at line 94 of file TGLCamera.h.
Referenced by IncTimeStamp(), and TimeStamp().
TGLMatrix TGLCamera::fLastNoPickProjM [mutable, protected] |
timestamp
Definition at line 95 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), and RefLastNoPickProjM().
TGLMatrix TGLCamera::fProjM [mutable, protected] |
no-pick projection matrix (cached)
Definition at line 96 of file TGLCamera.h.
Referenced by TGLOrthoCamera::Truck(), UpdateCache(), ViewportRect(), ViewportToWorld(), and WorldToViewport().
TGLMatrix TGLCamera::fModVM [mutable, protected] |
projection matrix (cached)
Definition at line 97 of file TGLCamera.h.
Referenced by RefModelViewMatrix(), UpdateCache(), ViewportRect(), ViewportToWorld(), and WorldToViewport().
TGLMatrix TGLCamera::fClipM [mutable, protected] |
TGLPlane TGLCamera::fFrustumPlanes [mutable, protected] |
object space clip matrix (cached)
Definition at line 99 of file TGLCamera.h.
Referenced by EyeDirection(), EyePoint(), Frustum(), FrustumCenter(), FrustumOverlap(), FrustumPlane(), TGLCamera(), and UpdateCache().
TGLRect TGLCamera::fViewport [protected] |
frustum planes (cached)
Definition at line 101 of file TGLCamera.h.
Referenced by TGLPerspectiveCamera::Apply(), TGLOrthoCamera::Apply(), RefViewport(), Rotate(), TGLPerspectiveCamera::Setup(), SetViewport(), TGLOrthoCamera::Truck(), TGLPerspectiveCamera::Truck(), ViewportOverlap(), ViewportRect(), ViewportToWorld(), WindowToViewport(), and WorldToViewport().
TGLBoundingBox TGLCamera::fInterestBox [protected] |
viewport (GL coords - origin bottom left)
Definition at line 103 of file TGLCamera.h.
Referenced by DrawDebugAids(), OfInterest(), ResetInterest(), and UpdateInterest().
Double_t TGLCamera::fLargestSeen [mutable, protected] |
the interest box - created in UpdateInterest()
Definition at line 104 of file TGLCamera.h.
Referenced by OfInterest(), and ResetInterest().
static UInt_t TGLCamera::fgDollyDeltaSens [static, protected] |
Definition at line 110 of file TGLCamera.h.
TGLVector3* TGLCamera::fCenter [protected] |