Seite 1 von 1

Formelhilfe....

Verfasst: 22.08.2008 19:27
von Bisonte
Folgendes Problem habe ich mit meiner Mathematik-Insuffizienz:

Ich habe eine "Kanone" in am unteren Rand(in der Mitte) eines Screens sagen wir von ScreenX=1024,ScreenY=768...

Nun möchte ich das diese Kanone mit Rotatesprite() immer zum Mauszeiger zeigt....

Wie kann ich jetzt den Winkel aus den x und y koordinaten rausdengeln ?

Das wär mal was für unsere Mathegenies ;) ....

Verfasst: 22.08.2008 19:35
von kswb73
Ist zwar kein TopCode und mit Prozent erreichnet. (müsst man meines Wissen nach mit cos() und tan() machen), funktioniert aber recht gut. Einfach LookTo(KannoneX,MouseX(),KannoneY,MouseY()) aufrufen und du hast den rotationswert.

Code: Alles auswählen

Procedure.f pMoveTo(X1,X2,Y1,Y2)
a=Sqr(Pow(X1-X2,2))

b=Sqr(Pow(Y1-Y2,2))
Xp.f=b/(a+b)
If (Y1-Y2)>0
Xp*-1
EndIf

ProcedureReturn Xp
EndProcedure

Procedure.f Lookto(X1,X2,Y1,Y2)
xp.f=pMoveto(X1,X2,Y1,Y2)
rotate.f
Grad.f
If xp>0
Grad=90*(xp*-1)
  If X2-X1>0
  rotate=90-Grad
  Else
  rotate=270+Grad;270+Grad
  EndIf
Else
Grad=90*xp
  If X2-X1>0
  rotate=90+Grad ;90+Grad
  Else
  rotate=270-Grad
  EndIf
EndIf
ProcedureReturn rotate
EndProcedure

Re: Formelhilfe....

Verfasst: 22.08.2008 19:38
von Little John
Bisonte hat geschrieben:Das wär mal was für unsere Mathegenies ;) ....
Das ist ein Fall für Kommissar mArkus Tangens, von seinen Kollegen freundschaftlich "ATan" genannt. ;)

Gruß, Little John

Verfasst: 22.08.2008 19:48
von Kaeru Gaman
schau mal ins CodeArchiv, da ist schon lange so ein Code "bot folgt Maus" oder so drin...
und im Forum gibt es auch zig versionen davon.

Verfasst: 22.08.2008 20:18
von Bisonte
Jupp... Das klappt ja wunderbar ;)

Sorry aber mit dem ATan Kollegen kann ich als MatheDepp nicht wirklich was anfangen.... Leider.

Nachdem ich das geschrieben hatte, fiel mir auch siedendheiss Cos und Konsorten ein, aber alles was ich in der Hilfe fand, war im Bogenmass angeben... toll und da stand ich wie Ochs vor Kuckucksuhr...

Ich glaub ich brauch mal nen Mathe-Auffrischungskurs ;)

Edit: und nun seht euch mal die Seite an .... http://de.wikipedia.org/wiki/Sinus
besonders den unteren teil... da krieg ich Blasen im schaedel ;)

Verfasst: 22.08.2008 20:28
von Kaeru Gaman
also, mal auf die schnelle... (weil mir grad irgendwie so ist)


Bogenlänge nennt man die Länge eines Kreisbogens bei einem Kreis mit dem Radius 1.
einmal ganz herum (360°) ist eine Bogenlänge von 2pi (6,2831853...)

einen Winkel kann man also in Grad messen, oder in der Länge ihres (Einheits)Bogens,
dann ist er im Bogenmaß notiert.

also, wenn du einen Winkel hast, dessen Bogen ein halbes pi mißt, dann hat er 90°

du kannst die Winkelgröße ganz einfach von Gradmaß in Bogenmaß umrechnen,
indem du die Gradzahl mit (#PI/180) multiplizierst.

...das soweit einleuchtend? ;)

Verfasst: 22.08.2008 22:27
von STARGÅTE
Kaeru Gaman hat geschrieben:schau mal ins CodeArchiv, da ist schon lange so ein Code "bot folgt Maus" oder so drin...
und im Forum gibt es auch zig versionen davon.
Beispiel von mir :
Hier klicken