Bounds for a trapezoidal shaped Volume, the orientedSurface(...) method creates a vector of 6 surfaces:
More...
|
| enum | BoundValues : unsigned int {
eHalfLengthXnegY = 0
, eHalfLengthXposY = 1
, eHalfLengthY = 2
, eHalfLengthZ = 3
,
eAlpha = 4
, eBeta = 5
, eSize
} |
| | for access / streaming More...
|
| enum class | Face : unsigned int {
NegativeZFaceXY = BoundarySurfaceFace::negativeFaceXY
, PositiveZFaceXY = BoundarySurfaceFace::positiveFaceXY
, TrapezoidFaceAlpha
, TrapezoidFaceBeta
,
NegativeYFaceZX = BoundarySurfaceFace::negativeFaceZX
, PositiveYFaceZX = BoundarySurfaceFace::positiveFaceZX
} |
| | Enum describing the possible faces of a trapezoidal volume. More...
|
| enum class | BoundsType {
eCone
, eCuboid
, eCutoutCylinder
, eCylinder
,
eGenericCuboid
, eTrapezoid
, eDiamond
, eOther
} |
| | This is nested to the VolumeBounds, as also SurfaceBounds will have Bounds Type. More...
|
|
| | TrapezoidVolumeBounds ()=delete |
| | TrapezoidVolumeBounds (const std::array< double, eSize > &values) noexcept(false) |
| | Constructor - from a fixed size array.
|
| | TrapezoidVolumeBounds (const TrapezoidVolumeBounds &trabo)=default |
| | Copy constructor.
|
| | TrapezoidVolumeBounds (double minhalex, double haley, double halez, double alpha, double beta) noexcept(false) |
| | Constructor - the trapezoid boundaries (arbitrary trapezoid).
|
| | TrapezoidVolumeBounds (double minhalex, double maxhalex, double haley, double halez) noexcept(false) |
| | Constructor - the trapezoid boundaries (symmetric trapezoid).
|
| | ~TrapezoidVolumeBounds () override=default |
| | Default destructor.
|
| Volume::BoundingBox | boundingBox (const Transform3 *trf=nullptr, const Vector3 &envelope={0, 0, 0}, const Volume *entity=nullptr) const final |
| | Construct bounding box for this shape.
|
| double | get (BoundValues bValue) const |
| | Access to the bound values.
|
| bool | inside (const Vector3 &pos, double tol=0.) const override |
| | This method checks if position in the 3D volume frame is inside the cylinder.
|
| TrapezoidVolumeBounds & | operator= (const TrapezoidVolumeBounds &trabo)=default |
| | Copy assignment operator.
|
| std::vector< OrientedSurface > | orientedSurfaces (const Transform3 &transform=Transform3::Identity()) const override |
| | Oriented surfaces, i.e.
|
| std::ostream & | toStream (std::ostream &os) const override |
| | Output Method for std::ostream.
|
| VolumeBounds::BoundsType | type () const final |
| | Return the bounds type - for persistency optimization.
|
| std::vector< double > | values () const final |
| | Return the bound values as dynamically sized vector.
|
| | VolumeBounds ()=default |
| virtual | ~VolumeBounds ()=default |
| virtual std::vector< AxisDirection > | canonicalAxes () const |
| | Get the canonical axis direction that fully describe the shape's extent.
|
| virtual double | referenceBorder (AxisDirection aDir) const |
| | Binning borders in double.
|
| virtual Vector3 | referenceOffset (AxisDirection aDir) const |
| | Binning offset - overloaded for some R-binning types.
|
Bounds for a trapezoidal shaped Volume, the orientedSurface(...) method creates a vector of 6 surfaces:
BoundarySurfaceFace [index]:
- negativeFaceXY [0] : Trazpezoidal Acts::PlaneSurface, parallel to \( xy \) plane at negative \(z\)
- positiveFaceXY [1] : Trazpezoidal Acts::PlaneSurface, parallel to \( xy \) plane at positive \(z\)
- trapezoidFaceAlpha [2] : Rectangular Acts::PlaneSurface, attached to [0] and [1] at negative \(x\) (associated to alpha)
- trapezoidFaceBeta [3] : Rectangular Acts::PlaneSurface, attached to [0] and [1] at positive \( x\) (associated to beta)
- negativeFaceZX [4] : Rectangular Acts::PlaneSurface, parallel to \( zx \) plane at negative \(y\)
- positiveFaceZX [5] : Rectangular Acts::PlaneSurface, parallel to \( zx \) plane at positive \(y\)
| |
| | +----------------------------------+
| v | |
| + +--+------------------------------++ |
| /| / | +-+ |
| / | / | +-+ | +
+---+ / | / | +-+ | ++
| / | / +----------------------+-+---------+ +-+|
| / | / +-+ +-+ |
| / + / +-+ +-+ |
| / / / +-+ +-+ |
v/ / / +-+ +-+ +
/ / / +-+ +-+ +-
/ / / +------------------+-+------------++ +-+ +-+
/ / / / +-+ +-+ +-+ +-+
/ / / / +-+ +-+ +-+ +-+
/ / +----
X-----------------+ +-+ +-+ +-+
+ / / +-+ +-+ +-+
| +--
X------
X------------+ +-+ -+ +-+
| | / / | +-+ + +-+
| |/ / | +-+ | +-+ ^
|/| / | +-+ | +-+ |
+ | / | +-+ | +-+ | z ^ ^ y
+---
X------------------+ +-+ ^ |-+ +-----+ | /
/ ^ +-+ | + | | /
+---------++-----------+ | | |/
@ PositiveZFaceXY
Definition TrapezoidVolumeBounds.hpp:102
@ NegativeYFaceZX
Definition TrapezoidVolumeBounds.hpp:110
@ TrapezoidFaceAlpha
Definition TrapezoidVolumeBounds.hpp:103
@ TrapezoidFaceBeta
Definition TrapezoidVolumeBounds.hpp:107
@ NegativeZFaceXY
Definition TrapezoidVolumeBounds.hpp:101
@ PositiveYFaceZX
Definition TrapezoidVolumeBounds.hpp:111
@ X
X coordinate.
Definition SpacePointContainer2.hpp:47