LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
A drawing pad showing an orthographic rendering of 3D objects. More...
#include "Ortho3DPad.h"
Public Member Functions | |
Ortho3DPad (const char *nm, const char *ti, evd::OrthoProj_t proj, double x1, double y1, double x2, double y2) | |
~Ortho3DPad () | |
double | GetMarkerSize () const |
void | Draw (const char *opt=0) |
void | SetZoom (double xlo, double ylo, double xhi, double yhi, bool update) |
void | UnZoom (bool update) |
void | SetMarkerSize (double size, bool update) |
void | SetMSizeEntry (TGNumberEntry *p) |
void | SetMSize () |
void | MouseEvent () |
TPad * | Pad () |
HeaderDrawer * | HeaderDraw () |
evd_tool::IExperimentDrawer * | GeometryDraw () |
SimulationDrawer * | SimulationDraw () |
RawDataDrawer * | RawDataDraw () |
RecoBaseDrawer * | RecoBaseDraw () |
AnalysisBaseDrawer * | AnalysisBaseDraw () |
HitSelector * | HitSelectorGet () |
Static Public Member Functions | |
static void | MouseEvent (evd::Ortho3DPad *p) |
Protected Types | |
using | IExperimentDrawerPtr = std::unique_ptr< evd_tool::IExperimentDrawer > |
Protected Attributes | |
TPad * | fPad |
The ROOT graphics pad. More... | |
HeaderDrawer * | fHeaderDraw |
Drawer for event header info. More... | |
IExperimentDrawerPtr | fGeometryDraw |
Drawer for detector geometry. More... | |
SimulationDrawer * | fSimulationDraw |
Drawer for simulation objects. More... | |
RawDataDrawer * | fRawDataDraw |
Drawer for raw data. More... | |
RecoBaseDrawer * | fRecoBaseDraw |
Drawer for recobase objects. More... | |
AnalysisBaseDrawer * | fAnalysisBaseDraw |
Drawer for analysisbase objects. More... | |
Private Attributes | |
TH1F * | fHisto |
Enclosing histogram. More... | |
evd::OrthoProj_t | fProj |
Projection. More... | |
double | fXLo |
Low x value. More... | |
double | fXHi |
High x value. More... | |
double | fYLo |
Low y value. More... | |
double | fYHi |
High y value. More... | |
double | fMSize |
Marker size. More... | |
std::vector< TBox > | TPCBox |
TPC box. More... | |
evdb::View2D * | fView |
Collection of graphics objects to render. More... | |
TGNumberEntry * | fMSizeEntry |
For changing marker size. More... | |
bool | fPress |
Is button 1 pressed? More... | |
bool | fBoxDrawn |
Is selection box drawn? More... | |
int | fPressPx |
Pixel location where button 1 was pressed. More... | |
int | fPressPy |
Poxel location where button 1 was pressed. More... | |
int | fCurrentPx |
Current pixel location of mouse. More... | |
int | fCurrentPy |
Current pixel location of mouse. More... | |
double | fPressX |
User location where button 1 was pressed. More... | |
double | fPressY |
User location where button 1 was pressed. More... | |
double | fReleaseX |
User location where button 1 was released. More... | |
double | fReleaseY |
User location where button 1 was released. More... | |
Static Private Attributes | |
static Ortho3DPad * | fMousePad = 0 |
Selected pad for mouse action. More... | |
A drawing pad showing an orthographic rendering of 3D objects.
Definition at line 25 of file Ortho3DPad.h.
|
protectedinherited |
Definition at line 51 of file DrawingPad.h.
evd::Ortho3DPad::Ortho3DPad | ( | const char * | name, |
const char * | title, | ||
evd::OrthoProj_t | proj, | ||
double | x1, | ||
double | y1, | ||
double | x2, | ||
double | y2 | ||
) |
Create a pad to show an orthographic rendering of 3D objcts.
name | : Name of the pad |
title | : Title of the pad |
proj | : Choose orthographic projection |
x1 | : Location of left edge of pad (0-1) |
x2 | : Location of right edge of pad (0-1) |
y1 | : Location of bottom edge of pad (0-1) |
y2 | : Location of top edge of pad (0-1) |
Definition at line 42 of file Ortho3DPad.cxx.
References geo::GeometryCore::DetHalfHeight(), geo::GeometryCore::DetHalfWidth(), geo::GeometryCore::DetLength(), fHisto, evd::DrawingPad::fPad, fView, fXHi, fXLo, fYHi, fYLo, evd::kXY, evd::kXZ, evd::kYZ, geo::TPCGeo::LocalToWorld(), geo::GeometryCore::NTPC(), evd::DrawingPad::Pad(), geo::GeometryCore::TPC(), and TPCBox.
evd::Ortho3DPad::~Ortho3DPad | ( | ) |
Definition at line 213 of file Ortho3DPad.cxx.
|
inherited |
Provide access to the drawer for AnalysisBase classes
Definition at line 132 of file DrawingPad.cxx.
References evd::DrawingPad::fAnalysisBaseDraw.
Referenced by evd::CalorPad::Draw().
void evd::Ortho3DPad::Draw | ( | const char * | opt = 0 | ) |
Definition at line 222 of file Ortho3DPad.cxx.
References evdb::View2D::Clear(), evdb::View2D::Draw(), e, fBoxDrawn, fHisto, fMSize, evd::DrawingPad::fPad, fProj, fView, fXHi, fXLo, fYHi, fYLo, evdb::EventHolder::GetEvent(), evdb::EventHolder::Instance(), evd::SimulationDrawer::MCTruthOrtho(), evd::RecoBaseDrawer::OpFlashOrtho(), evd::RecoBaseDrawer::PFParticleOrtho(), evd::RecoBaseDrawer::ProngOrtho(), evd::DrawingPad::RecoBaseDraw(), evd::RecoBaseDrawer::SeedOrtho(), evd::DrawingPad::SimulationDraw(), evd::RecoBaseDrawer::SpacePointOrtho(), TPCBox, UnZoom(), evd::RecoBaseDrawer::VertexOrtho(), x1, and y1.
Referenced by evd::Ortho3DView::Draw().
|
inherited |
Provide access to the drawer for the detector geometry
Definition at line 84 of file DrawingPad.cxx.
References evd::DrawingPad::fGeometryDraw, evd::EvdLayoutOptions::fParameterSet, and fhicl::ParameterSet::get().
Referenced by evd::Display3DPad::Draw().
|
inline |
Definition at line 44 of file Ortho3DPad.h.
References Draw(), and SetMarkerSize().
Referenced by evd::Ortho3DView::Ortho3DView().
|
inherited |
Provide access to the drawer for the detector geometry
Definition at line 75 of file DrawingPad.cxx.
References evd::DrawingPad::fHeaderDraw.
Referenced by evd::HeaderPad::Draw().
|
inherited |
Provide access to the HitSelector
Definition at line 144 of file DrawingPad.cxx.
References evd::gTheHitSelector.
Referenced by evd::TWireProjPad::ClearHitList(), evd::CalorPad::Draw(), evd::TWireProjPad::Draw(), evd::TWireProjPad::SaveHitList(), evd::TWireProjPad::SaveSeedList(), evd::TWireProjPad::SelectOneHit(), and evd::Display3DPad::UpdateSeedCurve().
|
static |
Definition at line 381 of file Ortho3DPad.cxx.
References fMousePad, and MouseEvent().
Referenced by MouseEvent().
void evd::Ortho3DPad::MouseEvent | ( | ) |
Definition at line 402 of file Ortho3DPad.cxx.
References fBoxDrawn, fCurrentPx, fCurrentPy, fMousePad, fPress, fPressPx, fPressPy, fPressX, fPressY, fReleaseX, fReleaseY, max, min, SetZoom(), x, and y.
|
inlineinherited |
Definition at line 37 of file DrawingPad.h.
Referenced by evd::CalorPad::CalorPad(), evd::Display3DPad::Display3DPad(), evd::MCBriefPad::Draw(), evd::HeaderPad::Draw(), evd::Display3DView::Draw(), evd::CalorPad::Draw(), evd::Display3DPad::Draw(), evd::CalorView::Draw(), evd::TWQProjectionView::Draw(), evd::CalorPad::DrawRefCurves(), evd::MCBriefPad::MCBriefPad(), Ortho3DPad(), evd::TWQMultiTPCProjectionView::SetPlaneWire(), evd::TWQProjectionView::SetPlaneWire(), evd::TWQMultiTPCProjectionView::SetRawCalib(), evd::TWQProjectionView::SetRawCalib(), evd::TQPad::TQPad(), evd::TWireProjPad::TWireProjPad(), evd::TWQMultiTPCProjectionView::TWQMultiTPCProjectionView(), and evd::TWQProjectionView::TWQProjectionView().
|
inherited |
Provide access to the drawer for the RawData classes
Definition at line 109 of file DrawingPad.cxx.
References evd::DrawingPad::fRawDataDraw.
Referenced by evd::TQPad::BookHistogram(), evd::TQPad::Draw(), evd::TWireProjPad::Draw(), evd::TWireProjPad::ShowFull(), and evd::TWireProjPad::TWireProjPad().
|
inherited |
Provide access to the drawer for RecoBase classes
Definition at line 120 of file DrawingPad.cxx.
References evd::DrawingPad::fRecoBaseDraw.
Referenced by evd::TQPad::Draw(), evd::Display3DPad::Draw(), evd::TWireProjPad::Draw(), Draw(), and evd::TWireProjPad::ShowFull().
void evd::Ortho3DPad::SetMarkerSize | ( | double | size, |
bool | update | ||
) |
Definition at line 311 of file Ortho3DPad.cxx.
References fBoxDrawn, fMSize, fMSizeEntry, and evd::DrawingPad::fPad.
Referenced by SetMSize(), and UnZoom().
void evd::Ortho3DPad::SetMSize | ( | ) |
Definition at line 362 of file Ortho3DPad.cxx.
References fMSizeEntry, and SetMarkerSize().
void evd::Ortho3DPad::SetMSizeEntry | ( | TGNumberEntry * | p | ) |
Definition at line 351 of file Ortho3DPad.cxx.
References fMSize, and fMSizeEntry.
Referenced by evd::Ortho3DView::Ortho3DView().
void evd::Ortho3DPad::SetZoom | ( | double | xlo, |
double | ylo, | ||
double | xhi, | ||
double | yhi, | ||
bool | update | ||
) |
Definition at line 276 of file Ortho3DPad.cxx.
References fBoxDrawn, fHisto, and evd::DrawingPad::fPad.
Referenced by MouseEvent().
|
inherited |
Provide access to the drawer for the Simulation classes
Definition at line 99 of file DrawingPad.cxx.
References evd::DrawingPad::fSimulationDraw.
Referenced by evd::MCBriefPad::Draw(), evd::Display3DPad::Draw(), evd::TWireProjPad::Draw(), and Draw().
void evd::Ortho3DPad::UnZoom | ( | bool | update | ) |
Definition at line 292 of file Ortho3DPad.cxx.
References fBoxDrawn, fHisto, evd::DrawingPad::fPad, fXHi, fXLo, fYHi, fYLo, and SetMarkerSize().
Referenced by Draw().
|
protectedinherited |
Drawer for analysisbase objects.
Definition at line 60 of file DrawingPad.h.
Referenced by evd::DrawingPad::AnalysisBaseDraw(), and evd::DrawingPad::~DrawingPad().
|
private |
Is selection box drawn?
Definition at line 88 of file Ortho3DPad.h.
Referenced by Draw(), MouseEvent(), SetMarkerSize(), SetZoom(), and UnZoom().
|
private |
Current pixel location of mouse.
Definition at line 91 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
Current pixel location of mouse.
Definition at line 92 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
protectedinherited |
Drawer for detector geometry.
Definition at line 56 of file DrawingPad.h.
Referenced by evd::DrawingPad::GeometryDraw().
|
protectedinherited |
Drawer for event header info.
Definition at line 54 of file DrawingPad.h.
Referenced by evd::DrawingPad::HeaderDraw(), and evd::DrawingPad::~DrawingPad().
|
private |
Enclosing histogram.
Definition at line 71 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), SetZoom(), UnZoom(), and ~Ortho3DPad().
|
staticprivate |
Selected pad for mouse action.
Define static data members.
Definition at line 67 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
Marker size.
Definition at line 77 of file Ortho3DPad.h.
Referenced by Draw(), SetMarkerSize(), and SetMSizeEntry().
|
private |
For changing marker size.
Definition at line 83 of file Ortho3DPad.h.
Referenced by SetMarkerSize(), SetMSize(), and SetMSizeEntry().
|
protectedinherited |
The ROOT graphics pad.
Definition at line 53 of file DrawingPad.h.
Referenced by evd::TWireProjPad::ClearandUpdatePad(), evd::MCBriefPad::Draw(), evd::TQPad::Draw(), evd::CalorPad::Draw(), evd::Display3DPad::Draw(), evd::TWireProjPad::Draw(), Draw(), evd::DrawingPad::DrawingPad(), evd::TWireProjPad::DrawLinesinView(), Ortho3DPad(), SetMarkerSize(), SetZoom(), evd::TWireProjPad::TWireProjPad(), UnZoom(), evd::TWireProjPad::UpdatePad(), and evd::DrawingPad::~DrawingPad().
|
private |
|
private |
Pixel location where button 1 was pressed.
Definition at line 89 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
Poxel location where button 1 was pressed.
Definition at line 90 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
User location where button 1 was pressed.
Definition at line 93 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
User location where button 1 was pressed.
Definition at line 94 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
|
protectedinherited |
Drawer for raw data.
Definition at line 58 of file DrawingPad.h.
Referenced by evd::DrawingPad::RawDataDraw(), and evd::DrawingPad::~DrawingPad().
|
protectedinherited |
Drawer for recobase objects.
Definition at line 59 of file DrawingPad.h.
Referenced by evd::DrawingPad::RecoBaseDraw(), and evd::DrawingPad::~DrawingPad().
|
private |
User location where button 1 was released.
Definition at line 95 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
private |
User location where button 1 was released.
Definition at line 96 of file Ortho3DPad.h.
Referenced by MouseEvent().
|
protectedinherited |
Drawer for simulation objects.
Definition at line 57 of file DrawingPad.h.
Referenced by evd::DrawingPad::SimulationDraw(), and evd::DrawingPad::~DrawingPad().
|
private |
Collection of graphics objects to render.
Definition at line 79 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), and ~Ortho3DPad().
|
private |
High x value.
Definition at line 74 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), and UnZoom().
|
private |
Low x value.
Definition at line 73 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), and UnZoom().
|
private |
High y value.
Definition at line 76 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), and UnZoom().
|
private |
Low y value.
Definition at line 75 of file Ortho3DPad.h.
Referenced by Draw(), Ortho3DPad(), and UnZoom().
|
private |