A++ » INCLUDE » TGLOrthoCamera

class TGLOrthoCamera: public TGLCamera


TGLOrthoCamera

Orthographic projection camera. Currently limited to three types
defined at construction time - kXOY, kXOZ, kZOY - where this refers
to the viewport plane axis - e.g. kXOY has X axis horizontal, Y
vertical - i.e. looking down Z axis with Y vertical.

The plane types restriction could easily be removed to supported
arbitary ortho projections along any axis/orientation with free
rotations about them.


Function Members (Methods)

public:
virtual~TGLOrthoCamera()
voidTObject::AbstractMethod(const char* method) const
Bool_tTGLCamera::AdjustAndClampVal(Double_t& val, Double_t min, Double_t max, Int_t screenShift, Int_t screenShiftRange, Bool_t mod1, Bool_t mod2) const
Double_tTGLCamera::AdjustDelta(Double_t screenShift, Double_t deltaFactor, Bool_t mod1, Bool_t mod2) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidApply(const TGLBoundingBox& sceneBox, const TGLRect* pickRect = 0) const
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidConfigure(Double_t zoom, Double_t dolly, Double_t[3] center, Double_t hRotate, Double_t vRotate)
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual Bool_tDolly(Int_t delta, Bool_t mod1, Bool_t mod2)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
voidTGLCamera::DrawDebugAids() const
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
TGLVector3TGLCamera::EyeDirection() const
TGLVertex3TGLCamera::EyePoint() const
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
TGLVertex3TGLCamera::FrustumCenter() const
Rgl::EOverlapTGLCamera::FrustumOverlap(const TGLBoundingBox& box) const
const TGLPlane&TGLCamera::FrustumPlane(TGLCamera::EFrustumPlane plane) const
const TGLMatrix&TGLCamera::GetCamBase() const
const TGLMatrix&TGLCamera::GetCamTrans() const
Double_t*TGLCamera::GetCenterVec()
Bool_tGetDollyToZoom() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Bool_tGetEnableRotate() const
Bool_tTGLCamera::GetExternalCenter()
Double_tTGLCamera::GetFarClip() const
Double_t*TGLCamera::GetFixDefCenterVec()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
Double_tTGLCamera::GetNearClip() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Double_tTGLCamera::GetTheta() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Float_tTGLCamera::GetVAxisMinAngle()
Double_tGetZoom() const
Double_tGetZoomMax() const
Double_tGetZoomMin() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
voidTGLCamera::IncTimeStamp()
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTGLCamera::IsCacheDirty() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsOrthographic() const
virtual Bool_tTGLCamera::IsPerspective() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
Bool_tTGLCamera::OfInterest(const TGLBoundingBox& box, Bool_t ignoreSize) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TGLOrthoCamera&operator=(const TGLOrthoCamera&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
TGLMatrix&TGLCamera::RefCamBase()
TGLMatrix&TGLCamera::RefCamTrans()
TGLMatrix&TGLCamera::RefLastNoPickProjM() const
const TGLMatrix&TGLCamera::RefModelViewMatrix() const
TGLRect&TGLCamera::RefViewport()
const TGLRect&TGLCamera::RefViewport() const
virtual voidReset()
voidTObject::ResetBit(UInt_t f)
voidTGLCamera::ResetInterest()
virtual Bool_tRotate(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
virtual Bool_tTGLCamera::RotateArcBall(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
virtual Bool_tTGLCamera::RotateArcBallRad(Double_t hRotate, Double_t vRotate)
virtual Bool_tTGLCamera::RotateRad(Double_t hRotate, Double_t vRotate)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidTGLCamera::SetCenterVec(Double_t x, Double_t y, Double_t z)
voidTGLCamera::SetCenterVecWarp(Double_t x, Double_t y, Double_t z)
voidSetDollyToZoom(Bool_t x)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEnableRotate(Bool_t x)
voidTGLCamera::SetExternalCenter(Bool_t x)
voidTGLCamera::SetFixDefCenter(Bool_t x)
voidTGLCamera::SetFixDefCenterVec(Double_t x, Double_t y, Double_t z)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidSetup(const TGLBoundingBox& box, Bool_t reset = kTRUE)
voidTGLCamera::SetVAxisMinAngle(Float_t x)
voidTGLCamera::SetViewport(const TGLRect& viewport)
voidSetZoom(Double_t x)
voidSetZoomMax(Double_t z)
voidSetZoomMin(Double_t z)
voidSetZoomMinMax(Double_t min, Double_t max)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TGLOrthoCamera()
TGLOrthoCamera(const TGLOrthoCamera&)
TGLOrthoCamera(TGLOrthoCamera::EType type, const TGLVector3& hAxis, const TGLVector3& vAxis)
UInt_tTGLCamera::TimeStamp() const
virtual Bool_tTruck(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
Bool_tTGLCamera::UpdateInterest(Bool_t force)
virtual voidTObject::UseCurrentStyle()
TGLVector3TGLCamera::ViewportDeltaToWorld(const TGLVertex3& worldRef, Double_t viewportXDelta, Double_t viewportYDelta, TGLMatrix* modviewMat = 0) const
Rgl::EOverlapTGLCamera::ViewportOverlap(const TGLBoundingBox& box) const
pair<Bool_t,TGLVertex3>TGLCamera::ViewportPlaneIntersection(const TPoint& viewport, const TGLPlane& worldPlane) const
pair<Bool_t,TGLVertex3>TGLCamera::ViewportPlaneIntersection(Double_t viewportX, Double_t viewportY, const TGLPlane& worldPlane) const
TGLRectTGLCamera::ViewportRect(const TGLBoundingBox& box, TGLBoundingBox::EFace face) const
TGLRectTGLCamera::ViewportRect(const TGLBoundingBox& box, const TGLBoundingBox::EFace* face = 0) const
TGLLine3TGLCamera::ViewportToWorld(const TPoint& viewport) const
TGLVertex3TGLCamera::ViewportToWorld(const TGLVertex3& viewportVertex, TGLMatrix* modviewMat = 0) const
TGLLine3TGLCamera::ViewportToWorld(Double_t viewportX, Double_t viewportY) const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
voidTGLCamera::WindowToViewport(TPoint& point) const
voidTGLCamera::WindowToViewport(TGLRect& rect) const
voidTGLCamera::WindowToViewport(TGLVertex3& vertex) const
voidTGLCamera::WindowToViewport(Int_t&, Int_t& y) const
TGLVector3TGLCamera::WorldDeltaToViewport(const TGLVertex3& worldRef, const TGLVector3& worldDelta) const
TGLVertex3TGLCamera::WorldToViewport(const TGLVertex3& worldVertex, TGLMatrix* modviewMat = 0) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual Bool_tZoom(Int_t delta, Bool_t mod1, Bool_t mod2)
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
voidTGLCamera::UpdateCache() const

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TGLCamera::EFrustumPlaneTGLCamera::kBottom
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TGLCamera::EFrustumPlaneTGLCamera::kFar
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TGLCamera::EFrustumPlaneTGLCamera::kLeft
static TObject::EStatusBitsTObject::kMustCleanup
static TGLCamera::EFrustumPlaneTGLCamera::kNear
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TGLCamera::EFrustumPlaneTGLCamera::kPlanesPerFrustum
static TGLCamera::EFrustumPlaneTGLCamera::kRight
static TObject::(anonymous)TObject::kSingleKey
static TGLCamera::EFrustumPlaneTGLCamera::kTop
static TObject::(anonymous)TObject::kWriteDelete
static TGLOrthoCamera::ETypekXOY
static TGLOrthoCamera::ETypekXOZ
static TGLOrthoCamera::ETypekXnOY
static TGLOrthoCamera::ETypekXnOZ
static TGLOrthoCamera::ETypekZOY
static TGLOrthoCamera::ETypekZnOY
static TObject::(anonymous)TObject::kZombie
protected:
Bool_tTGLCamera::fCacheDirty! cached items dirty?
TGLMatrixTGLCamera::fCamBasetranformation to center and rotation from up to x vector
TGLMatrixTGLCamera::fCamTranstransformation relative to fCamTrans
TGLVector3*TGLCamera::fCenter! current camera center
TGLMatrixTGLCamera::fClipM! object space clip matrix (cached)
TGLVector3TGLCamera::fDefCenterdefault camera center
Double_tTGLCamera::fDollyDefaultdefault distnce from viewing centre
Double_tTGLCamera::fDollyDistanceunit distance for camera movement in fwd/bck direction
TGLVector3TGLCamera::fExtCenterexternal camera center
Bool_tTGLCamera::fExternalCenteruse external center insead of scene center
TGLVector3TGLCamera::fFDCenterfixed default camera center
Double_tTGLCamera::fFarClip! last applied far-clip
Bool_tTGLCamera::fFixDefCenteruse fixed default center
TGLPlaneTGLCamera::fFrustumPlanes[6]! frustum planes (cached)
TGLBoundingBoxTGLCamera::fInterestBox! the interest box - created in UpdateInterest()
Double_tTGLCamera::fLargestSeen! largest box diagonal seen in OfInterest() - used when
TGLMatrixTGLCamera::fLastNoPickProjM! no-pick projection matrix (cached)
TGLMatrixTGLCamera::fModVM! modelView matrix (cached)
Double_tTGLCamera::fNearClip! last applied near-clip
TGLMatrixTGLCamera::fProjM! projection matrix (cached)
UInt_tTGLCamera::fTimeStamp! timestamp
Float_tTGLCamera::fVAxisMinAngleminimal allowed angle between up and fCamTrans Z vector
TGLRectTGLCamera::fViewport! viewport (GL coords - origin bottom left)
Bool_tTGLCamera::fWasArcBalledset when arc-ball rotation is used
static UInt_tTGLCamera::fgDollyDeltaSens
private:
Double_tfDefXSize! x, y size of scene from camera view
Double_tfDefYSize! x, y size of scene from camera view
Bool_tfDollyToZoomzoom when dolly is requested
Bool_tfEnableRotateenable rotation
TGLOrthoCamera::ETypefTypecamera type
TGLBoundingBoxfVolume! scene volume
Double_tfZoomcurrent zoom
Double_tfZoomDefaultdefault zoom factor
Double_tfZoomMaxmaximum zoom factor
Double_tfZoomMinminimum zoom factor
static UInt_tfgZoomDeltaSens

Class Charts

Inheritance Chart:
TObject
TGLCamera
TGLOrthoCamera

Function documentation

TGLOrthoCamera()
TGLOrthoCamera(TGLOrthoCamera::EType type, const TGLVector3& hAxis, const TGLVector3& vAxis)
virtual ~TGLOrthoCamera()
Bool_t IsOrthographic() const
{ return kTRUE; }
void Setup(const TGLBoundingBox& box, Bool_t reset = kTRUE)
void Reset()
Bool_t Dolly(Int_t delta, Bool_t mod1, Bool_t mod2)
Bool_t Zoom(Int_t delta, Bool_t mod1, Bool_t mod2)
Bool_t Truck(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
Bool_t Rotate(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2)
void Apply(const TGLBoundingBox& sceneBox, const TGLRect* pickRect = 0) const
void Configure(Double_t zoom, Double_t dolly, Double_t[3] center, Double_t hRotate, Double_t vRotate)
 External scripting control
   void Configure(Double_t left, Double_t right, Double_t top, Double_t bottom);
{ fEnableRotate = x; }
Bool_t GetEnableRotate() const
{ return fEnableRotate; }
Double_t GetZoomMin() const
{ return fZoomMin; }
Double_t GetZoomMax() const
{ return fZoomMax; }
void SetZoomMin(Double_t z)
void SetZoomMax(Double_t z)
void SetZoomMinMax(Double_t min, Double_t max)
{ SetZoomMin(min); SetZoomMax(max); }
void SetDollyToZoom(Bool_t x)
{ fDollyToZoom = x; }
Bool_t GetDollyToZoom() const
{ return fDollyToZoom; }
void SetZoom(Double_t x)
{ fZoom = x; }
Double_t GetZoom() const
{ return fZoom; }