1pub use self::ball::Ball;
4pub use self::capsule::Capsule;
5pub use self::cuboid::Cuboid;
6pub use self::feature_id::{FeatureId, PackedFeatureId};
7pub use self::half_space::HalfSpace;
8pub use self::polygonal_feature_map::PolygonalFeatureMap;
9pub use self::round_shape::RoundShape;
10pub use self::segment::{Segment, SegmentPointLocation};
11#[cfg(feature = "serde-serialize")]
12pub(crate) use self::shape::DeserializableTypedShape;
13#[doc(inline)]
14pub use self::shape::{Shape, ShapeType, TypedShape};
15#[doc(inline)]
16pub use self::support_map::SupportMap;
17pub use self::triangle::{Triangle, TriangleOrientation, TrianglePointLocation};
18
19#[cfg(feature = "alloc")]
20pub use self::{
21 composite_shape::{CompositeShape, CompositeShapeRef, TypedCompositeShape},
22 compound::Compound,
23 polyline::Polyline,
24 shared_shape::SharedShape,
25 voxels::{AxisMask, OctantPattern, VoxelData, VoxelState, VoxelType, Voxels, VoxelsChunkRef},
26};
27
28#[cfg(all(feature = "dim2", feature = "alloc"))]
30pub use self::polyline::PolylineFlags;
31
32#[cfg(feature = "dim2")]
33#[cfg(feature = "alloc")]
34pub use self::convex_polygon::ConvexPolygon;
35#[cfg(feature = "dim2")]
36#[cfg(feature = "alloc")]
37pub use self::heightfield2::*;
38#[cfg(feature = "dim2")]
39pub use self::polygonal_feature2d::PolygonalFeature;
40
41#[cfg(feature = "dim3")]
42pub use self::cone::Cone;
43#[cfg(feature = "dim3")]
44#[cfg(feature = "alloc")]
45pub use self::convex_polyhedron::ConvexPolyhedron;
46#[cfg(feature = "dim3")]
47pub use self::cylinder::Cylinder;
48#[cfg(feature = "dim3")]
49#[cfg(feature = "alloc")]
50pub use self::heightfield3::*;
51#[cfg(feature = "dim3")]
52pub use self::polygonal_feature3d::PolygonalFeature;
53pub use self::segment_pseudo_normals::SegmentPseudoNormals;
54#[cfg(feature = "dim3")]
55pub use self::tetrahedron::{Tetrahedron, TetrahedronPointLocation};
56pub use self::triangle_pseudo_normals::TrianglePseudoNormals;
57#[cfg(feature = "alloc")]
58pub use self::trimesh::*;
59
60#[cfg(feature = "dim3")]
62pub type RoundCylinder = RoundShape<Cylinder>;
63#[cfg(feature = "dim3")]
65pub type RoundCone = RoundShape<Cone>;
66pub type RoundCuboid = RoundShape<Cuboid>;
68pub type RoundTriangle = RoundShape<Triangle>;
70#[cfg(feature = "dim3")]
72#[cfg(feature = "alloc")]
73pub type RoundConvexPolyhedron = RoundShape<ConvexPolyhedron>;
74#[cfg(feature = "dim2")]
76#[cfg(feature = "alloc")]
77pub type RoundConvexPolygon = RoundShape<ConvexPolygon>;
78
79pub(crate) use self::round_shape::RoundShapeRef;
80
81mod ball;
82mod capsule;
83#[cfg(feature = "alloc")]
84#[doc(hidden)]
85pub mod composite_shape;
86#[cfg(feature = "alloc")]
87mod compound;
88mod cuboid;
89mod half_space;
90#[cfg(feature = "alloc")]
91mod polyline;
92mod round_shape;
93mod segment;
94#[doc(hidden)]
95pub mod shape;
96#[doc(hidden)]
97pub mod support_map;
98mod triangle;
99
100#[cfg(feature = "dim2")]
101#[cfg(feature = "alloc")]
102mod convex_polygon;
103#[cfg(feature = "dim2")]
104#[cfg(feature = "alloc")]
105mod heightfield2;
106
107#[cfg(feature = "dim3")]
108mod cone;
109#[cfg(feature = "dim3")]
110#[cfg(feature = "alloc")]
111mod convex_polyhedron;
112#[cfg(feature = "dim3")]
113mod cylinder;
114#[cfg(feature = "dim3")]
115#[cfg(feature = "alloc")]
116mod heightfield3;
117#[cfg(feature = "dim3")]
118mod polygonal_feature3d;
119mod polygonal_feature_map;
120#[cfg(feature = "dim3")]
121mod tetrahedron;
122#[cfg(feature = "alloc")]
123pub(crate) mod trimesh;
124mod feature_id;
126#[cfg(feature = "dim2")]
127mod polygonal_feature2d;
128#[cfg(feature = "alloc")]
129mod pseudo_normals;
130mod segment_pseudo_normals;
131#[cfg(feature = "alloc")]
132mod shared_shape;
133mod triangle_pseudo_normals;
134#[cfg(feature = "alloc")]
135mod voxels;