Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Abstand eines Punkts zu einem Dreieck (https://www.delphipraxis.net/135467-abstand-eines-punkts-zu-einem-dreieck.html)

Nikolas 11. Jun 2009 12:24

Re: Abstand eines Punkts zu einem Dreieck
 
Da hast du auch recht. Und da es die einfachste ist, werde ich sie auch als erste implementieren. Da gibt es keine Spezialfälle und Vorzeichen muss ich auch nicht beachten :mrgreen:

SimStar001 11. Jun 2009 17:56

Re: Abstand eines Punkts zu einem Dreieck
 
Stichwort: ANALYTISCHE GEOMETRIE!!!


einfach drei Gerade bilden (A-B) (B-C) und (C-A) und jeweils den Normalenvektor zu P von jeder Gerade bilden und den Abstand berechen.

wenns nur im 2D ist noch einfacher:

z.b. A = 0,0
B = 1,5
C = 3,1

nun die gerade (a-b) x*(1,5) --> sekrechter Winkelvektor dazu v(5,1) und nun haste ne neue Gerade mit Punkt p als punkt und dem senkrechten vektor zu (a-b). nun nur noch den Schnittpunkt der beiden geraden bilden und du hast den Punkt auf der geraden (a-b) der Punkt P am nächsten ist.


Das ganze musste für alle geraden machen und dann gucken welcer wert am kleinsten ist!

Nikolas 11. Jun 2009 21:33

Re: Abstand eines Punkts zu einem Dreieck
 
So, die ersten Ergebnisse sind da.

Ich habe erstmal die Methode mit der Fläche implementiert und kam auf 400Berechnungen/ms (10.000.000 in 25,600s).
Gerade eben habe ich noch den Vorschlag mit der Boundingbox implementiert und habe dadurch nochmal auf 19,800s beschleunigen können, was dann grob 500Berechnungen pro ms entspricht.
Vielleicht werde ich in den nächsten Tagen noch die anderen Optionen ausprobieren, spätestens wenn das Programm, das auf der Berechnung hier beruht zu langsam läuft, werde ich mir die Operation noch mal genauer anschauen.

Auf jeden Fall vielen Dank für die vielen guten Ideen : )


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:07 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz