Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.015 c
14-6743
td
2003-03-17 00:29
2003.04.03
тест на знание делфи


14-6671
NKiril
2003-03-15 15:25
2003.04.03
---|Ветка была без названия|---


4-6872
Alexey German
2003-02-06 16:55
2003.04.03
Помогите разобраться с SetForegroundWindow


14-6785
les
2003-03-17 12:56
2003.04.03
Можна ли ставить D5 и D7 на один компьютер?


14-6746
Николай Быков
2003-03-16 17:27
2003.04.03
---|Ветка была без названия|---