CMS 3D CMS Logo

MagVolume6Faces.cc
Go to the documentation of this file.
2 
4  const RotationType& rot,
5  const std::vector<VolumeSide>& faces,
7  double sf)
8  : MagVolume(pos, rot, mfp, sf), volumeNo(0), copyno(0), theFaces(faces) {}
9 
10 bool MagVolume6Faces::inside(const GlobalPoint& gp, double tolerance) const {
11  // check if the point is on the correct side of all delimiting surfaces
12  for (std::vector<VolumeSide>::const_iterator i = theFaces.begin(); i != theFaces.end(); ++i) {
13  Surface::Side side = i->surface().side(gp, tolerance);
14  if (side != i->surfaceSide() && side != SurfaceOrientation::onSurface)
15  return false;
16  }
17  return true;
18 }
mps_fire.i
i
Definition: mps_fire.py:428
SurfaceOrientation::onSurface
Definition: Surface.h:18
align::RotationType
TkRotation< Scalar > RotationType
Definition: Definitions.h:27
MagVolume6Faces::theFaces
std::vector< VolumeSide > theFaces
Definition: MagVolume6Faces.h:43
pos
Definition: PixelAliasList.h:18
align::PositionType
Point3DBase< Scalar, GlobalTag > PositionType
Definition: Definitions.h:28
MagneticFieldProvider< float >
MagVolume::GlobalPoint
GloballyPositioned< float >::GlobalPoint GlobalPoint
Definition: MagVolume.h:18
MagVolume6Faces::MagVolume6Faces
MagVolume6Faces(const PositionType &pos, const RotationType &rot, const std::vector< VolumeSide > &faces, const MagneticFieldProvider< float > *mfp, double sf=1.)
Definition: MagVolume6Faces.cc:3
runTauDisplay.gp
gp
Definition: runTauDisplay.py:431
MagVolume
Definition: MagVolume.h:13
tolerance
const double tolerance
Definition: HGCalGeomParameters.cc:29
MagVolume6Faces.h
SurfaceOrientation::Side
Side
Definition: Surface.h:18
makeMuonMisalignmentScenario.rot
rot
Definition: makeMuonMisalignmentScenario.py:322
MagVolume6Faces::inside
bool inside(const GlobalPoint &gp, double tolerance=0.) const override
Definition: MagVolume6Faces.cc:10