Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Канва и пиксели



Многие компоненты в Delphi имеют свойство Canvas (канва, холст), представляющие собой область компонента, на которой можно рисовать или отображать готовые изображения.

Каждая точка канвы имеет координаты X и Y. Начало системы координат канвы, как и везде в Delphi, - в левом верхнем уголу канвы. Координата X возрастает при перемещении вправо, а Y – сверху вниз. Координаты измеряются в пикселях. Пиксель – это наименьший элемент поверхности рисунка. Важнейшее свойство пикселя – его цвет.

Рисовать на канве можно разными способами.

Первый вариант – рисование по пикселям. Для этого используется свойство канвы Pixels. Это свойство представляет собой двумерный массив. Например

Canvas.Pixels[10,20]:=0 или Canvas.Pixels[10,20]:=clBlack – это задание пикселю черного цвета.

Чтобы нарисовать график некоторой функции F(X) на канве компонента Image1, должен быть известен диапазон изменения аргумента Xmin и Xmax и диапазон изменения функции Ymin и Ymax.

Var

X, Y:real; // координаты функции

PX, PY:longint; // координаты пикселей

Begin

For PX:=0 to Image1.Width

do Begin {X – координата, соответствующая пикселю с

координатой PX}

X:=Xmin+PX*(Xmax-Xmin)/Image.Width;

Y:=F(X);

PY:=trunc(Image1.Height-(Y-

Ymin)*Image1.Height/(Ymax-Ymin));

Image1.Canvas.Pixels[PX,PY]:=0; {устанавливается

черный цвет выбранного пикселя}

End;

End;

Второй вариант – рисование с помощью пера Pen. У канвы имеется свойство Pen – перо. Этот объект имеет свой ряд свойств. Свойство Width – ширина линии (по умолчанию = 1).

Свойство Style – определяет вид линии (сплошная, пунктирная, штриховая и т.д.)

Свойство PenPos – определяет в координатах канвы текущую позицию пера.

Перемещение пера без прорисовки производится методом канвы – MoveTo(X,Y), где X и Y –координаты точки, в которую перемещается перо. Эта точка становится исходной, от которой методом LineTo(X,Y) можно провести линию в точку с координатами (X, Y).

Rectangle (X1,Y1,X2,Y2:integer) - точки (X1, Y1) и (X2, Y2) – определяют диагональ прямоугольника.

Ellipse (X1,Y1,X2,Y2:integer) – точки (X1, Y1) и (X2, Y2) – определяют прямоугольник, описывающий эллипс.

Chord (X1,Y1,X2,Y2, X3,Y3,X4,Y4:integer) – рисует дугу окружности или эллипса и ограниченную хордой, где начало дуги определяется пересечением прямой, проходящей через центр прямоугольника, и точкой (X3, Y3), конец дуги – пересечением прямой, проходящей через центр прямоугольника, и точкой (X4, Y4).

TextOut (X,Y, ’текст’) – вывод текста, начиная с указанной позиции.

7.4.6. Воспроизведение немых видео клипов – компонент Animate

Компонент Animate позволяет воспроизводить на форме стандартные видеоклипы Windows (типа копирования, поиска файлов и т. п.) и немые видео файлы .avi. Эти файлы представляют собой последовательность кадров битовых матриц.

Создайте новое приложение, перенесите на форму компонент Animate. Воспроизводимое изображение задается одним из двух свойств: Filename или CommonAVI. Первое свойство позволяет программно задать имя воспроизводимого файла. А второе – воспроизводить стандартные мультипликации Windows.

В компоненте Animate предусмотрены события OnClose, OnOpen, OnStart, OnStop, генерируемые соответственно в моменты закрытия и открытия компонента, начала и конца воспроизведения.





Дата публикования: 2014-10-25; Прочитано: 1102 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...