From 4fdd254f2acc2b2b5929b091dc899262ffccfba8 Mon Sep 17 00:00:00 2001 From: Rhys Lloyd Date: Mon, 24 Nov 2025 12:06:24 -0800 Subject: [PATCH] remove is more clear --- engine/physics/src/minimum_difference.rs | 29 ++++++++++++------------ 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/engine/physics/src/minimum_difference.rs b/engine/physics/src/minimum_difference.rs index 2ddf9031..b6c5df0c 100644 --- a/engine/physics/src/minimum_difference.rs +++ b/engine/physics/src/minimum_difference.rs @@ -142,7 +142,7 @@ fn reduce_simplex( return (direction.narrow_1().unwrap(),simplex) } - simplex.pop(); + simplex.remove(1); // local direction = p let mut direction=p; @@ -217,11 +217,11 @@ fn reduce_simplex( // u_u=v_v; // unused // b0 = c0 // b1 = c1 - simplex[1]=simplex[2]; + simplex.remove(1); + }else{ + simplex.remove(2); } - simplex.pop(); - // local p_u = p:Dot(u) let p_u=p.dot(u); @@ -239,7 +239,7 @@ fn reduce_simplex( return (direction.narrow_1().unwrap(),simplex) } - simplex.pop(); + simplex.remove(1); // local direction = p let direction=p; @@ -314,8 +314,7 @@ fn reduce_simplex( // uv_p=pv_w; // unused // b0, c0 = c0, d0 // b1, c1 = c1, d1 - simplex[1]=simplex[2]; - simplex[2]=simplex[3]; + simplex.remove(1); // elseif wuDist == minDist3 then }else if wu_dist==min_dist{ (u,v)=(w,u); @@ -323,12 +322,14 @@ fn reduce_simplex( // uv_p=up_w; // unused // b0, c0 = d0, b0 // b1, c1 = d1, b1 + // before [a,b,c,d] simplex[2]=simplex[1]; - simplex[1]=simplex[3]; + simplex.swap_remove(1); + // after [a,d,b] + }else{ + simplex.remove(2); } - simplex.pop(); - // local up = u:Cross(p) // local pv = p:Cross(v) // local uv_up = uv:Dot(up) @@ -367,11 +368,11 @@ fn reduce_simplex( // u_u=v_v; // unused // b0 = c0 // b1 = c1 - simplex[1]=simplex[2]; + simplex.remove(1); + }else{ + simplex.remove(2); } - simplex.pop(); - // local p_u = p:Dot(u) let p_u=p.dot(u); @@ -394,7 +395,7 @@ fn reduce_simplex( return (direction.narrow_1().unwrap(),simplex) } - simplex.pop(); + simplex.remove(1); // local direction = p let direction=p;