|
| kdtree (Mesh const &mesh, size_t const max_depth=default_max_depth) |
|
virtual | ~kdtree ()=default |
|
auto | mesh () const -> auto const & |
|
auto | num_vertex_handles () const |
|
auto | num_triangle_handles () const |
|
auto | split_if_necessary () -> void |
|
constexpr auto | is_splitted () const |
|
constexpr auto | holds_vertices () const |
|
constexpr auto | is_at_max_depth () const |
|
auto | write_vtk (filesystem::path const &path) |
|
auto constexpr | center () const |
|
auto constexpr | center (std::size_t const i) const |
|
auto constexpr | is_inside (pos_type const &p) const |
|
auto constexpr | max () const -> auto const & |
|
auto constexpr | max () -> auto & |
|
auto constexpr | max (std::size_t i) const -> auto const & |
|
auto constexpr | max (std::size_t i) -> auto & |
|
auto constexpr | min () const -> auto const & |
|
auto constexpr | min () -> auto & |
|
auto constexpr | min (std::size_t i) const -> auto const & |
|
auto constexpr | min (std::size_t i) -> auto & |
|
constexpr auto | is_simplex_inside (vec< Real, 2 > const &x0, vec< Real, 2 > const &x1, vec< Real, 2 > const &x2) const |
|
constexpr auto | is_simplex_inside (vec< Real, 3 > x0, vec< Real, 3 > x1, vec< Real, 3 > x2) const |
|
constexpr auto | is_simplex_inside (vec< Real, 3 > x0, vec< Real, 3 > x1, vec< Real, 3 > x2, vec< Real, 3 > x3) const |
|
constexpr | axis_aligned_bounding_box () |
|
constexpr | axis_aligned_bounding_box (axis_aligned_bounding_box const &other)=default |
|
constexpr | axis_aligned_bounding_box (axis_aligned_bounding_box &&other) noexcept=default |
|
constexpr auto | operator= (axis_aligned_bounding_box const &other) -> axis_aligned_bounding_box &=default |
|
constexpr auto | operator= (axis_aligned_bounding_box &&other) noexcept -> axis_aligned_bounding_box &=default |
|
| ~axis_aligned_bounding_box ()=default |
|
template<typename Real0 , typename Real1 > |
constexpr | axis_aligned_bounding_box (vec< Real0, NumDimensions > &&min, vec< Real1, NumDimensions > &&max) noexcept |
|
template<typename Real0 , typename Real1 > |
constexpr | axis_aligned_bounding_box (vec< Real0, NumDimensions > const &min, vec< Real1, NumDimensions > const &max) |
|
template<typename Tensor0 , typename Tensor1 , typename Real0 , typename Real1 > |
constexpr | axis_aligned_bounding_box (base_tensor< Tensor0, Real0, NumDimensions > const &min, base_tensor< Tensor1, Real1, NumDimensions > const &max) |
|
auto constexpr | min () const -> auto const & |
|
auto constexpr | min () -> auto & |
|
auto constexpr | min (std::size_t i) const -> auto const & |
|
auto constexpr | min (std::size_t i) -> auto & |
|
auto constexpr | max () const -> auto const & |
|
auto constexpr | max () -> auto & |
|
auto constexpr | max (std::size_t i) const -> auto const & |
|
auto constexpr | max (std::size_t i) -> auto & |
|
auto constexpr | extents () const |
|
auto constexpr | extent (std::size_t i) const |
|
auto constexpr | area () const |
|
auto constexpr | volume () const |
|
auto constexpr | center () const |
|
auto constexpr | center (std::size_t const i) const |
|
auto constexpr | is_inside (pos_type const &p) const |
|
constexpr auto | is_rectangle_inside (vec< Real, 2 > x0, vec< Real, 2 > x1, vec< Real, 2 > x2, vec< Real, 2 > x3) const |
|
constexpr auto | is_simplex_inside (vec< Real, 2 > const &x0, vec< Real, 2 > const &x1, vec< Real, 2 > const &x2) const |
|
constexpr auto | is_simplex_inside (vec< Real, 3 > x0, vec< Real, 3 > x1, vec< Real, 3 > x2) const |
|
constexpr auto | is_simplex_inside (vec< Real, 3 > x0, vec< Real, 3 > x1, vec< Real, 3 > x2, vec< Real, 3 > x3) const |
|
constexpr auto | operator+= (pos_type const &point) |
|
constexpr auto | reset () |
|
constexpr auto | add_dimension (Real const min, Real const max) const |
|
template<typename RandomEngine = std::mt19937_64> |
auto | random_point (RandomEngine &&random_engine=RandomEngine{ std::random_device{}()}) const |
|
auto | write_vtk (filesystem::path const &path) |
|
auto | as_aabb () const -> auto const & |
|
auto | check_intersection (ray_type const &r, Real const=0) const -> optional_intersection_type override |
|
virtual | ~ray_intersectable ()=default |
|
virtual auto | check_intersection (ray_type const &r, real_type const min_t) const -> optional_intersection_type=0 |
|