CMS 3D CMS Logo

DDTrap Class Reference

Interface to a Trapezoid. More...

#include <DetectorDescription/Core/interface/DDSolid.h>

Inheritance diagram for DDTrap:

DDSolid DDBase< DDName, DDI::Solid * >

List of all members.

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.


Detailed Description

Interface to a Trapezoid.

The definition (parameters, local frame) of the Trapezoid is the same than in Geant4.

Definition at line 115 of file DDSolid.h.


Constructor & Destructor Documentation

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 }


Member Function Documentation

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]; }


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:18:17 2009 for CMSSW by  doxygen 1.5.4