Exemplo n.º 1
0
 public static Line2 Translate(this Line2 @this, Vector2 vector)
 {
     return(new Line2(@this.FreeTerm - @this.Normal * vector, @this.Normal));
 }
Exemplo n.º 2
0
        public static Vector2 Project(this Line2 @this, Vector2 point)
        {
            var direction = @this.Direction;

            return(@this.ProjectOrigin() + (direction * point) * direction);
        }
Exemplo n.º 3
0
 public static Vector2 ProjectOrigin(this Line2 @this)
 {
     return([email protected] * @this.Normal);
 }
Exemplo n.º 4
0
 public static bool IsOnPositiveSide(this Vector2 @this, Line2 line)
 {
     return(@this.SignedDistanceTo(line) > 0);
 }
Exemplo n.º 5
0
 public static double DistanceTo(this Vector2 @this, Line2 line)
 {
     return(Math.Abs(@this.SignedDistanceTo(line)));
 }
Exemplo n.º 6
0
 public static double SignedDistanceTo(this Vector2 @this, Line2 line)
 {
     return(@this * line.Normal + line.FreeTerm);
 }