Показать сообщение отдельно
  #15  
Старый 03.06.2013, 16:23
RobinStone RobinStone вне форума
Прохожий
 
Регистрация: 02.06.2013
Сообщения: 27
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от angvelem
Не нужно рисовать напрямую на TImage, рисуй в буферном битмапе и после полной отрисовки выводи в TImage. К тому же нет нужды перерисовывать каждый раз с нуля, если есть неизменяемая часть лабиринта, то она один раз отрисовывется на битмапе оригинале, при запросе на отрисовку с битмапа оригинала копируем во 2-ой битмап, где дорисовываем необходимое и копируем в TImage.

ЗАДАЧА (это что б я понял) : есть массив
q: array[1..500,1..500] of integer;

этот массив уже заполнен нужными мне значениями

теперь нужно выводить на Image 500 x 500 этот массив в виде точек определённых цветов, т.е.
for a:= 1 to 500 do begin
for s:= 1 to 500 do begin
if q[a,s] = 3 then form1.Image1.Canvas.Pixels[a,s]:= clWhite;
if q[a,s] = 0 then form1.Image1.Canvas.Pixels[a,s]:= clRed;
end;
end;

примерно 1 раз в секунду хотя-бы...

вот как-то так...

ПОМОГИТЕ...
Ответить с цитированием