Форум: "Media";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
ВнизВращение рисунка Найти похожие ветки
← →
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 вся ветка
Форум: "Media";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.036 c