diff options
| author | Crozet Sébastien <developer@crozet.re> | 2021-03-07 17:15:32 +0100 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2021-03-07 17:15:32 +0100 |
| commit | 0e4393ba9e408952395cfccaef6dc192886e2839 (patch) | |
| tree | 32b7bd0f0391ed02a5035774e5e6c0a9ab32719c /src/dynamics/solver/delta_vel.rs | |
| parent | 4cb1f5c692f580483a7316c224380a6aaf74c679 (diff) | |
| download | rapier-0e4393ba9e408952395cfccaef6dc192886e2839.tar.gz rapier-0e4393ba9e408952395cfccaef6dc192886e2839.tar.bz2 rapier-0e4393ba9e408952395cfccaef6dc192886e2839.zip | |
Reduce code duplication between the SIMD and non-SIMD contact solve and warmstart.
Diffstat (limited to 'src/dynamics/solver/delta_vel.rs')
| -rw-r--r-- | src/dynamics/solver/delta_vel.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/dynamics/solver/delta_vel.rs b/src/dynamics/solver/delta_vel.rs index 378d302..b50cb76 100644 --- a/src/dynamics/solver/delta_vel.rs +++ b/src/dynamics/solver/delta_vel.rs @@ -1,5 +1,6 @@ use crate::math::{AngVector, Vector}; use na::{Scalar, SimdRealField}; +use std::ops::AddAssign; #[derive(Copy, Clone, Debug)] //#[repr(align(64))] @@ -16,3 +17,10 @@ impl<N: SimdRealField> DeltaVel<N> { } } } + +impl<N: SimdRealField> AddAssign for DeltaVel<N> { + fn add_assign(&mut self, rhs: Self) { + self.linear += rhs.linear; + self.angular += rhs.angular; + } +} |
