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

Вниз

Как нарисовать линию точками   Найти похожие ветки 

 
incm   (2008-04-21 15:41) [0]

Нужно нарисовать линию состоящую из точек, размером в 1 пиксель.
Ни один из имеющихся  стилей объекта Pen не дает такого.
Есть стиль psUserStyle, но как им пользоваться похоже большей секрет! Гугль находит по слову psUserStyle лишь пару десятков ссылок и то все на "нечеловеческих" языках, типа китайского.


 
Сергей М. ©   (2008-04-21 15:47) [1]


> Ни один из имеющихся  стилей объекта Pen не дает такого


Стили объекта Canvas.Pen не отвечают за толщину карандаша, за это отвечает св-во Pen.Width

Цитата из справки:

Specifies the width of the pen in pixels.

Delphi syntax:

property Width: Integer;



Там же имеется пример.


 
Игорь Шевченко ©   (2008-04-21 15:53) [2]

тебе надо как у рамки фокуса ?


 
Anatoly Podgoretsky ©   (2008-04-21 16:03) [3]

> incm  (21.04.2008 15:41:00)  [0]

LineDDA позволяет осуществить все фантазии.


 
incm   (2008-04-21 18:33) [4]


> Стили объекта Canvas.Pen не отвечают за толщину карандаша,
>  за это отвечает св-во Pen.Width


Мне не толщину надо менять, а стить линии!
Что бы линия рисовалась точками, т.е. один пиксель закрашен, следующий нет и так далее.


 
{RASkov} ©   (2008-04-21 18:48) [5]

> [4] incm   (21.04.08 18:33)

Тебе линии "ровные" нужны или "под углом"?
В прочем в любом случае [3] тебе поможет...
Просто для ровных линий Callback простой:
procedure DDAProc (X, Y: Integer; Cnv: TCanvas); stdcall;
begin
 if ODD(X) or ODD(Y) then Cnv.Pixels[X,Y]:=clBlack;
end;
Для "угловатых" уже не пойдет....


 
Anatoly Podgoretsky ©   (2008-04-21 19:40) [6]

Зачем что то мудрить, хватит и логической переменной, и будет работать для любых линий, на то он и DDA


 
AIK ©   (2008-04-21 21:09) [7]


> Мне не толщину надо менять, а стить линии!
> Что бы линия рисовалась точками, т.е. один пиксель закрашен,
>  следующий нет и так далее.


По-моему эт пунктир называется


 
Германн ©   (2008-04-22 01:23) [8]


> AIK ©   (21.04.08 21:09) [7]
>
>

По-моему тоже. Но автор ушёл в спячку.


 
incm   (2008-04-22 12:06) [9]


> По-моему эт пунктир называется


Пунктир это  psDot. Но не то, что мне нужно. psDot - рисует линию черточками.
Вариант который предлжил {RASkov} именно то.


 
{RASkov} ©   (2008-04-22 13:10) [10]

> [9] incm   (22.04.08 12:06)

Это не я предложил, а Анатолий [3]. Из-за [4] я решил напомнить про [3] и делов :)


 
Anatoly Podgoretsky ©   (2008-04-22 13:40) [11]

А какие претензии, специальная функция, работающая по алгоритму Брезенхама.


 
DVM ©   (2008-04-22 13:51) [12]

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=94



Страницы: 1 вся ветка

Текущий архив: 2008.05.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.019 c
2-1208423314
Ega23
2008-04-17 13:08
2008.05.18
STDIN и STDOUT


2-1208498104
dedo
2008-04-18 09:55
2008.05.18
Консольное приложение.Readln


3-1197537619
novill
2007-12-13 12:20
2008.05.18
Поделитесь опытом. IB 7.5 Суперсервер или классический.


2-1208388475
deras
2008-04-17 03:27
2008.05.18
SQL - запрос


2-1208931778
kuzulis
2008-04-23 10:22
2008.05.18
Как узнать что создалась и существует кнопка?