BOSS 7.0.7
BESIII Offline Software System
Loading...
Searching...
No Matches
Bes2DView Class Reference

#include <Bes2DView.h>

+ Inheritance diagram for Bes2DView:

Public Member Functions

 Bes2DView ()
 
virtual ~Bes2DView ()
 
virtual void ClearPad ()
 
virtual void DrawLabel ()
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual Int_t GetRSign (Float_t Phi)
 
virtual void UpdateView (Bool_t resetview=kFALSE)
 
virtual void WCtoNDC (const Float_t *pw, Float_t *pn)
 
virtual void WCtoNDC (const Double_t *pw, Double_t *pn)
 
virtual void NDCtoWC (const Float_t *pn, Float_t *pw)
 
virtual void NDCtoWC (const Double_t *pn, Double_t *pw)
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 
void Set2DViewType (Int_t viewType)
 
Int_t Get2DViewType ()
 
Float_t GetMarkerSize ()
 
void Zoom ()
 
void UnZoom ()
 
void Center ()
 
void Move (Int_t px, Int_t py)
 
void Reset ()
 
void SetMarkerSize (Float_t size)
 
Bool_t GetFishEyeStatus ()
 
Bool_t GetFishEye ()
 
void SetFishEye (Bool_t input=0)
 
void PrintCurrent ()
 
virtual void Centered ()
 
virtual void Front ()
 
virtual void Side ()
 
virtual void Top ()
 
virtual void ZoomMove ()
 
virtual void AdjustScales (TVirtualPad *pad=0)
 
virtual void Delete (Option_t *option)
 
virtual void DrawClass ()
 
virtual TObject * DrawClone (Option_t *option)
 
virtual void Dump ()
 
virtual void Inspect ()
 
virtual void SetDrawOption (Option_t *option)
 
virtual void SetLineAttributes ()
 
virtual void SetZoomFactor (Double_t factor)
 
virtual Double_t GetZoomFactor ()
 
BesStatusGetStatusCurrent ()
 
- Public Member Functions inherited from BesTView
 BesTView ()
 
 BesTView (Int_t system)
 
 BesTView (const Float_t *rmin, const Float_t *rmax, Int_t system=1)
 
 BesTView (const Double_t *rmin, const Double_t *rmax, Int_t system=1)
 
virtual ~BesTView ()
 
virtual void AxisVertex (Double_t ang, Double_t *av, Int_t &ix1, Int_t &ix2, Int_t &iy1, Int_t &iy2, Int_t &iz1, Int_t &iz2)
 
virtual void DefinePerspectiveView ()
 
virtual void DefineViewDirection (const Double_t *s, const Double_t *c, Double_t cosphi, Double_t sinphi, Double_t costhe, Double_t sinthe, Double_t cospsi, Double_t sinpsi, Double_t *tnorm, Double_t *tback)
 
virtual void DrawOutlineCube (TList *outline, Double_t *rmin, Double_t *rmax)
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual void ExecuteRotateView (Int_t event, Int_t px, Int_t py)
 
virtual void FindScope (Double_t *scale, Double_t *center, Int_t &irep)
 
virtual Int_t GetDistancetoAxis (Int_t axis, Int_t px, Int_t py, Double_t &ratio)
 
Double_t GetDview () const
 
Double_t GetDproj () const
 
Double_t GetExtent () const
 
Bool_t GetAutoRange ()
 
Double_t GetLatitude ()
 
Double_t GetLongitude ()
 
Double_t GetPsi ()
 
virtual void GetRange (Float_t *min, Float_t *max)
 
virtual void GetRange (Double_t *min, Double_t *max)
 
Double_t * GetRmax ()
 
Double_t * GetRmin ()
 
TSeqCollection * GetOutline ()
 
Double_t * GetTback ()
 
Double_t * GetTN ()
 
Double_t * GetTnorm ()
 
Int_t GetSystem ()
 
void GetWindow (Double_t &u0, Double_t &v0, Double_t &du, Double_t &dv) const
 
Double_t GetWindowWidth () const
 
Double_t GetWindowHeight () const
 
virtual void FindNormal (Double_t x, Double_t y, Double_t z, Double_t &zn)
 
virtual void FindPhiSectors (Int_t iopt, Int_t &kphi, Double_t *aphi, Int_t &iphi1, Int_t &iphi2)
 
virtual void FindThetaSectors (Int_t iopt, Double_t phi, Int_t &kth, Double_t *ath, Int_t &ith1, Int_t &ith2)
 
Bool_t IsClippedNDC (Double_t *p) const
 
Bool_t IsPerspective () const
 
Bool_t IsViewChanged () const
 
virtual void NDCtoWC (const Float_t *pn, Float_t *pw)
 
virtual void NDCtoWC (const Double_t *pn, Double_t *pw)
 
virtual void NormalWCtoNDC (const Float_t *pw, Float_t *pn)
 
virtual void NormalWCtoNDC (const Double_t *pw, Double_t *pn)
 
virtual void PadRange (Int_t rback)
 
void ResizePad ()
 
virtual void SetAutoRange (Bool_t autorange=kTRUE)
 
virtual void SetAxisNDC (const Double_t *x1, const Double_t *x2, const Double_t *y1, const Double_t *y2, const Double_t *z1, const Double_t *z2)
 
void SetDefaultWindow ()
 
void SetDview (Double_t dview)
 
void SetDproj (Double_t dproj)
 
void SetLatitude (Double_t latitude)
 
void SetLongitude (Double_t longitude)
 
void SetPsi (Double_t psi)
 
virtual void SetOutlineToCube ()
 
virtual void SetParallel ()
 
virtual void SetPerspective ()
 
virtual void SetRange (const Double_t *min, const Double_t *max)
 
virtual void SetRange (Double_t x0, Double_t y0, Double_t z0, Double_t x1, Double_t y1, Double_t z1, Int_t flag=0)
 
virtual void SetSystem (Int_t system)
 
virtual void SetView (Double_t longitude, Double_t latitude, Double_t psi, Int_t &irep)
 
void SetViewChanged (Bool_t flag=kTRUE)
 
void SetWindow (Double_t u0, Double_t v0, Double_t du, Double_t dv)
 
virtual void WCtoNDC (const Float_t *pw, Float_t *pn)
 
virtual void WCtoNDC (const Double_t *pw, Double_t *pn)
 
void MoveFocus (Double_t *center, Double_t dx, Double_t dy, Double_t dz, Int_t nsteps=10, Double_t dlong=0, Double_t dlat=0, Double_t dpsi=0)
 
virtual void MoveViewCommand (Char_t chCode, Int_t count=1)
 
void MoveWindow (Char_t option)
 
virtual void AdjustScales (TVirtualPad *pad=0)
 
virtual void Centered3DImages (TVirtualPad *pad=0)
 
virtual void Centered ()
 
virtual void FrontView (TVirtualPad *pad=0)
 
virtual void Front ()
 
virtual void ZoomIn ()
 
virtual void ZoomOut ()
 
virtual void ZoomView (TVirtualPad *pad=0, Double_t zoomFactor=1.25)
 
virtual void UnzoomView (TVirtualPad *pad=0, Double_t unZoomFactor=1.25)
 
virtual void RotateView (Double_t phi, Double_t theta, TVirtualPad *pad=0)
 
virtual void SideView (TVirtualPad *pad=0)
 
virtual void Side ()
 
virtual void TopView (TVirtualPad *pad=0)
 
virtual void Top ()
 
virtual void ToggleRulers (TVirtualPad *pad=0)
 
virtual void ShowAxis ()
 
virtual void ToggleZoom (TVirtualPad *pad=0)
 
virtual void ZoomMove ()
 
virtual void Zoom ()
 
virtual void UnZoom ()
 
 ClassDef (BesTView, 2)
 

Additional Inherited Members

- Public Types inherited from BesTView
enum  { kPerspective = BIT(6) }
 
- Static Public Member Functions inherited from BesTView
static void AdjustPad (TVirtualPad *pad=0)
 
- Protected Member Functions inherited from BesTView
 BesTView (const BesTView &)
 Set to TRUE after ExecuteRotateView.
 
BesTViewoperator= (const BesTView &)
 
void ResetView (Double_t longitude, Double_t latitude, Double_t psi, Int_t &irep)
 
- Protected Attributes inherited from BesTView
Double_t fLatitude
 
Double_t fLongitude
 
Double_t fPsi
 
Double_t fDview
 
Double_t fDproj
 
Double_t fUpix
 
Double_t fVpix
 
Double_t fTN [16]
 
Double_t fTB [16]
 
Double_t fRmax [3]
 
Double_t fRmin [3]
 
Double_t fUVcoord [4]
 
Double_t fTnorm [16]
 
Double_t fTback [16]
 
Double_t fX1 [3]
 
Double_t fX2 [3]
 
Double_t fY1 [3]
 
Double_t fY2 [3]
 
Double_t fZ1 [3]
 
Double_t fZ2 [3]
 
Int_t fSystem
 
TSeqCollection * fOutline
 
Bool_t fDefaultOutline
 
Bool_t fAutoRange
 
Bool_t fChanged
 

Detailed Description

Definition at line 25 of file Bes2DView.h.

Constructor & Destructor Documentation

◆ Bes2DView()

Bes2DView::Bes2DView ( )

◆ ~Bes2DView()

Bes2DView::~Bes2DView ( )
virtual

Definition at line 83 of file Bes2DView.cxx.

83 {
84 //
85 // Bes2DView default destructor
86 if ( gDebug ) cout << "Bes2DView default dtor called" << endl;
87
88 delete fLabel;
89
90 delete fStatus3D;
91 delete fStatusXY;
92 delete fStatusZR;
93 delete fStatusCurrent;
94
95}

Member Function Documentation

◆ AdjustScales()

virtual void Bes2DView::AdjustScales ( TVirtualPad *  pad = 0)
inlinevirtual

Reimplemented from BesTView.

Definition at line 112 of file Bes2DView.h.

virtual void AdjustScales(TVirtualPad *pad=0)
Definition: BesTView.cxx:1737

◆ Center()

void Bes2DView::Center ( )

Definition at line 189 of file Bes2DView.cxx.

189 {
190 //
191 // Center view
192 /*
193 if ( fViewType & k3DView ){
194 this->Centered();
195 } else {
196 */
197 Double_t xrange, yrange;
198 xrange = gPad->GetX2() - gPad->GetX1();
199 yrange = gPad->GetY2() - gPad->GetY1();
200 gPad->Range(-xrange/2, -yrange/2, xrange/2, yrange/2);
201 gPad->Modified();
202}

Referenced by Reset().

◆ Centered()

virtual void Bes2DView::Centered ( )
inlinevirtual

Reimplemented from BesTView.

Definition at line 106 of file Bes2DView.h.

virtual void Centered()
Definition: BesTView.h:176

◆ ClearPad()

void Bes2DView::ClearPad ( )
virtual

Definition at line 99 of file Bes2DView.cxx.

99 {
100 //
101 // Clear current without deleting this view
102 //
103 // Probably this doesn't work for the postscript output
104 // Look at TPad::Clear() for more details
105 if ( gDebug ) cout << "Bes2DView::ClearPad called" << endl;
106 if ( gPad->GetListOfPrimitives() ) gPad->GetListOfPrimitives()->Clear();
107}

◆ Delete()

virtual void Bes2DView::Delete ( Option_t *  option)
inlinevirtual

Definition at line 113 of file Bes2DView.h.

113{ BesTView::Delete(option); }

◆ DrawClass()

virtual void Bes2DView::DrawClass ( )
inlinevirtual

Definition at line 114 of file Bes2DView.h.

114{ BesTView::DrawClass(); }

◆ DrawClone()

virtual TObject * Bes2DView::DrawClone ( Option_t *  option)
inlinevirtual

Definition at line 115 of file Bes2DView.h.

115{ return BesTView::DrawClone(option); }

◆ DrawLabel()

void Bes2DView::DrawLabel ( )
virtual

Definition at line 257 of file Bes2DView.cxx.

257 {
258 //
259 // Draw label for current view
260
261 fLabel->SetX1NDC(0.05);
262 fLabel->SetX2NDC(0.20);
263 fLabel->SetY1NDC(0.05);
264 fLabel->SetY2NDC(0.12);
265
266 switch (f2DViewType) {
267 //case k3DView:
268 //fLabel->SetLabel("3D View");
269 //break;
270 case 0:
271 fLabel->SetLabel("XY View");
272 break;
273 case 1:
274 fLabel->SetLabel("ZR View");
275 break;
276 }
277 fLabel->Draw("BR,NDC,SAME");
278}

◆ Dump()

virtual void Bes2DView::Dump ( )
inlinevirtual

Definition at line 118 of file Bes2DView.h.

118{ BesTView::Dump(); }

◆ ExecuteEvent()

void Bes2DView::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Reimplemented from BesTView.

Definition at line 111 of file Bes2DView.cxx.

111 {
112 //
113 // Execute mouse events
114 if ( gDebug ) cout << "Bes2DView::ExecuteEvent called" << endl;
115 //cout << "f2DViewType " << f2DViewType << " k3DView " << k3DView << endl;
116
117 /*
118 if ( fViewType & k3DView ) {
119 ExecuteRotateView(event, px, py);
120 } else {
121 */
122
123 // Editor mode
124 if (gROOT->GetEditorMode()) {
125 cout << "ROOT" << endl;
126 gPad->ExecuteEvent(event,px,py);
127 return;
128 }
129
130 static Double_t xmin, ymin, xmax, ymax, x0, y0;
131 Double_t dx, dy, x, y;
132 switch (event) {
133
134 case kButton1Down:
135 gPad->SetCursor(kMove);
136 // Remember position of pointer
137 xmin = gPad->GetX1();
138 ymin = gPad->GetY1();
139 xmax = gPad->GetX2();
140 ymax = gPad->GetY2();
141 x0 = gPad->AbsPixeltoX(px);
142 y0 = gPad->AbsPixeltoY(py);
143 break;
144
145 case kButton1Motion:
146 gPad->SetCursor(kMove);
147
148 case kButton1Up:
149 // Set new pad range
150 x = gPad->AbsPixeltoX(px);
151 y = gPad->AbsPixeltoY(py);
152 dx = -(x - x0);
153 dy = -(y - y0);
154 //((TPad*)gPad)->SetNoAspect(kTRUE);
155 gPad->Range(xmin+dx, ymin+dy, xmax+dx, ymax+dy);
156 //((TPad*)gPad)->SetNoAspect(kFALSE);
157 gPad->Modified();
158 break;
159
160 default:
161 gPad->SetCursor(kCross);
162 }
163}
double y[1000]
double x[1000]

◆ Front()

virtual void Bes2DView::Front ( )
inlinevirtual

Reimplemented from BesTView.

Definition at line 107 of file Bes2DView.h.

107{ BesTView::Top(); }
virtual void Top()
Definition: BesTView.h:180

◆ Get2DViewType()

Int_t Bes2DView::Get2DViewType ( )
inline

Definition at line 56 of file Bes2DView.h.

56{ return f2DViewType; }

◆ GetFishEye()

Bool_t Bes2DView::GetFishEye ( )
inline

Definition at line 89 of file Bes2DView.h.

89{ return fFishEye; }

◆ GetFishEyeStatus()

Bool_t Bes2DView::GetFishEyeStatus ( )
inline

Definition at line 88 of file Bes2DView.h.

88{ return fStatusCurrent->fFishEye; }
Bool_t fFishEye
visibility flag for Ext Tracks
Definition: BesStatus.h:127

◆ GetMarkerSize()

Float_t Bes2DView::GetMarkerSize ( )
inline

Definition at line 57 of file Bes2DView.h.

57{ return fMarkerSize;}

◆ GetObjectInfo()

char * Bes2DView::GetObjectInfo ( Int_t  px,
Int_t  py 
) const
virtual

Definition at line 426 of file Bes2DView.cxx.

426 {
427 //
428 // Returns string containing info about the object at position (px,py).
429 Double_t pw[3];
430 //((TPad*)gPad)->PixeltoWC(px, py, pw);
431
432 static char info[64];
433 if ( f2DViewType == 1 ) {
434 sprintf(info, "z=%-.3fcm, r=%-.3fcm", pw[0], pw[1]);
435 return info;
436 } else {
437 sprintf(info, "x=%-.3fcm, y=%-.3fcm", pw[0], pw[1]);
438 return info;
439 }
440}
sprintf(cut,"kal_costheta0_em>-0.93&&kal_costheta0_em<0.93&&kal_pxy0_em>=0.05+%d*0.1&&kal_pxy0_em<0.15+%d*0.1&&NGch>=2", j, j)

◆ GetRSign()

Int_t Bes2DView::GetRSign ( Float_t  Phi)
virtual

Definition at line 224 of file Bes2DView.cxx.

224 {
225 //
226 // Get sign of the R coordinate (ZR view)
227 // for a given phi (in radians)
228 Int_t Sign;
229
230 // Convert to deg, because phi range is given in degrees
231 Float_t Phi2 = (Phi - 2*TMath::Pi()*Int_t(Phi/(2*TMath::Pi())))
232 * 180./TMath::Pi();
233 if ( Phi2 < 0 ) Phi2 += 360;
234 if ( Phi2 >= fStatusCurrent->fPhiRangeMin && Phi2 < fStatusCurrent->fPhiRangeMax ) {
235 Sign = 1;
236 } else {
237 Sign = -1;
238 }
239 return Sign;
240}
double Phi(RecMdcKalTrack *trk)
Float_t fPhiRangeMin
flags for fish eye view
Definition: BesStatus.h:131

◆ GetStatusCurrent()

BesStatus * Bes2DView::GetStatusCurrent ( )
inline

Definition at line 127 of file Bes2DView.h.

127{ return fStatusCurrent; };

◆ GetZoomFactor()

virtual Double_t Bes2DView::GetZoomFactor ( )
inlinevirtual

Definition at line 126 of file Bes2DView.h.

126{ return fZoomFactor; }

◆ Inspect()

virtual void Bes2DView::Inspect ( )
inlinevirtual

Definition at line 119 of file Bes2DView.h.

119{ BesTView::Inspect(); }

◆ Move()

void Bes2DView::Move ( Int_t  px,
Int_t  py 
)

Definition at line 167 of file Bes2DView.cxx.

167 {
168 //
169 // Move (px, py in pixel coordinates)
170 Double_t x1, y1, x2, y2, dx, dy, x, y, x0, y0;
171 x1 = gPad->GetX1();
172 y1 = gPad->GetY1();
173 x2 = gPad->GetX2();
174 y2 = gPad->GetY2();
175 x0 = gPad->PixeltoX(0);
176 y0 = gPad->PixeltoY(0);
177 x = gPad->PixeltoX(px);
178 y = gPad->PixeltoY(py);
179 dx = -(x - x0);
180 dy = -(y - y0);
181 //((TPad*)gPad)->SetNoAspect(kTRUE);
182 gPad->Range(x1+dx, y1+dy, x2+dx, y2+dy);
183 //((TPad*)gPad)->SetNoAspect(kFALSE);
184 gPad->Modified();
185}

◆ NDCtoWC() [1/2]

void Bes2DView::NDCtoWC ( const Double_t *  pn,
Double_t *  pw 
)
virtual

Reimplemented from BesTView.

Definition at line 387 of file Bes2DView.cxx.

387 {
388 //
389 // Transform back from NDCs
390 Double_t p[3];
391 if (f2DViewType == 0) { // XYView
392 p[0] = pn[0];
393 p[1] = pn[1];
394 p[2] = pn[2];
395 }
396 else { // ZRView
397 p[0] = pn[2];
398 p[1] = pn[1];
399 p[2] = pn[0];
400 }
401
402 if ( fStatusCurrent->fFishEye == kTRUE ) {
403 Double_t r;
404 if ( f2DViewType == 1 ) {
405 Double_t pvWC[3], pvNDC[3];
406 pvWC[0] = +4;
407 pvWC[1] = 0;
408 pvWC[2] = 0;
409 BesTView::WCtoNDC(pvWC, pvNDC);
410 p[0] = TMath::Sign((pn[0] - pvNDC[0])*(pn[0] - pvNDC[0]),
411 pn[0] - pvNDC[0]) + pvNDC[0];
412 p[1] = TMath::Sign((pn[1] - pvNDC[1])*(pn[1] - pvNDC[1]),
413 pn[1] - pvNDC[1]) + pvNDC[1];
414 } else {
415 r = TMath::Sqrt(TMath::Power(p[0],2)
416 +TMath::Power(p[1],2));
417 p[0] *= r;
418 p[1] *= r;
419 }
420 }
421 BesTView::NDCtoWC(p, pw);
422}
virtual void WCtoNDC(const Float_t *pw, Float_t *pn)
Definition: BesTView.cxx:1607
virtual void NDCtoWC(const Float_t *pn, Float_t *pw)
Definition: BesTView.cxx:1177

◆ NDCtoWC() [2/2]

void Bes2DView::NDCtoWC ( const Float_t *  pn,
Float_t *  pw 
)
virtual

Reimplemented from BesTView.

Definition at line 348 of file Bes2DView.cxx.

348 {
349 //
350 // Transform back from NDCs
351 Float_t p[3];
352 if (f2DViewType == 0) { // XYView
353 p[0] = pn[0];
354 p[1] = pn[1];
355 p[2] = pn[2];
356 }
357 else { // ZRView
358 p[0] = pn[2];
359 p[1] = pn[1];
360 p[2] = pn[0];
361 }
362
363 if ( fStatusCurrent->fFishEye == kTRUE ) {
364 Float_t r;
365 if ( f2DViewType == 1 ) {
366 Float_t pvWC[3], pvNDC[3];
367 pvWC[0] = +4;
368 pvWC[1] = 0;
369 pvWC[2] = 0;
370 BesTView::WCtoNDC(pvWC, pvNDC);
371 p[0] = TMath::Sign((pn[0] - pvNDC[0])*(pn[0] - pvNDC[0]),
372 pn[0] - pvNDC[0]) + pvNDC[0];
373 p[1] = TMath::Sign((pn[1] - pvNDC[1])*(pn[1] - pvNDC[1]),
374 pn[1] - pvNDC[1]) + pvNDC[1];
375 } else {
376 r = TMath::Sqrt(TMath::Power(p[0],2)
377 +TMath::Power(p[1],2));
378 p[0] *= r;
379 p[1] *= r;
380 }
381 }
382 BesTView::NDCtoWC(p, pw);
383}

◆ PrintCurrent()

void Bes2DView::PrintCurrent ( )
inline

Definition at line 103 of file Bes2DView.h.

103{ fStatusCurrent->Print(); }

◆ Reset()

void Bes2DView::Reset ( )

Definition at line 444 of file Bes2DView.cxx.

444 {
445 //
446 // reset view to default values
447
448 // reset status instances of views
449 //fStatus3D->Default(k3DView);
450 //fStatusXY->Default(kXYView);
451 //fStatusZR->Default(kZRView);
452 fZoomFactor = 1.5;
453
454 // reset current status instance tp fViewType
455 //fStatusCurrent->Default(fViewType);
456
457 // center the view
458 this->Center();
459 this->SetRange(-2635,-2635,-2875,2635,2635,2875);
460 //int iret;
461 //this->SetView(0,0,270,iret);
462 this->ZoomView(gPad, 1.5);
463
464 // reset phirange
465 // this->SetPhiRange(0,180);
466 //this->UpdateView();
467 gPad->Update();
468}
void Center()
Definition: Bes2DView.cxx:189
virtual void ZoomView(TVirtualPad *pad=0, Double_t zoomFactor=1.25)
Definition: BesTView.cxx:1778
virtual void SetRange(const Double_t *min, const Double_t *max)
Definition: BesTView.cxx:1454

◆ Set2DViewType()

void Bes2DView::Set2DViewType ( Int_t  viewType)
inline

Definition at line 55 of file Bes2DView.h.

55{ f2DViewType = viewType; }

◆ SetDrawOption()

virtual void Bes2DView::SetDrawOption ( Option_t *  option)
inlinevirtual

Definition at line 122 of file Bes2DView.h.

122{ BesTView::SetDrawOption(option); }

◆ SetFishEye()

void Bes2DView::SetFishEye ( Bool_t  input = 0)
inline

Definition at line 90 of file Bes2DView.h.

90 {
91 /*
92 if ( fViewType & k3DView ) {
93 fFishEye = 0;
94 fStatusCurrent->fFishEye = 0;
95 } else {
96 */
97 fFishEye = input;
98 fStatusCurrent->fFishEye = input;
99
100 } // *TOGGLE*

◆ SetLineAttributes()

virtual void Bes2DView::SetLineAttributes ( )
inlinevirtual

Definition at line 123 of file Bes2DView.h.

123{ BesTView::SetLineAttributes(); }

◆ SetMarkerSize()

void Bes2DView::SetMarkerSize ( Float_t  size)
inline

Definition at line 85 of file Bes2DView.h.

85{ fMarkerSize = size; }

◆ SetZoomFactor()

virtual void Bes2DView::SetZoomFactor ( Double_t  factor)
inlinevirtual

Definition at line 125 of file Bes2DView.h.

125{ fZoomFactor = factor; };

◆ Side()

virtual void Bes2DView::Side ( )
inlinevirtual

Reimplemented from BesTView.

Definition at line 108 of file Bes2DView.h.

108{ BesTView::Side(); }
virtual void Side()
Definition: BesTView.h:179

◆ Top()

virtual void Bes2DView::Top ( )
inlinevirtual

Reimplemented from BesTView.

Definition at line 109 of file Bes2DView.h.

109{ BesTView::Front(); }
virtual void Front()
Definition: BesTView.h:177

◆ UnZoom()

void Bes2DView::UnZoom ( )
virtual

Reimplemented from BesTView.

Definition at line 215 of file Bes2DView.cxx.

215 {
216 //
217 // Demagnify
218 fMarkerSize = fMarkerSize / fZoomFactor;
219 UnzoomView(gPad, fZoomFactor);
220}
virtual void UnzoomView(TVirtualPad *pad=0, Double_t unZoomFactor=1.25)
Definition: BesTView.cxx:1770

◆ UpdateView()

void Bes2DView::UpdateView ( Bool_t  resetview = kFALSE)
virtual

Definition at line 245 of file Bes2DView.cxx.

245 {
246 //
247 // Update current view
248 if ( !gGeometry ) return;
249
250 // Redraw
251 //SetViewType(fViewType,resetview);
252}

◆ WCtoNDC() [1/2]

void Bes2DView::WCtoNDC ( const Double_t *  pw,
Double_t *  pn 
)
virtual

Reimplemented from BesTView.

Definition at line 315 of file Bes2DView.cxx.

315 {
316 //
317 // Transform world coordinates to
318 // normalised device coordinates.
319 // This method was taken from BesTView
320 // and extended by FishEye view
321 BesTView::WCtoNDC(pw, pn);
322
323 if ( fStatusCurrent->fFishEye == kTRUE ) {
324 Double_t r, s;
325 if ( f2DViewType == 1 ) {
326 Double_t pvWC[3], pvNDC[3];
327 pvWC[0] = +4;
328 pvWC[1] = 0;
329 pvWC[2] = 0;
330 BesTView::WCtoNDC(pvWC, pvNDC);
331 pn[0] = TMath::Sign(TMath::Sqrt(TMath::Abs(pn[0] - pvNDC[0])),
332 pn[0] - pvNDC[0]) + pvNDC[0];
333 pn[1] = TMath::Sign(TMath::Sqrt(TMath::Abs(pn[1] - pvNDC[1])),
334 pn[1] - pvNDC[1]) + pvNDC[1];
335 } else {
336
337 r = TMath::Sqrt(TMath::Power(pn[0],2)
338 +TMath::Power(pn[1],2));
339 s = TMath::Sqrt(r)/r;
340 pn[0] *= s;
341 pn[1] *= s;
342 }
343 }
344}
XmlRpcServer s
Definition: HelloServer.cpp:11

◆ WCtoNDC() [2/2]

void Bes2DView::WCtoNDC ( const Float_t *  pw,
Float_t *  pn 
)
virtual

Reimplemented from BesTView.

Definition at line 282 of file Bes2DView.cxx.

282 {
283 //
284 // Transform world coordinates to
285 // normalised device coordinates.
286 // This method was taken from BesTView
287 // and extended by FishEye view
288 BesTView::WCtoNDC(pw, pn);
289 //cout << "fFishEye " << fFishEye << endl;
290
291 if ( fStatusCurrent->fFishEye == kTRUE ) {
292 Float_t r, s;
293 if ( f2DViewType == 1) {
294 Float_t pvWC[3], pvNDC[3];
295 pvWC[0] = +4;
296 pvWC[1] = 0;
297 pvWC[2] = 0;
298 BesTView::WCtoNDC(pvWC, pvNDC);
299 pn[0] = TMath::Sign(Double_t(TMath::Sqrt(TMath::Abs(pn[0] - pvNDC[0]))),
300 Double_t(pn[0] - pvNDC[0])) + pvNDC[0];
301 pn[1] = TMath::Sign(Double_t(TMath::Sqrt(TMath::Abs(pn[1] - pvNDC[1]))),
302 Double_t(pn[1] - pvNDC[1])) + pvNDC[1];
303 } else {
304 r = TMath::Sqrt(TMath::Power(pn[0],2)
305 +TMath::Power(pn[1],2));
306 s = TMath::Sqrt(r)/r;
307 pn[0] *= s;
308 pn[1] *= s;
309 }
310 }
311}

◆ Zoom()

void Bes2DView::Zoom ( )
virtual

Reimplemented from BesTView.

Definition at line 206 of file Bes2DView.cxx.

206 {
207 //
208 // Magnify
209 fMarkerSize = fMarkerSize * fZoomFactor;
210 ZoomView(gPad, fZoomFactor);
211}

◆ ZoomMove()

virtual void Bes2DView::ZoomMove ( )
inlinevirtual

Reimplemented from BesTView.

Definition at line 111 of file Bes2DView.h.

virtual void ZoomMove()
Definition: BesTView.h:181

The documentation for this class was generated from the following files: