Форум: "Основная";
Текущий архив: 2002.06.03;
Скачать: [xml.tar.bz2];
ВнизПривет народ, помогите кто может ! Найти похожие ветки
← →
PETR (2002-05-21 15:08) [0]Тут приведен код,смысл которого, передвижение группы пикселей по canvas формы. Передвигается нормально, но медленно .Я начал недавно изучать DELPHI.Может стоит чегото поменять в коде а ?
procedure TForm1.Button1Click(Sender: TObject);
begin
canvas.TextOut(0,0,"P");
e:=200;
timer1.Interval:=1;
timer1.Enabled:=true;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
t:=t+1;
for x:=0+w to e+w do
begin
label1.Caption:=inttostr(x);
a:=canvas.Pixels[(e+w)-x,y];
canvas.Pixels[((e+w)-x)+1,y]:=a;
end;
label2.Caption:=inttostr(y);
y:=y+1;
if y=11 then
begin
w:=w+1;
y:=0;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
timer1.Enabled:=false;
end;
end.
← →
PETR (2002-05-21 15:15) [1]Неужели не поможите!!!!!!!!!!!
← →
MBo (2002-05-21 15:16) [2]используй scanline. есть и другие методы
← →
PETR (2002-05-21 15:26) [3]чуть-чуть попадробней пожалуйста !!!!
← →
PVOzerski (2002-05-21 15:27) [4]Про сути-то у Вас путь правильный... Смотря какое ускорение надо и чем Вы жертвовать согласны... Если хватит ускорения раза в полтора-два, переделайте кусок на WinAPI: вместо property pixels
работайте через SetPixel и GetPixel (параметр DC берите из
Canvas.Handle). Но, возможно, быстрее будет, если Вы сделаете следующее (но тут уж проверяйте сами, мне недосуг...):
растянете по форме tImage, в нём сделаете picture.bitmap.pixelformat:=pf24bit и будете добираться до точек через ScanLine.
← →
PETR (2002-05-21 15:34) [5]Спасибо попробую!!!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c