diff options
Diffstat (limited to 'src/dynamics')
| -rw-r--r-- | src/dynamics/mod.rs | 3 | ||||
| -rw-r--r-- | src/dynamics/rigid_body.rs | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/dynamics/mod.rs b/src/dynamics/mod.rs index 10cdd29..71b73c9 100644 --- a/src/dynamics/mod.rs +++ b/src/dynamics/mod.rs @@ -17,6 +17,9 @@ pub(crate) use self::solver::IslandSolver; #[cfg(feature = "parallel")] pub(crate) use self::solver::ParallelIslandSolver; +#[cfg(feature = "fluids")] +pub use salva::object::{Boundary, BoundaryHandle, BoundarySet, Fluid, FluidHandle, FluidSet}; + mod integration_parameters; mod joint; mod mass_properties; diff --git a/src/dynamics/rigid_body.rs b/src/dynamics/rigid_body.rs index a1a23a0..303d1a0 100644 --- a/src/dynamics/rigid_body.rs +++ b/src/dynamics/rigid_body.rs @@ -370,6 +370,12 @@ impl RigidBody { self.apply_impulse(impulse, wake_up); self.apply_torque_impulse(torque_impulse, wake_up); } + + /// The velocity of the given world-space point on this rigid-body. + pub fn velocity_at_point(&self, point: &Point<f32>) -> Vector<f32> { + let dpt = point - self.world_com; + self.linvel + self.angvel.gcross(dpt) + } } /// A builder for rigid-bodies. |
