#include <Plane.h>
Public Types | |
using | BoundPlanePointer = ReferenceCountingPointer< Plane > |
using | ConstBoundPlanePointer = ConstReferenceCountingPointer< Plane > |
using | ConstPlanePointer = ConstReferenceCountingPointer< Plane > |
using | PlanePointer = ReferenceCountingPointer< Plane > |
Public Types inherited from Surface | |
using | Base = GloballyPositioned< float > |
using | Side = SurfaceOrientation::Side |
Public Types inherited from GloballyPositioned< float > | |
typedef Point3DBase< float, GlobalTag > | GlobalPoint |
typedef Vector3DBase< float, GlobalTag > | GlobalVector |
typedef Point3DBase< float, LocalTag > | LocalPoint |
typedef Vector3DBase< float, LocalTag > | LocalVector |
typedef Point3DBase< float, GlobalTag > | PositionType |
typedef TkRotation< float > | RotationType |
typedef float | Scalar |
Public Member Functions | |
void | computeSpan () |
float | localZ (const GlobalPoint &gp) const |
float | localZ (const GlobalVector &gv) const |
Fast access to component perpendicular to plane for a vector. More... | |
float | localZclamped (const GlobalPoint &gp) const |
GlobalVector | normalVector () const |
template<typename... Args> | |
Plane (Args &&...args) | |
float | posPrec () const |
SurfaceOrientation::Side | side (const LocalPoint &p, Scalar toler) const final |
SurfaceOrientation::Side | side (const GlobalPoint &p, Scalar toler) const final |
ConstReferenceCountingPointer< TangentPlane > | tangentPlane (const GlobalPoint &) const final |
tangent plane to surface from global point More... | |
ConstReferenceCountingPointer< TangentPlane > | tangentPlane (const LocalPoint &) const final |
tangent plane to surface from local point More... | |
~Plane () override | |
Public Member Functions inherited from Surface | |
const Bounds & | bounds () const |
const MediumProperties & | mediumProperties () const |
std::pair< float, float > const & | phiSpan () const |
std::pair< float, float > const & | rSpan () const |
void | setMediumProperties (const MediumProperties &mp) |
GlobalPoint | toGlobal (const Point2DBase< Scalar, LocalTag > lp) const |
std::pair< float, float > const & | zSpan () const |
~Surface () override | |
Public Member Functions inherited from BasicReferenceCounted | |
void | addReference () const |
BasicReferenceCounted () | |
BasicReferenceCounted (const BasicReferenceCounted &) | |
BasicReferenceCounted (BasicReferenceCounted &&)=default | |
BasicReferenceCounted & | operator= (BasicReferenceCounted &&)=default |
BasicReferenceCounted & | operator= (const BasicReferenceCounted &) |
unsigned int | references () const |
void | removeReference () const |
virtual | ~BasicReferenceCounted () |
Public Member Functions inherited from GloballyPositioned< float > | |
float | eta () const |
GloballyPositioned () | |
GloballyPositioned (const PositionType &pos, const RotationType &rot) | |
void | move (const GlobalVector &displacement) |
float | phi () const |
const PositionType & | position () const |
void | rotate (const RotationType &rotation) |
const RotationType & | rotation () const |
GlobalPoint | toGlobal (const LocalPoint &lp) const |
Point3DBase< U, GlobalTag > | toGlobal (const Point3DBase< U, LocalTag > &lp) const |
GlobalVector | toGlobal (const LocalVector &lv) const |
Vector3DBase< U, GlobalTag > | toGlobal (const Vector3DBase< U, LocalTag > &lv) const |
LocalPoint | toLocal (const GlobalPoint &gp) const |
Point3DBase< U, LocalTag > | toLocal (const Point3DBase< U, GlobalTag > &gp) const |
LocalVector | toLocal (const GlobalVector &gv) const |
Vector3DBase< U, LocalTag > | toLocal (const Vector3DBase< U, GlobalTag > &gv) const |
virtual | ~GloballyPositioned () |
Static Public Member Functions | |
template<typename... Args> | |
static PlanePointer | build (Args &&...args) |
Static Public Member Functions inherited from GloballyPositioned< float > | |
static float | iniEta () |
static float | iniPhi () |
Private Member Functions | |
void | setPosPrec () |
Private Attributes | |
Scalar | m_posPrec |
Additional Inherited Members | |
Protected Member Functions inherited from Surface | |
Surface () | |
Surface (const PositionType &pos, const RotationType &rot) | |
Surface (const PositionType &pos, const RotationType &rot, Bounds *bounds) | |
Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp) | |
Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp, Bounds *bounds) | |
Surface (const Surface &iSurface) | |
Surface (Surface &&iSurface) | |
Protected Attributes inherited from Surface | |
extstd::clone_ptr< Bounds > | theBounds |
MediumProperties | theMediumProperties |
A plane in 3D space.
|
inline |
Definition at line 20 of file Plane.h.
References computeSpan(), and setPosPrec().
Referenced by build().
|
inlinestatic |
Construct a Plane. The reference frame is defined by pos and rot; the plane is orthogonal to the local Z axis.
Definition at line 33 of file Plane.h.
References createfilelist::args, and Plane().
Referenced by EMEnrichingFilterAlgo::applyBFieldCurv(), doubleEMEnrichingFilterAlgo::applyBFieldCurv(), CSCGeometryBuilder::buildChamber(), ReferenceTrajectory::construct(), CosmicGenFilterHelix::CosmicGenFilterHelix(), CaloDetIdAssociator::crossedElement(), TrajectoryExtrapolatorToLine::extrapolate(), CachedTrajectory::getTrajectory(), RectangularEtaPhiTrackingRegion::hits(), CosmicTrackingRegion::hits_(), HLTMuonPointingFilter::HLTMuonPointingFilter(), TSGForOI::produce(), ME0SegmentMatcher::produce(), PropagateToCal::propagate(), spr::propagateCalo(), CachedTrajectory::propagateForward(), spr::propagateHCAL(), TrackKinematicStatePropagator::propagateToTheTransversePCA(), cms::MuonTCMETValueMapProducer::propagateTrack(), spr::propagateTrackerEnd(), TCMETAlgo::propagateTrackToCalorimeterFace(), TrackExtrapolator::propagateTrackToVolume(), KFBasedPixelFitter::run(), psClasses.BuildThread::run(), CSCPairResidualsConstraint::setZplane(), MuonGmtPair::surfExtrapTrkSam(), and L1MuonRecoTreeProducer::surfExtrapTrkSam().
|
inline |
|
inline |
Fast access to distance from plane for a point. return 0 if too close
Definition at line 45 of file Plane.h.
References Vector3DBase< T, FrameTag >::dot(), normalVector(), and GloballyPositioned< float >::position().
Referenced by Geant4ePropagator::configureAnyPropagation(), Geant4ePropagator::debugReportPlaneSetup(), CachedTrajectory::distance(), fastProp(), localZclamped(), HelixArbitraryPlaneCrossing::notAtSurface(), HelixArbitraryPlaneCrossing::pathLength(), HelixBarrelPlaneCrossingByCircle::pathLength(), HelixArbitraryPlaneCrossing2Order::pathLength(), RKPropagatorInS::propagateParametersOnPlane(), side(), and SETSeedFinder::sortByLayer().
|
inline |
Fast access to component perpendicular to plane for a vector.
Definition at line 55 of file Plane.h.
References Vector3DBase< T, FrameTag >::dot(), and normalVector().
|
inline |
Definition at line 49 of file Plane.h.
References funct::abs(), edmIntegrityCheck::d, localZ(), and posPrec().
|
inline |
Definition at line 41 of file Plane.h.
References GloballyPositioned< float >::rotation(), and z.
Referenced by GlobalTrackerMuonAlignment::analyzeTrackTrack(), GlobalTrackerMuonAlignment::analyzeTrackTrajectory(), tkDetUtil::calculatePhiWindow(), localZ(), OptimalHelixPlaneCrossing::OptimalHelixPlaneCrossing(), HelixBarrelPlaneCrossingByCircle::pathLength(), StraightLinePlaneCrossing::pathLength(), HelixArbitraryPlaneCrossing2Order::pathLength(), HSCPDeDxInfoProducer::produce(), MagGeoBuilderFromDDD::volumeHandle::sameSurface(), and MagGeoBuilderFromDDD::volumeHandle::setSurface().
|
inline |
|
inlineprivate |
Definition at line 85 of file Plane.h.
References funct::abs(), constexpr, checklumidiff::l, m_posPrec, SiStripPI::max, AlCaHLTBitMon_ParallelJobs::p, and GloballyPositioned< float >::position().
Referenced by Plane().
|
inlinefinalvirtual |
Returns the side of the surface on which the point is. Not defined for 1-sided surfaces (Moebius leaf etc.) For normal 2-sided surfaces the meaning of side is surface type dependent.
Implements Surface.
Definition at line 67 of file Plane.h.
References funct::abs(), SurfaceOrientation::negativeSide, SurfaceOrientation::onSurface, AlCaHLTBitMon_ParallelJobs::p, and SurfaceOrientation::positiveSide.
|
inlinefinalvirtual |
Reimplemented from Surface.
Definition at line 72 of file Plane.h.
References funct::abs(), localZ(), SurfaceOrientation::negativeSide, SurfaceOrientation::onSurface, AlCaHLTBitMon_ParallelJobs::p, SurfaceOrientation::positiveSide, and tangentPlane().
|
finalvirtual |
|
finalvirtual |
|
private |
Definition at line 92 of file Plane.h.
Referenced by posPrec(), and setPosPrec().