Base class for an intersector: Provides mask based call interfaces for convenience.
More...
|
| template<typename surface_descr_t> |
| using | intersection_type |
| | Intersection result type associated with a surface descriptor.
|
|
using | result_type = typename intersector_t::result_type |
| | Always includes the intersection position, in order to resolve the mask.
|
| template<typename other_algebra_t> |
| using | trajectory_type |
| | Trajectory representation accepted for the requested algebra layout.
|
|
using | algebra_type = typename intersector_t::algebra_type |
| | linear algebra types
|
|
using | value_type = dvalue<algebra_type> |
| | Scalar value type for the configured algebra layout.
|
|
using | scalar_type = dscalar<algebra_type> |
| | Scalar calculation type for the configured algebra layout.
|
|
using | point2_type = dpoint2D<algebra_type> |
| | Two-dimensional point type for the configured algebra layout.
|
|
using | point3_type = dpoint3D<algebra_type> |
| | Three-dimensional point type for the configured algebra layout.
|
|
using | vector3_type = dvector3D<algebra_type> |
| | Three-dimensional vector type for the configured algebra layout.
|
|
using | transform3_type = dtransform3D<algebra_type> |
| | Transform type used to place the surface in 3D.
|
|
| template<typename surface_descr_t, typename mask_t, concepts::algebra other_algebra_t> |
| constexpr decltype(auto) | operator() (const trajectory_type< other_algebra_t > &traj, const surface_descr_t &sf, const mask_t &mask, const transform3_type &trf, const scalar_type mask_tolerance, const scalar_type overstep_tol=0.f) const |
| | Interface that uses fixed mask tolerance.
|
template<typename surface_descr_t, typename mask_t, concepts::algebra other_algebra_t, std::uint8_t N = n_solutions>
requires (N == 1u) |
| constexpr intersection_type< surface_descr_t > | operator() (const trajectory_type< other_algebra_t > &traj, const surface_descr_t &sf, const mask_t &mask, const transform3_type &trf, const intersection::config &cfg={}, const scalar_type external_mask_tol=0.f) const |
| | Operator function to find intersections between trajectory and a surface.
|
template<typename surface_descr_t, typename mask_t, concepts::algebra other_algebra_t, std::uint8_t N = n_solutions>
requires (N > 1u) |
| constexpr darray< intersection_type< surface_descr_t >, n_solutions > | operator() (const trajectory_type< other_algebra_t > &traj, const surface_descr_t &sf, const mask_t &mask, const transform3_type &trf, const intersection::config &cfg={}, const scalar_type external_mask_tol=0.f) const |
| | Shapes that produce multiple solutions.
|
template<typename intersector_t>
struct detray::intersector_base< intersector_t >
Base class for an intersector: Provides mask based call interfaces for convenience.