|
ATLAS Offline Software
|
Go to the documentation of this file.
9 float eta(
float x,
float y,
float z){
10 ROOT::Math::XYZVector V(
x,
y,
z);
14 float phi(
float x,
float y,
float z){
15 ROOT::Math::XYZVector V(
x,
y,
z);
22 for(
const auto&
v : boost::geometry::exterior_ring(
p)){
23 float x=coordinate<0>(
v);
24 float y=coordinate<1>(
v);
25 ROOT::Math::XYZVector
vec(
x,
y, Zinit);
27 float theta=
vec.Theta();
29 ROOT::Math::Polar3DVector projectedVec(
vec.R(), theta,
phi);
30 vt.push_back(
Vertex(projectedVec.X(), projectedVec.Y()));
36 return boost::geometry::num_points(
p);
40 return boost::geometry::exterior_ring(
p)[
i];
48 vts.push_back(vts[0]);
50 boost::geometry::assign_points(shape,
pts);
51 boost::geometry::correct(shape);
66 std::vector<Polygon>
out;
84 std::sort(pols.begin(),pols.end(),[](
const Polygon&
a,
const Polygon&
b){return area(a)>area(b);});
93 for(
unsigned int i=1;
i<polygons.size();
i++){
106 for(
const auto&
v : boost::geometry::exterior_ring(pol)){
107 float x=coordinate<0>(
v);
108 float y=coordinate<1>(
v);
111 local_vertices.emplace_back(
Vertex(local_corner.x(),local_corner.y()));
virtual bool globalToLocal(const Amg::Vector3D &glob, const Amg::Vector3D &mom, Amg::Vector2D &loc) const override final
Specified for PlaneSurface: GlobalToLocal method without dynamic memory allocation - boolean checks i...
float eta(float x, float y, float z)
int nVertices(const Polygon &p)
Eigen::Matrix< double, 2, 1 > Vector2D
boost::geometry::model::d2::point_xy< double > Vertex
boost::geometry::model::polygon< Vertex > Polygon
Polygon largestIntersection(const Polygon &p1, const Polygon &p2)
std::vector< size_t > vec
std::vector< Polygon > allIntersections(const Polygon &p1, const Polygon &p2)
Polygon Project(const Polygon &p, float Zinit, float Zfin)
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
typename vecDetail::vec_typedef< T, N >::type vec
Define a nice alias for the vectorized type.
float area(const Polygon &p)
Vertex getVertex(const Polygon &p, unsigned int i)
Polygon firstIntersection(const Polygon &p1, const Polygon &p2)
Eigen::Matrix< double, 3, 1 > Vector3D
Polygon intersectionRegion(const std::vector< Polygon > &polygons)
float phi(float x, float y, float z)
A trigger trigger candidate for a stgc sector.
Polygon globalToLocal(const Polygon &pol, float z, const Trk::PlaneSurface &surf)
std::vector< Vertex > Vertices
Vertex centroid(const Polygon &p)
Polygon buildPolygon(const Vertices &pts)