Warning, file /include/root/TGLOrthoCamera.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TGLOrthoCamera
0013 #define ROOT_TGLOrthoCamera
0014
0015 #include "TGLCamera.h"
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033 class TGLPaintDevice;
0034
0035 class TGLOrthoCamera : public TGLCamera
0036 {
0037 public:
0038 enum EType { kZOY, kXOZ, kXOY,
0039 kZnOY, kXnOZ, kXnOY, kZOX, kZnOX};
0040 private:
0041
0042 EType fType;
0043 Bool_t fEnableRotate;
0044 Bool_t fDollyToZoom;
0045
0046
0047 Double_t fZoomMin;
0048 Double_t fZoomDefault;
0049 Double_t fZoomMax;
0050 TGLBoundingBox fVolume;
0051
0052
0053 Double_t fDefXSize, fDefYSize;
0054 Double_t fZoom;
0055
0056 static UInt_t fgZoomDeltaSens;
0057
0058 public:
0059 TGLOrthoCamera();
0060 TGLOrthoCamera(EType type, const TGLVector3 & hAxis, const TGLVector3 & vAxis);
0061 ~TGLOrthoCamera() override;
0062
0063 Bool_t IsOrthographic() const override { return kTRUE; }
0064
0065 void Setup(const TGLBoundingBox & box, Bool_t reset=kTRUE) override;
0066 void Reset() override;
0067
0068 Bool_t Dolly(Int_t delta, Bool_t mod1, Bool_t mod2) override;
0069 Bool_t Zoom (Int_t delta, Bool_t mod1, Bool_t mod2) override;
0070 using TGLCamera::Truck;
0071 Bool_t Truck(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2) override;
0072 Bool_t Rotate(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mod2) override;
0073 void Apply(const TGLBoundingBox & sceneBox, const TGLRect * pickRect = nullptr) const override;
0074
0075
0076
0077 void Configure(Double_t zoom, Double_t dolly, Double_t center[3],
0078 Double_t hRotate, Double_t vRotate) override;
0079
0080 void SetEnableRotate(Bool_t x) { fEnableRotate = x; }
0081 Bool_t GetEnableRotate() const { return fEnableRotate; }
0082
0083 Double_t GetZoomMin() const { return fZoomMin; }
0084 Double_t GetZoomMax() const { return fZoomMax; }
0085 void SetZoomMin(Double_t z);
0086 void SetZoomMax(Double_t z);
0087 void SetZoomMinMax(Double_t min, Double_t max) { SetZoomMin(min); SetZoomMax(max); }
0088
0089 void SetDollyToZoom(Bool_t x) { fDollyToZoom = x; }
0090 Bool_t GetDollyToZoom() const { return fDollyToZoom; }
0091
0092 void SetZoom(Double_t x) { fZoom = x; }
0093 Double_t GetZoom() const { return fZoom; }
0094
0095 ClassDefOverride(TGLOrthoCamera,1)
0096 };
0097
0098 #endif