Ich kann horizontale und vertikale Punkte berechnen, aber ich kann nicht herausfinden, wie ich den Abstand mit diagonalen Punkten berechnen kann. Kann mir jemand dabei helfen?
Hier ist der Code für meine horizontale und vertikale Messung:
private float ComputeDistance(float point1, float point2)
{
float sol1 = point1 - point2;
float sol2 = (float)Math.Abs(Math.Sqrt(sol1 * sol1));
return sol2;
}
protected override void OnMouseMove(MouseEventArgs e)
{
_endPoint.X = e.X;
_endPoint.Y = e.Y;
if (ComputeDistance(_startPoint.X, _endPoint.X) <= 10)
{
str = ComputeDistance(_startPoint.Y, _endPoint.Y).ToString();
}
else
{
if (ComputeDistance(_startPoint.Y, _endPoint.Y) <= 10)
{
str = ComputeDistance(_startPoint.X, _endPoint.X).ToString();
}
}
}
Vorausgesetzt, dass der _startPoint bereits gesetzt wurde.
In diesem Bild ist der diagonale Punkt offensichtlich falsch.