Текущий архив: 2003.04.03;
Скачать: CL | DM;
ВнизWindows.Polyline Найти похожие ветки
← →
SS (2003-03-24 11:45) [0]Происходит ли автоматическое обновление окна при окончании работ функции (subj)? Или необходимо посылать WM_Repaint?
← →
MBo (2003-03-24 11:51) [1]как рисуешь?
обычно не надо.
← →
SS (2003-03-24 11:58) [2]Рисует примерно так
Draw = class (TTread)
......
public
drawarr : array of TPoint;
proc Execute;
proc DoDraw;
end;
proc Draw.Execute;
begin
.....
// вычисления
// запись в drawarr
Synchronize(DoDraw);
end;
proc Draw.DoDraw;
begin
polyline(Image1.Canvas.Handle, PPoint(@drawarr)^, Length(drawarr));
end;
← →
SS (2003-03-24 12:00) [3]И вообще, в целом проблема такая - каким образом наиболее быстро отрисовать линию в оконном приложении?
← →
icWasya (2003-03-24 12:10) [4]в таком виде посылать WM_Repaint необходимо.
← →
MBo (2003-03-24 12:15) [5]1) Проще вызывать так:
polyline(Image1.Canvas.Handle, drawarr[0], Length(drawarr));
2) чтобы быстрее рисовать, надо это делать в основном потоке
← →
REA (2003-03-24 12:53) [6]И там ограничение на число точек в кривой, а для принтера оно другое. И еще надо проверять на выход значений из диапазона +-32000 примерно иначе будет неправильно рисовать.
← →
SS (2003-03-24 13:10) [7]Количество точек я подгоняю под размер TImage. Быстрее их пересчитать, чем тупо отрисовать все.
Страницы: 1 вся ветка
Текущий архив: 2003.04.03;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.007 c