VGM implementation for Geant4 Arb8 solid, the shape is implemented using G4TessellatedSolid.
More...
#include <Arb8.h>
|
| Arb8 (const std::string &name, double hz, std::vector< VGM::TwoVector > vertices) |
|
virtual | ~Arb8 () |
|
virtual std::string | Name () const |
| Return the name of this solid.
|
|
virtual int | NofVertices () const |
| Return the number of vertices.
|
|
virtual VGM::TwoVector | Vertex (int index) const |
| Return the index-th vertex.
|
|
virtual double | TwistAngle (int index) const |
| Return the index-th twist angle.
|
|
virtual double | ZHalfLength () const |
| Return the half-length along the z axis in mm.
|
|
| VArb8 () |
|
virtual | ~VArb8 () |
|
virtual VGM::SolidType | Type () const |
| Return the type of this solid.
|
|
virtual std::ostream & | Put (std::ostream &out) const |
| Put the printing of the solid parameters in the out stream.
|
|
virtual | ~IArb8 () |
|
virtual | ~ISolid () |
|
VGM implementation for Geant4 Arb8 solid, the shape is implemented using G4TessellatedSolid.
The twisted shape is not supported.
- Author
- Ivana Hrivnacova; IPN Orsay
Definition at line 40 of file Arb8.h.
◆ Arb8() [1/3]
Geant4GM::Arb8::Arb8 |
( |
const std::string & | name, |
|
|
double | hz, |
|
|
std::vector< VGM::TwoVector > | vertices ) |
Standard constructor to define Arb8 from parameters
- Parameters
-
hz | half-length along the z axis in mm |
vertices | vector of (x,y) coordinates of vertices
- first four points are the (x,y) coordinates of the vertices sitting on the -dz plane;
- last four points are the (x,y) coordinates of the vertices sitting on the +dz plane;
|
The order of defining the vertices of an arb8 is the following:
- point 0 is connected with points 1,3,4
- point 1 is connected with points 0,2,5
- point 2 is connected with points 1,3,6
- point 3 is connected with points 0,2,7
- point 4 is connected with points 0,5,7
- point 5 is connected with points 1,4,6
- point 6 is connected with points 2,5,7
- point 7 is connected with points 3,4,6
Points can be identical in order to create shapes with less than vertices.
Definition at line 61 of file Arb8.cxx.
◆ ~Arb8()
Geant4GM::Arb8::~Arb8 |
( |
| ) |
|
|
virtual |
◆ Arb8() [2/3]
Protected default constructor
Definition at line 154 of file Arb8.cxx.
◆ Arb8() [3/3]
Geant4GM::Arb8::Arb8 |
( |
const Arb8 & | rhs | ) |
|
|
protected |
Protected copy constructor
Definition at line 166 of file Arb8.cxx.
◆ IsTwisted()
bool Geant4GM::Arb8::IsTwisted |
( |
std::vector< VGM::TwoVector > | vertices | ) |
|
|
static |
From TgeoArb8. Computes tangents of twist angles (angles between projections on XY plane of corresponding -dz +dz edges).
Definition at line 34 of file Arb8.cxx.
◆ Name()
std::string Geant4GM::Arb8::Name |
( |
| ) |
const |
|
virtual |
◆ NofVertices()
int Geant4GM::Arb8::NofVertices |
( |
| ) |
const |
|
virtual |
◆ Vertex()
◆ TwistAngle()
double Geant4GM::Arb8::TwistAngle |
( |
int | index | ) |
const |
|
virtual |
◆ ZHalfLength()
double Geant4GM::Arb8::ZHalfLength |
( |
| ) |
const |
|
virtual |
Return the half-length along the z axis in mm.
Implements VGM::IArb8.
Definition at line 321 of file Arb8.cxx.
The documentation for this class was generated from the following files:
- packages/Geant4GM/include/Geant4GM/solids/Arb8.h
- packages/Geant4GM/source/solids/Arb8.cxx