Урок 50 Графика. Введение. No title August 25 , 2007



Сегодня будет много нудной теории по двухмерной графике, запаситесь парой пачек чипсов и приступайте к чтению…
 
Программа может выводить графику на поверхность объекта, которой соответствует свойство Canvas(Холст). Для того чтобы на поверхности объекта появился графический элемент (линия, окружность, прямоугольник и т. д.) или картинка, необходимо применить соответствующий метод к свойству Canvas. Наприм е р Form1->Canvas->Rectangle( 100, 100, 180, 180 );
Методы:
Pixels[x][y] = Color – Точка, x, y координаты , color цвет . У многих возникает трудность с использованием, поэтому вот пример:
Form 1-> Canvas -> Pixels [20][20] = clRed ; \\ точка красного цвета с координатами 20, 20
Rectangle ( x 1, y 1, x 2, y 2) - Прямоугольник x1, y1 – левый верхний угол, x2, y2 – правый нижний Вид границы определяет свойство Ре n , цвет и стиль закраски внутренней области — свойство Brush.
 
Ellipse ( xl , y 1, x 2, y 2) - Вычерчивает эллипс, окружность или круг. Параметры xl , yl , x2 и у2 задают размер прямоугольника, в который вписывается эллипс. Вид границы определяет свойство Ре n , цвет и стиль закраски внутренней области — свойство Brush.
 
 
Polygon ( pl , i ) - Вычерчивает и закрашивает многоугольник. Координаты углов задает параметр p l
массив структур типа TPoint. Первый и последний элементы массива должны быть одинаковые.
i – число вершин. Вид границы определяет свойство Pen , цвет и стиль закраски внутренней области — свойство Brush.
 
RoundRec ( xl , yl , x 2, y 2, x 3, y 3) - Вычерчивает прямоугольник со скругленными углами. Параметры xl , yl , x2 и у2 задают координаты левого верхнего и правого нижнего углов, х3 и у3 - радиус закругления. Вид линии определяет свойство Реn, цвет и способ закраски внутренней области — свойство Brush
 
TextOut ( x , y , s ) - Выводит строку s от точки с координатами (х, у). Шрифт определяет свойство Font поверхности, на которую выводится тест, цвет закраски области вывода текста — свойство
Brush этой же поверхности
 
LineTo ( x , y ) - Вычерчивает линию из текущей точки в точку с указанными координатами. Вид линии определяет свойство Ре n
 
PolyLine ( pl , i ) - Вычерчивает ломаную линию. Координаты точек перегиба задает параметр p l — массив структур типа TPoint. i – число вершин. Если первый и последний элементы массива одинаковые, то будет вычерчен замкнутый контур. Вид линии определяет свойство Реn
 
MoveTo ( x , y ) - Перемещает указатель текущей точки в точку с указанными координатами
 
Arc( x 1, y 1, x2, y2, x 3, у3, x 4, y 4) - Вычерчивает дугу. Параметры xl , yl , х2,у2 определяют эллипс, из которого вырезается дуга, параметры х2, у2, хЗ, и у4 — координаты концов дуги. Дуга вычерчивается против часовой стрелки от точки (хЗ, уЗ) к точке (х4, у4). Вид линии (границы) определяет свойство Реп, цвет и способ закраски внутренней области — свойство Brush
 
Draw ( x , y , b ) - Выводит от точки с координатами (х, у) битовый образ b . Если значение свойства
Transparent поверхности, на которую выполняется вывод равно true, то точки, цвет которых совпадает с цветом левой нижней точки битового образа, не отображаются
 
Свойства:
 
Transparent - Признак использования "прозрачного" цвета при выводе битового образа методом Draw. Если значение свойства равно true, то точки, цвет которых совпадает с цветом левой нижней точки битового образа, не отображаются.
Pen - Свойство Ре n представляет собой объект свойства которого определяют цвет толщину и стиль линий, вычерчиваемых методами вывода графических примитивов. Имеет свои собственные свойства
 
Brush - Свойство Brush представляет собой объект, свойства которого определяют цвет и
стиль закраски областей, вычерчиваемых методами вывода графических примитивов
 
Font - Свойство Font представляет собой объект, уточняющие свойства которого определяют шрифт (название, размер, цвет, способ оформления), используемый для вывода на поверхность холста текста
 
Свойства Pen:
 
Color - Цвет линии
Style - Стиль (вид) линии. Линия может быть: psSolid —сплошная; psDash — пунктирная (длинные штрихи); psDot — пунктирная (короткие штрихи); psDashDot — пунктирная (чередование длинного и короткого штрихов); psDashDotDot — пунктирная (чередование одного
длинного и двух коротких штрихов); psclear — не отображается (используется, если не надо изображать границу, например, прямоугольника)
 
W idth - Толщина линии задается в пикселах. Толщина пунктирной линии не может быть больше 2
 
Свойства Brush:
 
Color - Цвет закрашивания замкнутой области
 
Style - Стиль ( тип ) заполнения области ( bsSolid — сплошная заливка ; bsClear — область не закрашивается ; bsHorizontal — горизонтальная штриховка ; bsVertical — вертикальная штриховка ; bsFDiagonal — диагональная штриховка с наклоном линий вперед ; bsBDiagonal — диагональная штриховка с наклоном линий назад ; bsCross - горизонтально - вертикальная штриховка , в клетку ; bsDiagCross — диагональная штриховка в клетку ).
 
Свойства Font :
 
Name – Название шрифта
 
Size – Размер в пунктах, один пункт 1/72 дюйма
 
Style – Стиль начертания, может быть: fsBold(полужирный), fsItalic(курсив), fsUnderline(подчёркнутый), fsStrikeOut(перечёркнутый)
Пользоваться надо так:
Canvas -> Font -> Style = TFontStyles ()<< fsBold << fsUnderline
Color – Цвет (Долбоёбу ясно…)
 
Вывод графики на поверхность при запуске программы осуществляется в событии OnPaint .
 
Теорию изложил, скоро будет практика, а пока разбирайтесь…


Материал подготовил - Klaus, 2007
www.builderhelper.org
builder.helper@rambler.ru