aboutsummaryrefslogtreecommitdiff
path: root/src/geometry/collider.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/geometry/collider.rs')
-rw-r--r--src/geometry/collider.rs18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/geometry/collider.rs b/src/geometry/collider.rs
index efe6304..95ae273 100644
--- a/src/geometry/collider.rs
+++ b/src/geometry/collider.rs
@@ -8,8 +8,8 @@ use crate::math::{AngVector, Isometry, Point, Real, Rotation, Vector, DIM};
use crate::parry::transformation::vhacd::VHACDParameters;
use crate::pipeline::{ActiveEvents, ActiveHooks};
use na::Unit;
-use parry::bounding_volume::AABB;
-use parry::shape::Shape;
+use parry::bounding_volume::Aabb;
+use parry::shape::{Shape, TriMeshFlags};
#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))]
#[derive(Clone)]
@@ -348,13 +348,13 @@ impl Collider {
}
/// Compute the axis-aligned bounding box of this collider.
- pub fn compute_aabb(&self) -> AABB {
+ pub fn compute_aabb(&self) -> Aabb {
self.shape.compute_aabb(&self.pos)
}
/// Compute the axis-aligned bounding box of this collider moving from its current position
/// to the given `next_position`
- pub fn compute_swept_aabb(&self, next_position: &Isometry<Real>) -> AABB {
+ pub fn compute_swept_aabb(&self, next_position: &Isometry<Real>) -> Aabb {
self.shape.compute_swept_aabb(&self.pos, next_position)
}
@@ -550,6 +550,16 @@ impl ColliderBuilder {
Self::new(SharedShape::trimesh(vertices, indices))
}
+ /// Initializes a collider builder with a triangle mesh shape defined by its vertex and index buffers and
+ /// flags controlling its pre-processing.
+ pub fn trimesh_with_flags(
+ vertices: Vec<Point<Real>>,
+ indices: Vec<[u32; 3]>,
+ flags: TriMeshFlags,
+ ) -> Self {
+ Self::new(SharedShape::trimesh_with_flags(vertices, indices, flags))
+ }
+
/// Initializes a collider builder with a compound shape obtained from the decomposition of
/// the given trimesh (in 3D) or polyline (in 2D) into convex parts.
pub fn convex_decomposition(vertices: &[Point<Real>], indices: &[[u32; DIM]]) -> Self {