19 #include "CLHEP/Units/GlobalSystemOfUnits.h" 27 #include <boost/lexical_cast.hpp> 40 string volName =
name;
41 volName.erase(0, volName.rfind(
'_') + 1);
42 volumeno = boost::lexical_cast<
unsigned short>(volName);
44 for (
int i = 0;
i < 6; ++
i) {
137 cout <<
" Orientation of surfaces:";
138 std::string sideName[3] = {
"positiveSide",
"negativeSide",
"onSurface"};
139 for (
int i = 0;
i < 6; ++
i) {
180 fv.
rotation().GetComponents(x, y, z);
182 if (x.Cross(y).Dot(z) < 0.5) {
183 cout <<
"*** WARNING: Rotation is not RH " << endl;
210 globalZdir = -globalZdir;
215 cout <<
"*** WARNING RefPlane check failed!***" << chk << endl;
220 std::vector<VolumeSide>
result;
221 for (
int i = 0;
i < 6; ++
i) {
244 template <
class NumType>
245 inline constexpr NumType convertUnits(NumType millimeters)
251 #include "buildBox.icc" 252 #include "buildTrap.icc" 253 #include "buildTubs.icc" 254 #include "buildCons.icc" 255 #include "buildPseudoTrap.icc" 256 #include "buildTruncTubs.icc"
const DDRotationMatrix & rotation() const
The absolute rotation of the current node.
MagGeoBuilderFromDDD::volumeHandle volumeHandle
Surface::LocalVector LocalVector
volumeHandle(const DDExpandedView &fv, bool expand2Pi=false, bool debugVal=false)
Geom::Phi< T > phi() const
const DDSolid & solid(void) const
Returns a reference object of the solid being the shape of this LogicalPart.
unsigned short volumeno
volume number
unsigned short copyno
copy number
static const char *const name(DDSolidShape s)
GloballyPositioned< float > * refPlane
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DD3Vector
A DD Translation is currently implemented with Root Vector3D.
Surface::GlobalPoint GlobalPoint
int masterSector
The sector for which an interpolator for this class of volumes should be built.
DDSolidShape shape(void) const
The type of the solid.
void referencePlane(const DDExpandedView &fv)
const DDTranslation & translation() const
The absolute translation of the current node.
const GlobalPoint & center() const
Return the center of the volume.
GlobalPoint toGlobal(const LocalPoint &lp) const
int copyno() const
Copy number associated with the current node.
std::string name
Name of the volume.
constexpr NumType convertMmToCm(NumType millimeters)
const DDLogicalPart & logicalPart() const
The logical-part of the current node in the expanded-view.
const PositionType & position() const
Provides an exploded view of the detector (tree-view)
const std::string & name() const
Returns the name.
const DDMaterial & material(void) const
Returns a reference object of the material this LogicalPart is made of.
std::string magFile
Name of magnetic field table file.
std::vector< VolumeSide > sides() const override
The surfaces and they orientation, as required to build a MagVolume.
DDSolidShape shape() const override
Shape of the solid.
Global3DVector GlobalVector