diff options
| author | Sébastien Crozet <developer@crozet.re> | 2021-04-01 11:00:27 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-01 11:00:27 +0200 |
| commit | f8536e73fc092da5ded5c793d513c59296949aff (patch) | |
| tree | 50af9e4312b22ea2c1cabc0e6d80dc73e59b3104 /src/dynamics/coefficient_combine_rule.rs | |
| parent | 4b637c66ca40695f97f1ebdc38965e0d83ac5934 (diff) | |
| parent | cc3f16eb85f23a86ddd9d182d967cb12acc32354 (diff) | |
| download | rapier-f8536e73fc092da5ded5c793d513c59296949aff.tar.gz rapier-f8536e73fc092da5ded5c793d513c59296949aff.tar.bz2 rapier-f8536e73fc092da5ded5c793d513c59296949aff.zip | |
Merge pull request #157 from dimforge/ccd
Implement Continuous Collision Detection
Diffstat (limited to 'src/dynamics/coefficient_combine_rule.rs')
| -rw-r--r-- | src/dynamics/coefficient_combine_rule.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/dynamics/coefficient_combine_rule.rs b/src/dynamics/coefficient_combine_rule.rs index 2c66888..9b3b9ee 100644 --- a/src/dynamics/coefficient_combine_rule.rs +++ b/src/dynamics/coefficient_combine_rule.rs @@ -21,6 +21,16 @@ pub enum CoefficientCombineRule { } impl CoefficientCombineRule { + pub(crate) fn from_value(val: u8) -> Self { + match val { + 0 => CoefficientCombineRule::Average, + 1 => CoefficientCombineRule::Min, + 2 => CoefficientCombineRule::Multiply, + 3 => CoefficientCombineRule::Max, + _ => panic!("Invalid coefficient combine rule."), + } + } + pub(crate) fn combine(coeff1: Real, coeff2: Real, rule_value1: u8, rule_value2: u8) -> Real { let effective_rule = rule_value1.max(rule_value2); |
