Garfield++ 4.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
Draw the mesh of a field-map component. More...
#include <ViewFEMesh.hh>
Public Member Functions | |
ViewFEMesh () | |
Constructor. | |
~ViewFEMesh ()=default | |
Destructor. | |
void | SetComponent (ComponentFieldMap *cmp) |
Set the component from which to retrieve the mesh and field. | |
void | SetPlane (const double fx, const double fy, const double fz, const double x0, const double y0, const double z0) override |
void | SetPlane (const double fx, const double fy, const double fz, const double x0, const double y0, const double z0, const double hx, const double hy, const double hz) override |
Set the projection plane specifying a hint for the in-plane x axis. | |
void | SetXaxis (TGaxis *ax) |
void | SetYaxis (TGaxis *ay) |
void | SetXaxisTitle (const std::string &xtitle) |
void | SetYaxisTitle (const std::string &ytitle) |
void | EnableAxes () |
void | DisableAxes () |
bool | Plot () |
Plot method to be called by user. | |
void | SetFillMesh (const bool f) |
Element fill switch; 2D only, set false for wireframe mesh. | |
void | SetDrawViewRegion (bool do_draw) |
Display intersection of projection plane with viewing area. | |
bool | GetDrawViewRegion (void) const |
void | SetColor (int matID, int colorID) |
void | SetFillColor (int matID, int colorID) |
void | SetViewDrift (ViewDrift *vd) |
Set the optional associated ViewDrift. | |
void | SetFillMeshWithBorders () |
Show filled mesh elements. | |
void | CreateDefaultAxes () |
Create a default set of custom-made axes. | |
void | DisableMaterial (int materialID) |
Disable a material so that its mesh cells are not drawn. | |
Public Member Functions inherited from Garfield::ViewBase | |
ViewBase ()=delete | |
Default constructor. | |
ViewBase (const std::string &name) | |
Constructor. | |
virtual | ~ViewBase ()=default |
Destructor. | |
void | SetCanvas (TPad *pad) |
Set the canvas to be painted on. | |
void | SetCanvas () |
Unset an external canvas. | |
TPad * | GetCanvas () |
Retrieve the canvas. | |
void | SetArea (const double xmin, const double ymin, const double xmax, const double ymax) |
virtual void | SetArea (const double xmin, const double ymin, const double zmin, const double xmax, const double ymax, const double zmax) |
Set a bounding box (if applicable). | |
void | SetArea () |
virtual void | SetPlane (const double fx, const double fy, const double fz, const double x0, const double y0, const double z0) |
virtual void | SetPlane (const double fx, const double fy, const double fz, const double x0, const double y0, const double z0, const double hx, const double hy, const double hz) |
Set the projection plane specifying a hint for the in-plane x axis. | |
void | Rotate (const double angle) |
Rotate the viewing plane (angle in radian). | |
void | SetPlaneXY () |
Set the viewing plane to x-y. | |
void | SetPlaneXZ () |
Set the viewing plane to x-z. | |
void | SetPlaneYZ () |
Set the viewing plane to y-z. | |
void | EnableDebugging (const bool on=true) |
Switch on/off debugging output. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Garfield::ViewBase | |
static std::string | FindUnusedFunctionName (const std::string &s) |
Find an unused function name. | |
static std::string | FindUnusedHistogramName (const std::string &s) |
Find an unused histogram name. | |
static std::string | FindUnusedCanvasName (const std::string &s) |
Find an unused canvas name. | |
Protected Member Functions inherited from Garfield::ViewBase | |
void | UpdateProjectionMatrix () |
template<typename T > | |
void | ToPlane (const T x, const T y, const T z, T &xp, T &yp) const |
template<typename T > | |
bool | InBox (const std::array< T, 3 > &x) const |
void | Clip (const std::array< float, 3 > &x0, const std::array< float, 3 > &x1, std::array< float, 3 > &xc) const |
void | DrawLine (const std::vector< std::array< float, 3 > > &xl, const short col, const short lw) |
std::string | LabelX () |
std::string | LabelY () |
std::string | PlaneDescription () |
bool | PlotLimits (Sensor *sensor, double &xmin, double &ymin, double &xmax, double &ymax) const |
bool | PlotLimits (Component *cmp, double &xmin, double &ymin, double &xmax, double &ymax) const |
bool | PlotLimitsFromUserBox (double &xmin, double &ymin, double &xmax, double &ymax) const |
bool | PlotLimits (std::array< double, 3 > &bbmin, std::array< double, 3 > &bbmax, double &xmin, double &ymin, double &xmax, double &ymax) const |
bool | RangeSet (TPad *) |
void | SetRange (TPad *pad, const double x0, const double y0, const double x1, const double y1) |
Protected Attributes inherited from Garfield::ViewBase | |
std::string | m_className = "ViewBase" |
bool | m_debug = false |
bool | m_userPlotLimits = false |
double | m_xMinPlot = -1. |
double | m_xMaxPlot = 1. |
double | m_yMinPlot = -1. |
double | m_yMaxPlot = 1. |
bool | m_userBox = false |
double | m_xMinBox = -1. |
double | m_xMaxBox = 1. |
double | m_yMinBox = -1. |
double | m_yMaxBox = 1. |
double | m_zMinBox = -1. |
double | m_zMaxBox = 1. |
std::array< std::array< double, 3 >, 3 > | m_proj |
std::array< double, 4 > | m_plane {{0, 0, 1, 0}} |
std::array< std::array< double, 3 >, 3 > | m_prmat |
Draw the mesh of a field-map component.
Definition at line 21 of file ViewFEMesh.hh.
Garfield::ViewFEMesh::ViewFEMesh | ( | ) |
|
default |
Destructor.
void Garfield::ViewFEMesh::CreateDefaultAxes | ( | ) |
Create a default set of custom-made axes.
Definition at line 224 of file ViewFEMesh.cc.
|
inline |
Definition at line 43 of file ViewFEMesh.hh.
|
inline |
Disable a material so that its mesh cells are not drawn.
Definition at line 75 of file ViewFEMesh.hh.
|
inline |
|
inline |
Definition at line 53 of file ViewFEMesh.hh.
bool Garfield::ViewFEMesh::Plot | ( | ) |
Plot method to be called by user.
Definition at line 32 of file ViewFEMesh.cc.
Referenced by main().
|
inline |
Associate a color with each element material map ID; Uses ROOT color numberings
Definition at line 57 of file ViewFEMesh.hh.
Referenced by main().
void Garfield::ViewFEMesh::SetComponent | ( | ComponentFieldMap * | cmp | ) |
Set the component from which to retrieve the mesh and field.
Definition at line 21 of file ViewFEMesh.cc.
Referenced by main().
|
inline |
Display intersection of projection plane with viewing area.
Definition at line 52 of file ViewFEMesh.hh.
|
inline |
Definition at line 58 of file ViewFEMesh.hh.
|
inline |
Element fill switch; 2D only, set false for wireframe mesh.
Definition at line 49 of file ViewFEMesh.hh.
Referenced by main().
|
inline |
Show filled mesh elements.
Definition at line 66 of file ViewFEMesh.hh.
|
overridevirtual |
Set the projection (viewing plane), if applicable.
fx,fy,fz | normal vector |
x0,y0,z0 | in-plane point |
Reimplemented from Garfield::ViewBase.
Definition at line 202 of file ViewFEMesh.cc.
Referenced by main(), and SetPlane().
|
overridevirtual |
Set the projection plane specifying a hint for the in-plane x axis.
Reimplemented from Garfield::ViewBase.
Definition at line 211 of file ViewFEMesh.cc.
|
inline |
Set the optional associated ViewDrift.
Definition at line 63 of file ViewFEMesh.hh.
Referenced by main().
void Garfield::ViewFEMesh::SetXaxis | ( | TGaxis * | ax | ) |
Definition at line 218 of file ViewFEMesh.cc.
|
inline |
void Garfield::ViewFEMesh::SetYaxis | ( | TGaxis * | ay | ) |
Definition at line 221 of file ViewFEMesh.cc.
|
inline |