Einzelnen Beitrag anzeigen

Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Nochmal was mit Winkeln

  Alt 21. Dez 2005, 15:16
Zitat von igel457:
So, ich habe nun wieder ein Problem:

Mein Raumschiff soll Laserstrahlen feuern können, diese Funktionieren auch einwandfrei, drehen sich mit dem Raumschiff usw...

Leider starten sie an der Falschen Position, nämlich immer beim x,y Punkt meines Raumschiffes. Sie sollten allerdings direkt aus der Mitte kommen. Problem ist nur das sich mein Raumschiff drehen kann. Wie berechne ich den Punkt an dem meine Laserstrahlen starten sollen?

Ich hatte das so probiert:
Delphi-Quellcode:
  with TLaser.Create(engine) do
  begin
    x := self.x+cos(degtorad(flightangle)*pi/180)*self.width/2;
    y := self.y+sin(degtorad(flightangle)*pi/180)*self.height/2;
  end;
Aber das geht nicht ganz.
Versuchs mal so :

Delphi-Quellcode:
  with TLaser.Create(engine) do
  begin
    x := self.x+cos(degtorad(flightangle))*ABSTAND_ZU_DREHPUNKT;
    y := self.y-sin(degtorad(flightangle))*ABSTAND_ZU_DREHPUNKT;
  end;
@jfheins:

Edit: Fehler behoben
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat