Entwickler-Ecke
Algorithmen, Optimierung und Assembler - Winkel berechnen
Ferrari - Mi 22.03.06 17:06
Titel: Winkel berechnen
Hi,
Die Koordinaten von 3 Punkten (P1,P2,P3) sind gegeben und ich möchte den Winkel P1P2P3 berechnen.
Kann mir da jemand helfen?
Kroko - Mi 22.03.06 17:09
verschiebe P1 bis P3 mit -P2, dann ist P2 der Nullpunkt
Delphi-Quelltext
1: 2: 3:
| Alpha1 := AcrTan2 (P3.Y,P3.X); Alpha2 := ArcTan2 (P1.Y,P1.X); Alpha := Alpha1-Alpha2; |
starsurfer - Mi 22.03.06 17:09
wenns 2d Koordinaten sind dann guggst du ins Tafelwerk -Allgemeines Dreieck- bei Sinussatz und Kosinussatz ...
bei 3d Koordinaten dann guggst du unter Vektorrechnung und analytische Geometrie, machst aus den Punkten Vektoren und schaust bei Skalarprodukt von Vektoren rein...
Ferrari - Mi 22.03.06 17:12
Danke, ich werde es gleich ausprobieren.
Allesquarks - Mi 22.03.06 17:15
Kannst es ja auch über das Skalarprodukt machen.
(x1-x3)*(x2-x3)+(y1-y3)*(y2-y3)+(z1-z3)*(z2-z3)
Winkel=arccos(-----------------------------------------------------------------
SQRT((x1-x3)²+(y1-y3)²+(z1-z3)²)*SQRT((x2-x3)²+(y2-y3)²+(z2-z3)²)
Ferrari - Mi 22.03.06 17:25
Danke. Ich verstehe das zwar nicht, aber wird schon stimmen. Ich kanns ja mal so probieren.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!