1
]
"РЛ" - НАЧИНАЮЩИМ
[}
Ринат Мязитов
E-mail:
Ramil-333@tut.by
В приведенной ниже статье мы с вами рассмотрим способы рисования в
нашей программе, попробуем нарисовать простые фигуры и ознакомимся
с основами рисования.
Вначале нужно сказать, что для этих
нужд в программе BorlandC++Builder
имеется специальный компонент
PaintBox. Привожу строки из тех книг,
по которым я учился: “этот компонент
предназначен для рисования на канве
- растровой поверхности, представля-
емой свойством Canvas. Canvas - это
точечная сетка, измераемая в пиксе-
лах.
.. для рисования используют кисть
(Brush), перо (Реп), шрифт (Font)”.
В принципе понятно, что есть некий
компонент, на котором с помощью спе-
циальных команд можно создавать ри-
сунки. Можно по-разному истолковы-
вать теорию, но код и суть останутся
такими же. Для этого я предлагаю по-
смотреть исходный код, и на нем я все
объясню. Но для этого на нашу форму
добавим следующие компоненты
(рис.
1): PaintBox (на нем мы будем рисовать),
Button (кнопка).
Теперь двойным щелчком нажима-
ем на кнопку и пишем код (врезка 1).
Этот код рисует на нашей канве
прямоугольник. Давайте разберемся,
как нужно задавать наши команды про-
грамме, чтобы мы нарисовали фигуру,
например, прямоугольник. Когда мы
рисуем на бумаге прямоугольник, мы в
мыслях представляем, какого он цве-
та, будет ли у него рамка, где он будет
размещаться. Так вот и у нас. В первой
строчке мы задали цвет закрашивания,
здесь мы обязательно написали Brush
(зто свойство Canvas, здесь задается
цвет и способы заливки), потом пишем
свойство Color (цвет), и для этого зна-
чения выбираем красный цвет cIRed .
Во второй строчке мы задали стиль за-
ливки bsSolid (сплошной). А в третей
строке выполнили рисование прямоу-
гольника FillRect (Rect(x1,y1,x2,y2), где
х1 - начальная координата по оси Ох,
у1 - начальная координата по оси 0у1,
х2 - конечная координата по оси Ох, у2
- конечная координата по оси Оу. Для
лучшего понимания см.
рис. 2.
Таким образом мы получаем две
точки с координатами (х1 :у1) и (х2:у2)
(см.
рис. 2),
с помощью которых мы
можем наблюдать нашу первую фигу-
ру. Да, чуть не забыл: левый верхний
угол канвы имеет координаты (0:0).
И вот что получится с помощью кода
(врезка
1)
- (см.
рис. 3).
Если задать следующие координа-
ты FillRect (Rect(100,100,200,200), пря-
моугольник будет нарисован с задан-
ным смещением (см.
рис. 4).
Так рису-
ются все простые фигуры ©.
Конечно, стили закраски да и сами
цвета бывают разные; в
таблице 1
приведена взятая из справочника
Borland таблица, которая должна облег-
чить если не жизнь, то работу начина-
ющего программиста ©.
Таблицу цветов не провожу, одна-
ко узнать, как называются цвета, мож-
но следующим способом: нажмите по
форме, потом в инспекторе объектов
(object inspector) найдите свойство Color,
выбираете его и ищите названия - бы-
стро и легко, не пользуясь таблицами.
Ра!тВох1->Саг№а8->Вги81г->Со1ог=с№еб;
\\ задаем цвет внутри
©
Ра1ШВох1 ->Сапуа5->Вги5Ь->51у1е=Ь58оИа;
\\ стиль закрашивания
(см. таблицу 1)
Ра1ШВох1 ->Сапуаз->РШРес1(Рес1(0,0,100,100);
\\ рисуем прямоугольник
Сапуаз->Реп->Со1ог=с1Реб;
\\ задаем цвет (красный)
@
Сапуа8->Реп->1ЛЛсЙ11=2;
\\ толщина (стиля нет)
Сапуа8->МоуеТо(300,250);
\\ переместим кончик невидимого пера на
координаты, эта же точка будет началом линии,
координаты (300:250)
Сапуаз->ипеТо(400,400);
\\ а теперь рисуем до координат (400:400)
А теперь давай разберемся, как
можно нарисовать линию. Принцип тот
же. Задаем координаты двух точек (но
помним, что левый верхний угол имеет
координаты (0;0)! Перед этим мы так же
задаем цвет и стиль, рассмотрим код
(врезка 2). Получим следующее (см.
рис. 5).
Здесь главное запомнить, что
МоуеТо - зто перемещаться не рисуя,
а ЫпеТо - это уже рисовать. Для того,
чтобы не возникло проблем при даль-
нейшем рисовании в программах, при-
веду пример (врезка 3).
Получим следующее изображение
(рис. 6).
Разберитесь в действии этого
кода, пусть это будет маленьким до-
машним заданием.
Г Standard! AdcftioraiiTWkT32
System I
[ P ain tB o x И
^ р и ^ Т
G raphica 1.00 R adiolu b itel b y R in a l M id /ilo v )))
Рис, з
|
38
У Радиолюбитель - 0 5 /2 0 0 8
предыдущая страница 38 Радиолюбитель 2008-05 читать онлайн следующая страница 40 Радиолюбитель 2008-05 читать онлайн Домой Выключить/включить текст