rename variable

This commit is contained in:
Quaternions 2024-08-21 19:19:43 -07:00
parent 94d8bcfcea
commit ad8b2c3793

View File

@ -38,9 +38,9 @@ struct CI<'a>{
index:usize, index:usize,
} }
impl CI<'_>{ impl CI<'_>{
fn new(pnv_list:&Vec<Contact>,index:usize)->CI<'_>{ fn new(conts:&Vec<Contact>,index:usize)->CI<'_>{
CI{ CI{
contact:&pnv_list[index], contact:&conts[index],
index index
} }
} }
@ -273,14 +273,14 @@ fn get_best_push_ray_and_indices_4(point:Planar64Vec3,ci0:CI,ci1:CI,ci2:CI,ci3:C
fn get_best_push_ray_and_indices( fn get_best_push_ray_and_indices(
point:Planar64Vec3, point:Planar64Vec3,
pnv_list:&Vec<Contact>, conts:&Vec<Contact>,
indices:Indices, indices:Indices,
)->Option<(Ray,Indices)>{ )->Option<(Ray,Indices)>{
match indices.as_slice(){ match indices.as_slice(){
&[i0,i1,i2,i3]=>get_best_push_ray_and_indices_4(point,CI::new(pnv_list,i0),CI::new(pnv_list,i1),CI::new(pnv_list,i2),CI::new(pnv_list,i3)), &[i0,i1,i2,i3]=>get_best_push_ray_and_indices_4(point,CI::new(conts,i0),CI::new(conts,i1),CI::new(conts,i2),CI::new(conts,i3)),
&[i0,i1,i2]=>get_best_push_ray_and_indices_3(point,CI::new(pnv_list,i0),CI::new(pnv_list,i1),CI::new(pnv_list,i2)), &[i0,i1,i2]=>get_best_push_ray_and_indices_3(point,CI::new(conts,i0),CI::new(conts,i1),CI::new(conts,i2)),
&[i0,i1]=>get_best_push_ray_and_indices_2(point,CI::new(pnv_list,i0),CI::new(pnv_list,i1)), &[i0,i1]=>get_best_push_ray_and_indices_2(point,CI::new(conts,i0),CI::new(conts,i1)),
&[i0]=>get_best_push_ray_and_indices_1(point,CI::new(pnv_list,i0)), &[i0]=>get_best_push_ray_and_indices_1(point,CI::new(conts,i0)),
&[]=>get_best_push_ray_and_indices_0(point), &[]=>get_best_push_ray_and_indices_0(point),
_=>unreachable!(), _=>unreachable!(),
} }
@ -289,8 +289,8 @@ fn get_best_push_ray_and_indices(
fn get_touch_time(ray:&Ray,c:&Contact)->Planar64{ fn get_touch_time(ray:&Ray,c:&Contact)->Planar64{
(ray.origin-c.position).dot(c.normal)/(c.velocity-ray.direction).dot(c.normal) (ray.origin-c.position).dot(c.normal)/(c.velocity-ray.direction).dot(c.normal)
} }
fn get_first_touch(pnv_list:&Vec<Contact>,ray:&Ray,indices:&Indices)->Option<(Planar64,usize)>{ fn get_first_touch(conts:&Vec<Contact>,ray:&Ray,indices:&Indices)->Option<(Planar64,usize)>{
pnv_list.iter() conts.iter()
.enumerate() .enumerate()
.filter(|&(i,contact)| .filter(|&(i,contact)|
!indices.contains(&i) !indices.contains(&i)
@ -300,10 +300,10 @@ fn get_first_touch(pnv_list:&Vec<Contact>,ray:&Ray,indices:&Indices)->Option<(Pl
.min_by_key(|&(t,_)|t) .min_by_key(|&(t,_)|t)
} }
pub fn push_solve(pnv_list:&Vec<Contact>,point:Planar64Vec3)->Option<Planar64Vec3>{ pub fn push_solve(conts:&Vec<Contact>,point:Planar64Vec3)->Option<Planar64Vec3>{
let (mut ray,mut indices)=get_best_push_ray_and_indices_0(point)?; let (mut ray,mut indices)=get_best_push_ray_and_indices_0(point)?;
loop{ loop{
let (next_t,next_index)=get_first_touch(pnv_list,&ray,&indices)?; let (next_t,next_index)=get_first_touch(conts,&ray,&indices)?;
if Planar64::ZERO<=next_t{ if Planar64::ZERO<=next_t{
return Some(ray.origin); return Some(ray.origin);
@ -316,13 +316,13 @@ pub fn push_solve(pnv_list:&Vec<Contact>,point:Planar64Vec3)->Option<Planar64Vec
indices.push(next_index); indices.push(next_index);
let meet_point=ray.extrapolate(next_t); let meet_point=ray.extrapolate(next_t);
match get_best_push_ray_and_indices(meet_point,pnv_list,indices){ match get_best_push_ray_and_indices(meet_point,conts,indices){
Some((new_ray,new_indices))=>(ray,indices)=(new_ray,new_indices), Some((new_ray,new_indices))=>(ray,indices)=(new_ray,new_indices),
None=>return Some(meet_point), None=>return Some(meet_point),
} }
} }
} }
pub fn push_solve_with_output(pnv_list:&Vec<Contact>,point:Planar64Vec3,output:&mut Vec<Planar64Vec3>){ pub fn push_solve_with_output(conts:&Vec<Contact>,point:Planar64Vec3,output:&mut Vec<Planar64Vec3>){
// //
} }