Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.03;
Скачать: CL | DM;

Вниз

Привет народ, помогите кто может !   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
3-6914
Коля
2002-05-14 05:24
2002.06.03
Как правильно добавить запись?


14-7171
Pat
2002-04-23 12:53
2002.06.03
Виснут игрушки :-(((


14-7163
drpass
2002-04-24 14:19
2002.06.03
Что за зверь ISDN?


3-6892
Юляша
2002-05-13 08:57
2002.06.03
Редактирование поля типа date


7-7245
pvn
2002-03-07 15:14
2002.06.03
как сделать петлю на ком порте?