private distanceFromALine ( float pX, float pY, float lX0, float lY0, float lX1, float lY1 ) : float | ||
pX | float | |
pY | float | |
lX0 | float | |
lY0 | float | |
lX1 | float | |
lY1 | float | |
return | float |
private float distanceFromALine(float pX, float pY, float lX0, float lY0, float lX1, float lY1)
{
Vector2 n = Vector2.Normalize(new Vector2(lX0 - lX1, lY0 - lY1));
Vector2 v = new Vector2(pX - lX0, pY - lY0);
return Math.Abs(Vector2.Dot(new Vector2(-n.Y, n.X), v));
}