Einzelnen Beitrag anzeigen

Looper

Registriert seit: 28. Sep 2007
Ort: Hamburg
131 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Andorra 2D --- zwei Variablen und ein AdDraw

  Alt 13. Jun 2008, 17:29
Guten abend,

erstmal danke für eure Tipps.
Ich habe nun das Problem gefunden:
Delphi-Quellcode:
procedure TSpieler.forwd(Pixel : Integer);
begin
  FX := FX + Pixel * cos(pi * (90.0 + Winkel)/ 180.0);
  FY := FY - Pixel * sin(pi * (90.0 + Winkel)/ 180.0);
  if FVisible then begin
    FAdDraw.BeginScene;
    with FAdDraw.Canvas do begin
      Pen.Color := FFarbe;
      Brush.Color := FFarbe;
      Pen.Width := FBreite;
      FAdDraw.Canvas.LineTo(round(FX),round(FY));
      Release;
    end;
    FAdDraw.EndScene;
    FAdDraw.Flip;
  end;
end;
ist was anderes als
Delphi-Quellcode:
procedure TSpieler.forwd(Pixel : Integer);
var
  NeuX, NeuY : Double;
begin
  NeuX := FX + Pixel * cos(pi * (90.0 + Winkel)/ 180.0);
  NeuY := FY - Pixel * sin(pi * (90.0 + Winkel)/ 180.0);
  if FVisible then begin
    FAdDraw.BeginScene;
    with FAdDraw.Canvas do begin
      Pen.Color := FFarbe;
      Brush.Color := FFarbe;
      Pen.Width := FBreite;
      FAdDraw.Canvas.MoveTo(round(FX),round(FY));
      FAdDraw.Canvas.LineTo(round(NeuX),round(NeuY));
      Release;
    end;
    FAdDraw.EndScene;
    FAdDraw.Flip;
    FX := NeuX;
    FY := NeuY;
  end;
end;
bei dem unteren Beispiel wird die Linie gezeichnet, während dies bei dem oberen nicht der Fall ist.

mfg Looper
  Mit Zitat antworten Zitat