Einzelnen Beitrag anzeigen

Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#6

Re: Punkt drehen um einen anderen Punkt

  Alt 21. Apr 2005, 12:12
Zitat von Kroko1999:
Code:
procedure DrehePunkt (P: TPoint; AWinkel: single; ADrehPunkt: TPoint);
var
  H: TPoint;
begin
  H.X := P.X-ADrehpunkt.X;
  H.Y := P.Y-ADrehpunkt.Y;
  H.X := H.X*Cos (AWinkel); // Winkel im Bogenmaß
  H.Y := H.Y*Sin (AWinkel);
  Result.X := H.X+ADrehpunkt.X;
  Result.Y := H.Y+ADrehpunkt.Y;
end;
Kann man noch kürzen!
also wenn ichs so mache:
Delphi-Quellcode:
function DrehePunkt (P: TPoint; AWinkel: single; ADrehPunkt: TPoint) : TPoint;
var
  H: TPoint;
begin
  H.X := P.X-ADrehpunkt.X;
  H.Y := P.Y-ADrehpunkt.Y;
  H.X := round(H.X*Cos (AWinkel)); // Winkel im Bogenmaß
  H.Y := round(H.Y*Sin (AWinkel));
  Result.X := H.X+ADrehpunkt.X;
  Result.Y := H.Y+ADrehpunkt.Y;
end;
gehts auch noch nicht (hatte round() und Rückgabewert gefehlt)... das streckt oder verzerrt nur :/
Florian Heft
  Mit Zitat antworten Zitat