Skip to main content

parry3d/bounding_volume/
mod.rs

1//! Bounding volumes.
2
3#[doc(inline)]
4pub use crate::bounding_volume::aabb::Aabb;
5
6// pub use crate::bounding_volume::simd_aabb::SimdAabb;
7
8#[doc(inline)]
9pub use crate::bounding_volume::bounding_sphere::BoundingSphere;
10#[doc(inline)]
11pub use crate::bounding_volume::bounding_volume::BoundingVolume;
12
13#[doc(hidden)]
14pub mod bounding_volume;
15
16#[doc(hidden)]
17pub mod aabb;
18mod aabb_ball;
19#[cfg(feature = "dim2")]
20#[cfg(feature = "alloc")]
21mod aabb_convex_polygon;
22#[cfg(feature = "dim3")]
23#[cfg(feature = "alloc")]
24mod aabb_convex_polyhedron;
25mod aabb_cuboid;
26mod aabb_halfspace;
27#[cfg(feature = "alloc")]
28mod aabb_heightfield;
29mod aabb_support_map;
30mod aabb_triangle;
31mod aabb_utils;
32
33mod aabb_capsule;
34#[cfg(feature = "alloc")]
35mod aabb_voxels;
36#[doc(hidden)]
37pub mod bounding_sphere;
38mod bounding_sphere_ball;
39mod bounding_sphere_capsule;
40#[cfg(feature = "dim3")]
41mod bounding_sphere_cone;
42#[cfg(feature = "dim3")]
43#[cfg(feature = "alloc")]
44mod bounding_sphere_convex;
45#[cfg(feature = "dim2")]
46#[cfg(feature = "alloc")]
47mod bounding_sphere_convex_polygon;
48mod bounding_sphere_cuboid;
49#[cfg(feature = "dim3")]
50mod bounding_sphere_cylinder;
51mod bounding_sphere_halfspace;
52#[cfg(feature = "alloc")]
53mod bounding_sphere_heightfield;
54#[cfg(feature = "alloc")]
55mod bounding_sphere_polyline;
56mod bounding_sphere_segment;
57mod bounding_sphere_triangle;
58#[cfg(feature = "alloc")]
59mod bounding_sphere_trimesh;
60mod bounding_sphere_utils;
61#[cfg(feature = "alloc")]
62mod bounding_sphere_voxels;
63
64// mod simd_aabb;
65
66/// Free functions for some special cases of bounding-volume computation.
67pub mod details {
68    #[cfg(feature = "dim3")]
69    pub use super::aabb_utils::support_map_aabb;
70    pub use super::aabb_utils::{
71        local_point_cloud_aabb, local_point_cloud_aabb_ref, local_support_map_aabb,
72        point_cloud_aabb, point_cloud_aabb_ref,
73    };
74    pub use super::bounding_sphere_utils::point_cloud_bounding_sphere;
75}