Winkel im Dreieck mit zwei Unbekannten
Übersicht

![]() |
LunatixBetreff: Winkel im Dreieck mit zwei Unbekannten |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
Ich steh grad vor dem Problem, das ich Blitz(max) intern nen Winkel brauch. Ich habe alle x/y positionen der Punkte, könnte auch die Längen somit ausrechnen, habe aber in dem (Gedachten) dreick nur den 90° Winkel. Nun habe ich 2 Unbekannte, mindestens eine brauche ich... Zur verdeutlichung: )um die schräge linie gehts, rest ist gedacht) ![]() Nunja... ich hab sowas seit ca. 3 jahren nichtmehr gemacht, in meinem Tabellen- sowie Formelbuch findt sich nix und nichtmal bei meiner Freundin im Tabellenbuch... weiss auch nicht genau wonach ich suchen sollt, im Internet auch nix gefunden... aber irgendwie ging das, das weiss ich. Hat jemand ne Lösung oder Idee? Brauch keine rechnung oder so, nur die Formel oder erklärung dazu... mfg Denis [Edit] Darren, zu hülf! (https://www.blitzforum.de/foru...highlight=) |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi
wenn du alle x/y Positionen hast kannst du wie du ja gesagt hast die Längen der Seiten ausrechnen. Dann kannst du mit sin/cos/tan(weil rechtwinklig) die beiden fehlenden Winkel ausrechnen. Es gilt immer sin(alpha) = gegenkathete/hyphotenuse alpha bekommst du in blitz mit der funktion asin(sinuswert) Wenn du ein nicht rechtwinkliges Dreieck hast kannst du immernoch z.B. den cosinussatz(a² = b² + c² - 2bc*cos(alpha) ) verwenden MfG Phil |
||
![]() |
mahe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function Pos2Winkel:Double(x1:Int, y1:Int, x2:Int, y2:Int)
Return ((ATan2((y2-y1),(x2-x1))+360) Mod 360) EndFunction Errechnet aus zwei Punkten einen Winkel. Erklärung zu ATan2: http://www.blitzbase.de/befehle2d/atan2.htm |
||
ʇɹǝıdɯnɹɹoʞ ɹnʇɐuƃıs - ǝpoɥʇǝɯ-ɹoɹɹıɯ ɹǝp uı ,ɹoɹɹǝ, |
Eternal_Pain |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Mit der Funktion kann irgendwas nicht stimmen.... wenn ich einen Punkt (x=200 und y=200) habe und der mir einen Winkel zu Punkt (x=100 und y=100) geben soll, kann der unmoeglich 1 sein oO? | ||
![]() |
mahe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function Pos2Winkel:Double(x1:Int, y1:Int, x2:Int, y2:Int)
Return ((ATan2((y2-y1),(x2-x1))+360) Mod 360) EndFunction Print Pos2Winkel(200,200,100,100) Ergibt bei mir 225.0 was durchaus stimmen könnte. |
||
ʇɹǝıdɯnɹɹoʞ ɹnʇɐuƃıs - ǝpoɥʇǝɯ-ɹoɹɹıɯ ɹǝp uı ,ɹoɹɹǝ, |
![]() |
Kernle 32DLL |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ansonsten könnte man in Blitz 3D auch einfach die Funktionen VectorYaw und VectorPitch benutzen. mahe's Methode ist aber glaube ich besser, da VectorYaw und VectorPitch immer relativ zum 0 Punkt der Welt rechnen ![]() Grüßle: Kernle |
||
Mein PC: "Bluelight" - Xtreme Gamer PC [Video]
Meine Projekte: Cube-Wars 2010 [Worklog] Anerkennungen: 1. Platz BCC #7 , 1. Platz BCC #22 , 3. Platz BAC #89 Ich war dabei: NRW Treff III, IV ; Frankfurter BB Treffen 2009 |
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Atan2... ja jetzt fälltsd mir wieder ein, damals bei CS2D schon gesehen und einmal selbst verwendet für ein ähnliches spiel...
phil217: Das stimmt sogar, hab ich heute im Tabellenbuch Metal von unserm Werkstattleiter gefunden... in unsern stehts nicht drin (die neuen von Europa) :/ Ich werds mal versuchen, sollte jetzt klappen, danke an alle ![]() |
||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
X-tra |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] ((ATan2((y2-y1),(x2-x1))+360) Mod 360) was bedeutet +360) am ende der funktion?
|
||
![]() |
Lunatix |
![]() Antworten mit Zitat ![]() |
---|---|---|
360°, da die Summe im Kreis = 360. (Im Dreieck z.b. 180) | ||
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen... |
X-tra |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Was passiert wenn y2 und x2 größer als y1 und x1 sind?
Dann kommen ja negative Zahlen heraus. Haut das dann trotzdem noch hin? |
||
![]() |
mahe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, es kommt ein Winkel zwischen 0 und 360 heraus. Völlig egal wo die beiden Punkte sind. | ||
ʇɹǝıdɯnɹɹoʞ ɹnʇɐuƃıs - ǝpoɥʇǝɯ-ɹoɹɹıɯ ɹǝp uı ,ɹoɹɹǝ, |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group