ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::polar2D< algebra_t > Struct Template Reference

Projection into a polar coordinate frame. More...

#include <detray/geometry/coordinates/polar2D.hpp>

Public Types

using algebra_type = algebra_t
 Algebra backend used by this coordinate frame.
using loc_point = point2_type
 Local point type in polar coordinates.
using point2_type = dpoint2D<algebra_t>
 Two-dimensional point type.
using point3_type = dpoint3D<algebra_t>
 Three-dimensional point type.
using scalar_type = dscalar<algebra_t>
 Scalar type associated with the algebra backend.
using transform3_type = dtransform3D<algebra_t>
 Three-dimensional transform type.
using vector3_type = dvector3D<algebra_t>
 Three-dimensional vector type.

Static Public Member Functions

static loc_point global_to_local (const transform3_type &trf, const point3_type &p, const vector3_type &)
 This method transforms a point from a global cartesian 3D frame to a local 2D polar point Convert a point from the global frame to this local coordinate frame.
static point3_type global_to_local_3D (const transform3_type &trf, const point3_type &p, const vector3_type &)
 This method transforms a point from a global cartesian 3D frame to a local 3D polar point Convert a point from the global frame to this local coordinate frame.
template<typename mask_t>
static point3_type local_to_global (const transform3_type &trf, const mask_t &, const loc_point &p, const vector3_type &)
 This method transforms from a local 2D polar point to a point in the global cartesian 3D frame.
static point3_type local_to_global (const transform3_type &trf, const point3_type &p)
 This method transforms from a local 3D polar point to a point in the global cartesian 3D frame.
template<typename mask_t>
static vector3_type normal (const transform3_type &trf, const loc_point &={}, const mask_t &={})
static vector3_type normal (const transform3_type &trf, const point3_type &={})

Detailed Description

template<concepts::algebra algebra_t>
struct detray::polar2D< algebra_t >

Projection into a polar coordinate frame.

Member Function Documentation

◆ global_to_local()

template<concepts::algebra algebra_t>
loc_point detray::polar2D< algebra_t >::global_to_local ( const transform3_type & trf,
const point3_type & p,
const vector3_type &  )
static

This method transforms a point from a global cartesian 3D frame to a local 2D polar point Convert a point from the global frame to this local coordinate frame.

Parameters
trfSurface transform defining the local frame in global coordinates.
pPoint in global coordinates to transform.
Returns
The point expressed in this local coordinate frame.

◆ global_to_local_3D()

template<concepts::algebra algebra_t>
point3_type detray::polar2D< algebra_t >::global_to_local_3D ( const transform3_type & trf,
const point3_type & p,
const vector3_type &  )
static

This method transforms a point from a global cartesian 3D frame to a local 3D polar point Convert a point from the global frame to this local coordinate frame.

Parameters
trfSurface transform defining the local frame in global coordinates.
pPoint in global coordinates to transform.
Returns
The point expressed in this local coordinate frame.

◆ local_to_global() [1/2]

template<concepts::algebra algebra_t>
template<typename mask_t>
point3_type detray::polar2D< algebra_t >::local_to_global ( const transform3_type & trf,
const mask_t & ,
const loc_point & p,
const vector3_type &  )
static

This method transforms from a local 2D polar point to a point in the global cartesian 3D frame.

Parameters
trfSurface transform defining the local frame in global coordinates.
pPoint in local coordinates to transform.
Returns
The point expressed in global coordinates.

◆ local_to_global() [2/2]

template<concepts::algebra algebra_t>
point3_type detray::polar2D< algebra_t >::local_to_global ( const transform3_type & trf,
const point3_type & p )
static

This method transforms from a local 3D polar point to a point in the global cartesian 3D frame.

Parameters
trfSurface transform defining the local frame in global coordinates.
pPoint in local coordinates to transform.
Returns
The point expressed in global coordinates.

◆ normal() [1/2]

template<concepts::algebra algebra_t>
template<typename mask_t>
vector3_type detray::polar2D< algebra_t >::normal ( const transform3_type & trf,
const loc_point & = {},
const mask_t & = {} )
static
Returns
the normal vector in global coordinates
Parameters
trfSurface transform defining the local frame in global coordinates.
Returns
The surface normal expressed in global coordinates.

◆ normal() [2/2]

template<concepts::algebra algebra_t>
vector3_type detray::polar2D< algebra_t >::normal ( const transform3_type & trf,
const point3_type & = {} )
static
Returns
the normal vector in global coordinates
Parameters
trfSurface transform defining the local frame in global coordinates.
Returns
The surface normal expressed in global coordinates.