Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.013 c
2-1208843779
Mehiko
2008-04-22 09:56
2008.05.18
номер выбранного пункта Treeview


15-1207224227
@!!ex
2008-04-03 16:03
2008.05.18
Работы для дизайнера нет? Удаленно или в Самаре


2-1208339540
DFT
2008-04-16 13:52
2008.05.18
DoMouseWheel


6-1172955931
batya18
2007-03-04 00:05
2008.05.18
смена пароля по POP


2-1208605373
lewka-serdceed
2008-04-19 15:42
2008.05.18
Защита от копирования




   Наверх