예제 #1
0
 public static DuckGame.Vec2 Vec2(DuckGame.Vec2 current, DuckGame.Vec2 to, float amount)
 {
     DuckGame.Vec2 vec2_1 = current;
     DuckGame.Vec2 vec2_2 = to;
     DuckGame.Vec2 vec2_3 = vec2_2 - vec2_1;
     if ((double)vec2_3.Length() < 9.99999974737875E-05)
     {
         return(current);
     }
     vec2_3.Normalize();
     DuckGame.Vec2 vec2_4 = vec2_1 + vec2_3 * amount;
     if ((double)vec2_2.x > (double)vec2_1.x && (double)vec2_4.x > (double)vec2_2.x)
     {
         vec2_4.x = vec2_2.x;
     }
     if ((double)vec2_2.x < (double)vec2_1.x && (double)vec2_4.x < (double)vec2_2.x)
     {
         vec2_4.x = vec2_2.x;
     }
     if ((double)vec2_2.y > (double)vec2_1.y && (double)vec2_4.y > (double)vec2_2.y)
     {
         vec2_4.y = vec2_2.y;
     }
     if ((double)vec2_2.y < (double)vec2_1.y && (double)vec2_4.y < (double)vec2_2.y)
     {
         vec2_4.y = vec2_2.y;
     }
     return(vec2_4);
 }
예제 #2
0
 public static DuckGame.Vec2 Vec2Smooth(DuckGame.Vec2 current, DuckGame.Vec2 to, float amount) => current + amount * (to - current);