Winkel finden

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

BlitzBasic303

Betreff: Winkel finden

BeitragDi, Aug 14, 2007 20:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

Es geht um Folgendes:
Ich habe zwei Kugeln, die Kugeln kollidieren und ich habe die Koordinaten der Mittelpunkte von den Kugeln, jetzt zeichne ich eine Gerade ein die durch beide Punkte verläuft, und von dieser Gerade muss ich den Winkel finden, nochmal als Bild:
[img]Img.PNG[/img]
Von der Rot umrandeten Gerade der Winkel wird gesucht.

Wie kann ich das anstellen? Ich denke mal ich behandle es als Dreieck, dann kann man ja die Länge der Ankathete und Gegenkathete einfach herausfinden und so dann den Winkel berechnen, würde das so klappen und welche Formel brauch ich?

Mfg

Blitz303
  • Zuletzt bearbeitet von BlitzBasic303 am Fr, Jan 11, 2013 22:25, insgesamt einmal bearbeitet

AmateurBB

Betreff: formlen...

BeitragDi, Aug 14, 2007 21:01
Antworten mit Zitat
Benutzer-Profile anzeigen
a²=b²+c²-2*b*c*cos(alpha)
b²=a²+c²-2*a*c*cos(beta)
c²=a²+b²-2*a*b*cos(gamma)

evtl. noch umstellen, weiß nicht, ob sie was bringen...
Notebook Medion 97400 | 2 Ghz | 2x ATI Radeon XPRESS 200M (onboard) | Blitz3D 1.86 | Windows 7 / Windows XP | http://www.powerswitch-entertainment.de.vu/

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDi, Aug 14, 2007 21:22
Antworten mit Zitat
Benutzer-Profile anzeigen
mit atan2 ist das einfacher zu lösen....

Code: [AUSKLAPPEN]
Graphics 800 ,600,16,2
x1 = 400
y1 = 300
SetBuffer BackBuffer ()
While Not KeyDown (1)
    Cls
    x2 = MouseX ()
    y2 = MouseY ()
    Line x1,y1,x2,y2
    winkel = ATan2 (y1 - y2,x1 - x2) + 180
    Text 400 ,20,"GRAD: " + winkel ,1
    Flip
Wend
End
[BB2D | BB3D | BB+]
 

BlitzBasic303

BeitragDi, Aug 14, 2007 22:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Rallimen, das wars was ich gesucht habe. Ok, ich hab zu ATan2 noch etwas anderes Gefunden:
Code: [AUSKLAPPEN]

Graphics 800 ,600,16,2
x1 = 400
y1 = 300
SetBuffer BackBuffer ()
While Not KeyDown (1)
    Cls
    x2 = MouseX ()
    y2 = MouseY ()
    Line x1,y1,x2,y2
    Winkel#=(ATan2(Y1 - Y2,X1 - X2)+270) Mod 360
    Text 400 ,20,"GRAD: " + winkel ,1
    Flip
Wend
End

Das ist noch besser und verhält sich fast so wie ich viel, ich müsste das ganze nurnoch umgekehrt haben, also wo jetzt 330° steht soll 30° stehen und wo 30° steht soll 330° stehen, soll ich einfach n If Gebilde bauen oder gibts auch einfach eine Formel mit der das ganz einfach und schnell geht?

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDi, Aug 14, 2007 22:45
Antworten mit Zitat
Benutzer-Profile anzeigen
da brauchst du nur die Werte umstellen
Code: [AUSKLAPPEN]
winkel#=(ATan2(X1 - X2,Y1 - Y2)+360) Mod 360
[BB2D | BB3D | BB+]

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group