Вниз
Скачать: CL | DM;

Вращение рисунка   Найти похожие ветки 

 
Dextor   (2004-06-02 15:20) [0]

Как вращать рисунок (BMP или JPEG) ???


 
Jeer ©   (2004-06-02 21:06) [1]

Ключевое слово - матрица вращений.


 
Diver   (2004-06-02 22:17) [2]

uses Math;

procedure TForm1.Button1Click(Sender: TObject);
var
 bm, bm1: TBitMap;
 x, y: integer;
 r, a: single;
 xo, yo: integer;
 s, c: extended;
begin
 bm := TBitMap.Create;
 bm.LoadFromFile("ex.bmp");
 xo := bm.Width div 2;
 yo := bm.Height div 2;
 bm1 := TBitMap.Create;
 bm1.Width := bm.Width;
 bm1.Height := bm.Height;
 a := 0;
 repeat
   for y := 0 to bm.Height - 1 do begin
     for x := 0 to bm.Width - 1 do begin
       r := sqrt(sqr(x - xo) + sqr(y - yo));
       SinCos(a + arctan2((y - yo), (x - xo)), s, c);
       bm1.Canvas.Pixels[x,y] := bm.Canvas.Pixels[
         round(xo + r * c), round(yo + r * s)];
     end;
     Application.ProcessMessages;
   end;
   Form1.Canvas.Draw(xo, yo, bm1);
   a := a + 0.05;
   Application.ProcessMessages;
 until Form1.Tag <> 0;
 bm.Destroy;
 bm1.Destroy;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
3-1090509405
negrila
2004-07-22 19:16
2004.08.15
Firebird users


14-1090914459
DeadMeat
2004-07-27 11:47
2004.08.15
Ну вот так всегда...


3-1090315249
Kaginava
2004-07-20 13:20
2004.08.15
работа с MySQL


1-1091184470
ИМХО
2004-07-30 14:47
2004.08.15
Application.Terminate


11-1057128019
Ajax
2003-07-02 10:40
2004.08.15
TextAlign




   Наверх