This commit is contained in:
Quaternions 2024-08-21 19:33:56 -07:00
parent ad8b2c3793
commit 6f389e56ac

View File

@ -1,7 +1,10 @@
use strafesnet_common::integer::{Planar64,Planar64Vec3}; use strafesnet_common::integer::{Planar64,Planar64Vec3};
// 1/2^10
const EPSILON:Planar64=Planar64::raw(1<<(32-10)); const EPSILON:Planar64=Planar64::raw(1<<(32-10));
// A stack-allocated variable-size list that holds up to 4 elements
// This is used for i0, i1, i2, i3
type Indices=arrayvec::ArrayVec<usize,4>; type Indices=arrayvec::ArrayVec<usize,4>;
struct Ray{ struct Ray{
@ -32,6 +35,8 @@ impl Contact{
(direction-self.velocity).dot(self.normal) (direction-self.velocity).dot(self.normal)
} }
} }
//A reference to a Contact and its respective index, paired together
#[derive(Clone,Copy)] #[derive(Clone,Copy)]
struct CI<'a>{ struct CI<'a>{
contact:&'a Contact, contact:&'a Contact,
@ -107,9 +112,6 @@ fn decompose3(point:Planar64Vec3,u0:Planar64Vec3,u1:Planar64Vec3,u2:Planar64Vec3
Some((s0,s1,s2)) Some((s0,s1,s2))
} }
const fn is_space_enclosed_0_1()->bool{
false
}
fn is_space_enclosed_2( fn is_space_enclosed_2(
a:Planar64Vec3, a:Planar64Vec3,
b:Planar64Vec3, b:Planar64Vec3,