![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
линии [D7, WinXP]
cava © (2007-07-12 17:49:00)Как нарисовать на форме линию размером от 1мм-1000мм?
Однокамушкин (2007-07-13 08:50:00) [1]
> Вася Правильный (12.07.07 19:25) [10]
> кстати, рисование именно линий даст закругленные концы
Это смотря какими перьями пользоваться... если не косметическими, а геометрическими, то можно самому выбирать форму концов из трёх вариантов: PS_ENDCAP_ROUND, PS_ENDCAP_SQUARE и PS_ENDCAP_FLAT...
Anatoly Podgoretsky (2007-07-12 22:42:00) [2]> Virgo_Style (12.07.2007 21:43:11) [11]
И с идеальной стабильностью изображения, что никакие характеристики не влияли на размер по времени, ни яркость, ни напряжение питания и так далее. Иначе калибровка имеет ограниченое действие.
Virgo_Style (2007-07-12 21:43:00) [3]Amoeba © (12.07.07 18:06) [8]
В случае CRT настраивать размер изображения на мониторе подгонкой размера выводимого на экран программой эталона к обычной линейке. Вобщем, потребуется индивидуальная калибровка.
В случае CRT с идеальной геометрией, позволю себе уточнить
Вася Правильный (2007-07-12 19:25:00) [4]это уже не линия, а прямоугольник
кстати, рисование именно линий даст закругленные концы
Инс (2007-07-12 18:48:00) [5]
> [7] Amoeba © (12.07.07 18:02)
Чукча не читатель? ;-)
> А пример можно какой -нибудь?
Можно:
procedure TForm1.FormPaint(Sender: TObject);
begin
// Логическая единица равна 0.1 мм
SetMapMode(Canvas.Handle,MM_ISOTROPIC);
SetViewPortOrgEx(Canvas.Handle,0,0,nil);
ScaleWindowExtEx(Canvas.Handle,1,1,1,-1,nil);
// Квадрат со сторонами 3 см
Canvas.Rectangle(0,0,300,300);
end;
Amoeba (2007-07-12 18:06:00) [6]
> engine © (12.07.07 18:02) [6]
>
> > [4] Amoeba © (12.07.07 17:58)
>
> Вывод один - поставлять с программой LCD
>
В случае CRT настраивать размер изображения на мониторе подгонкой размера выводимого на экран программой эталона к обычной линейке. Вобщем, потребуется индивидуальная калибровка.
engine (2007-07-12 18:02:00) [7]> [4] Amoeba © (12.07.07 17:58)
Вывод один - поставлять с программой LCD
Amoeba (2007-07-12 18:02:00) [8]
> cava © (12.07.07 17:49)
>
> Как нарисовать на форме линию размером от 1мм-1000мм?
Для начала см. WinApi ф-ию SetMapMode
Jeer (2007-07-12 18:00:00) [9]
> cava © (12.07.07 17:49)
>
> Как нарисовать на форме линию размером от 1мм- 1000мм?
Хороший у тебя монитор.
Amoeba (2007-07-12 17:58:00) [10]
> engine © (12.07.07 17:53) [2]
>
> Ну я так думаю, что надо знать размер зерна у монитора и
> текущее разрешение.
>
А если возьмем CRT монитор и поиграемся размером изображения на мониторе? Какие будут выводы?
cava (2007-07-12 17:57:00) [11]А пример можно какой -нибудь?
Инс (2007-07-12 17:53:00) [12]Так какого же все-таки размера? :)
А вообще - гляньте функцию SetMapMode, если я правильно телепатировал...
engine (2007-07-12 17:53:00) [13]Ну я так думаю, что надо знать размер зерна у монитора и текущее разрешение.