#include <DetectorDescription/Core/interface/DDSolid.h>
Public Member Functions | |
double | alpha1 () const |
Angle with respect to the y axis from the centre of the side at y=-pDy1 to the centre at y=+pDy1 of the face at -pDz. | |
double | alpha2 () const |
Angle with respect to the y axis from the centre of the side at y=-pDy2 to the centre at y=+pDy2 of the face at +pDz. | |
DDTrap (const DDSolid &s) | |
double | halfZ () const |
half of the z-Axis | |
double | phi () const |
Azimuthal angle of the line joining the centres of the faces at -/+pDz. | |
double | theta () const |
Polar angle of the line joining the centres of the faces at -/+pDz. | |
double | x1 () const |
Half-length along x of the side at y=-pDy1 of the face at -pDz. | |
double | x2 () const |
Half-length along x of the side at y=+pDy1 of the face at -pDz. | |
double | x3 () const |
Half-length along x of the side at y=-pDy2 of the face at +pDz. | |
double | x4 () const |
Half-length along x of the side at y=+pDy2 of the face at +pDz. | |
double | y1 () const |
Half-length along y of the face at -pDz. | |
double | y2 () const |
Half-length along y of the face at +pDz. |
The definition (parameters, local frame) of the Trapezoid is the same than in Geant4.
Definition at line 115 of file DDSolid.h.
DDTrap::DDTrap | ( | const DDSolid & | s | ) |
Definition at line 141 of file DDSolid.cc.
References ddtrap, DDName::name(), DDBase< N, C >::name(), DDName::ns(), and DDSolid::shape().
00141 : DDSolid(s) 00142 { 00143 if (s.shape() != ddtrap) { 00144 std::string ex = "Solid [" + s.name().ns() + ":" + s.name().name() + "] is no DDTrap.\n"; 00145 ex = ex + "Use a different solid interface!"; 00146 throw DDException(ex); 00147 } 00148 }
double DDTrap::alpha1 | ( | ) | const |
Angle with respect to the y axis from the centre of the side at y=-pDy1 to the centre at y=+pDy1 of the face at -pDz.
Definition at line 162 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdZ::checkParametersValidity(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::checkParametersValidity().
00162 { return rep().parameters()[6]; }
double DDTrap::alpha2 | ( | ) | const |
Angle with respect to the y axis from the centre of the side at y=-pDy2 to the centre at y=+pDy2 of the face at +pDz.
Definition at line 170 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdZ::checkParametersValidity(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::checkParametersValidity().
00170 { return rep().parameters()[10]; }
double DDTrap::halfZ | ( | ) | const |
half of the z-Axis
Definition at line 150 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdZ::DDDividedTrdZ(), DDDividedTrdZ::getMaxParameter(), DDDividedTrdZ::makeDDLogicalPart(), DDDividedTrdY::makeDDLogicalPart(), DDDividedTrdX::makeDDLogicalPart(), and DDDividedTrdZ::makeDDTranslation().
00150 { return rep().parameters()[0]; }
double DDTrap::phi | ( | ) | const |
Azimuthal angle of the line joining the centres of the faces at -/+pDz.
Definition at line 154 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdZ::checkParametersValidity(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::checkParametersValidity().
00154 { return rep().parameters()[2]; }
double DDTrap::theta | ( | ) | const |
Polar angle of the line joining the centres of the faces at -/+pDz.
Definition at line 152 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdZ::checkParametersValidity(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::checkParametersValidity().
00152 { return rep().parameters()[1]; }
double DDTrap::x1 | ( | ) | const |
Half-length along x of the side at y=-pDy1 of the face at -pDz.
Definition at line 158 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdX::checkParametersValidity(), DDDividedTrdX::DDDividedTrdX(), DDDividedTrdX::getMaxParameter(), DDDividedTrdZ::makeDDLogicalPart(), DDDividedTrdY::makeDDLogicalPart(), and DDDividedTrdX::makeDDTranslation().
00158 { return rep().parameters()[4]; }
double DDTrap::x2 | ( | ) | const |
Half-length along x of the side at y=+pDy1 of the face at -pDz.
Definition at line 160 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdX::checkParametersValidity(), DDDividedTrdZ::makeDDLogicalPart(), and DDDividedTrdY::makeDDLogicalPart().
00160 { return rep().parameters()[5]; }
double DDTrap::x3 | ( | ) | const |
Half-length along x of the side at y=-pDy2 of the face at +pDz.
Definition at line 166 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::makeDDLogicalPart().
00166 { return rep().parameters()[8]; }
double DDTrap::x4 | ( | ) | const |
Half-length along x of the side at y=+pDy2 of the face at +pDz.
Definition at line 168 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdX::checkParametersValidity(), and DDDividedTrdY::makeDDLogicalPart().
00168 { return rep().parameters()[9]; }
double DDTrap::y1 | ( | ) | const |
Half-length along y of the face at -pDz.
Definition at line 156 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdY::checkParametersValidity(), DDDividedTrdY::DDDividedTrdY(), DDDividedTrdY::getMaxParameter(), DDDividedTrdZ::makeDDLogicalPart(), DDDividedTrdX::makeDDLogicalPart(), and DDDividedTrdY::makeDDTranslation().
00156 { return rep().parameters()[3]; }
double DDTrap::y2 | ( | ) | const |
Half-length along y of the face at +pDz.
Definition at line 164 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedTrdY::checkParametersValidity(), DDDividedTrdZ::makeDDLogicalPart(), and DDDividedTrdX::makeDDLogicalPart().
00164 { return rep().parameters()[7]; }