36 if (yc<maxDistance.
y() && xc<maxDistance.
x())
return M_PI;
38 auto hori = yc>maxDistance.
y();
39 auto y0 = hori ? yc + std::copysign(maxDistance.
y(), xc - maxDistance.
x()) : xc - maxDistance.
x();
40 auto x0 = hori ? xc - maxDistance.
x() : -yc - maxDistance.
y();
41 auto y1 = hori ? yc - maxDistance.
y() : xc - maxDistance.
x();
42 auto x1 = hori ? xc + maxDistance.
x() : -yc + maxDistance.
y();
61 for (
int i = 1;
i<4;
i++) {
62 float cPhi = corners[
i];
67 if ( phiWindow < 0.) { phiWindow += 2.*
Geom::pi();}
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Point3DBase< Scalar, LocalTag > LocalPoint
LocalPoint localPosition() const
GlobalVector normalVector() const
Global3DPoint GlobalPoint
const Plane & surface() const
The nominal surface of the GeomDet.
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
LocalPoint toLocal(const GlobalPoint &gp) const
Abs< T >::type abs(const T &t)
bool phiLess(float phi1, float phi2)
virtual Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface &ts, const Plane &plane) const =0
float calculatePhiWindow(const MeasurementEstimator::Local2DVector &imaxDistance, const TrajectoryStateOnSurface &ts, const Plane &plane)