Ich habe zwei 3D-Punkte.
Beispiel:
Irgendjemand eine Idee für einen Algorithmus, um den Abstand in float zwischen den Punkten zu berechnen?
Der euklidische Abstand zwischen zwei 3D-Punkten ist:
%Vor%Und in N Dimensionen (ungetestet und anfällig für Überlauf):
%Vor%Bearbeiten: Ich bevorzuge die% desc_de% Lösung, die von dasblinkenlight veröffentlicht wird!
In C # mit LINQ können Sie dies tun:
%Vor%Dies summiert quadrierte paarweise Differenzen zwischen einzelnen Koordinaten und gibt die arithmetische Quadratwurzel der Summe zurück.
BEARBEITEN: Diese Lösung funktioniert für eine beliebige Anzahl von Dimensionen größer oder gleich eins (Danke an Austin Salonen für das Aufzeigen).
float distance=(float) Math.Sqrt(Math.Pow(point1[0]-point2[0],2) + Math.Pow(point1[1]-point2[1],2) + Math.Pow(point1[2]-point2[2],2))
Tags und Links c#