12 #ifndef ROOT_TTablePadView3D
13 #define ROOT_TTablePadView3D
40 Double_t fViewBoxMin[3];
41 Double_t fViewBoxMax[3];
42 Double_t fTranslate[3];
43 Double_t fExtraTranslate[3];
45 Double_t fExtraAngles[3];
46 Double_t fAnglFactor[3];
49 void Init(TVirtualPad *pad) {
51 for(UInt_t i=0; i<3; ++i) {
55 fExtraTranslate[i] = 0;
66 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
67 TVirtualPad *GetPad()
const {
return fParent; }
68 virtual void Paint(Option_t *option=
"");
69 virtual void Size(Int_t width, Int_t height);
70 virtual void PaintBeginModel(Option_t *opt=
"");
71 virtual void PaintEnd(Option_t *opt=
"");
72 virtual void PaintScene(Option_t *opt=
"");
73 virtual void PaintPolyMarker(TPolyMarker3D *marker, Option_t *opt=
"");
74 virtual void PaintPolyLine(TPolyLine3D *line, Option_t *opt=
"");
75 virtual void PaintPoints3D(
const TPoints3DABC *points,Option_t *opt=
"");
76 virtual void PushMatrix() { }
77 virtual void PopMatrix() { }
78 virtual void SetAttNode(TNode *node, Option_t *opt=
"");
79 virtual void SetLineAttr(Color_t color, Int_t width, Option_t *opt=
"");
80 void SetPad(TVirtualPad *pad=0) { fParent = pad; }
81 virtual void UpdateNodeMatrix(TNode *node, Option_t *opt=
"");
82 virtual void UpdatePosition(Double_t x,Double_t y,Double_t z,TRotMatrix *matrix, Option_t *opt=
"");
83 virtual void UpdateView() { }
87 virtual void GetRange(Double_t min[3], Double_t max[3])
const;
88 virtual void SetRange(Double_t min[3], Double_t max[3]);
90 virtual void GetShift(Double_t main_shift[3], Double_t extra_shift[3])
const;
91 virtual void SetShift(Double_t main_shift[3], Double_t extra_shift[3]);
93 virtual void GetAngles(Double_t main_angles[3], Double_t extra_angles[3])
const;
94 virtual void SetAngles(Double_t main_angles[3], Double_t extra_angles[3]);
99 virtual Float_t GetScale(){
return fScale;}
100 virtual void SetScale(Float_t scale);
106 inline void TTablePadView3D::ExecuteEvent(Int_t, Int_t, Int_t) { }
107 inline void TTablePadView3D::Paint(Option_t *) { }
108 inline void TTablePadView3D::Size(Int_t, Int_t) { }
109 inline void TTablePadView3D::PaintBeginModel(Option_t *) { }
110 inline void TTablePadView3D::PaintEnd(Option_t *) { }
111 inline void TTablePadView3D::PaintScene(Option_t *) { }
112 inline void TTablePadView3D::PaintPolyMarker(TPolyMarker3D *, Option_t *) { }
113 inline void TTablePadView3D::PaintPolyLine(TPolyLine3D *, Option_t *) { }
114 inline void TTablePadView3D::PaintPoints3D(
const TPoints3DABC *,Option_t *){ }
115 inline void TTablePadView3D::SetAttNode(TNode *, Option_t *) { }
116 inline void TTablePadView3D::SetLineAttr(Color_t ,Int_t ,Option_t *) { }
117 inline void TTablePadView3D::UpdateNodeMatrix(TNode *, Option_t *) { }
118 inline void TTablePadView3D::UpdatePosition(Double_t ,Double_t ,Double_t ,TRotMatrix *, Option_t *){ }
virtual void SetAnglesFactors(Double_t factors[3])
set view angles factors
virtual void SetRange(Double_t min[3], Double_t max[3])
set view range
virtual void GetRange(Double_t min[3], Double_t max[3]) const
get view range
virtual void SetScale(Float_t scale)
set view scale
virtual ~TTablePadView3D()
Delete 3D viewer.
virtual void SetAngles(Double_t main_angles[3], Double_t extra_angles[3])
set view angles
virtual void SetShift(Double_t main_shift[3], Double_t extra_shift[3])
set shift parameters
virtual void GetAnglesFactors(Double_t factors[3]) const
get view angles factors
virtual void GetShift(Double_t main_shift[3], Double_t extra_shift[3]) const
get shift parameters
virtual void GetAngles(Double_t main_angles[3], Double_t extra_angles[3]) const
get view angles