Разделы презентаций


Мультимедийная презентация "Графика и управление"

Рисование на холстеПиксели и цветКаждый компонент, на котором можно нарисовать, имеет свойство Canvas (холст), с помощью его свойств и методов можно нарисовать все, что угодно. Определить или изменить цвет отдельных пикселей

Слайды и текст этой презентации

Слайд 1Графика и управление

Графика и управление

Слайд 2Рисование на холсте
Пиксели и цвет
Каждый компонент, на котором можно нарисовать,

имеет свойство Canvas (холст), с помощью его свойств и методов

можно нарисовать все, что угодно.
Определить или изменить цвет отдельных пикселей можно с помощью свойства-массива Pixels. У каждого пикселя две стандартных координаты: x — расстояние от левой границы холста, y — расстояние от верхней границы. Точка (0,0) — это левый верхний угол.
Чтобы узнать или поменять цвет пикселя с координатами (x,y), используют обращение Canvas.Pixels[x,y].
Рисование на холстеПиксели и цветКаждый компонент, на котором можно нарисовать, имеет свойство Canvas (холст), с помощью его

Слайд 3Рисование на холсте
Пиксели и цвет
Область, с которой можно работать, называется

клиентской, ее ширина и высота определяются через свойства формы ClientWidth

и ClientHeight. Поскольку отсчет координат начинается с нуля, нижний правый пиксель клиентской области имеет координаты (ClentWidth-1,ClientHeight-1).
Создадим обработчик события OnClick для формы:
var x, y: integer;
begin
for x:=0 to ClientWidth-1 do
for y:=0 to ClientHeight-1 do
Canvas.Pixels[x,y] := clRed;
end;

В этой программе в двойном цикле перебираются все пиксели, и для каждого устанавливается красный цвет, который обозначается как clRed.

Рисование на холстеПиксели и цветОбласть, с которой можно работать, называется клиентской, ее ширина и высота определяются через

Слайд 4Рисование на холсте
Пиксели и цвет
Цвет можно задать и по-другому, а

формате RGB (red — красный, green — зеленый, blue —синий). Каждая из этих

составляющих цвета — целое число в интервале от 0 до 255.
Изменим в вышеприведенной программе строку
var x, y: integer;
begin
Canvas.Pixels[x,y] := RGB(0,255,255);
end;
Цвет в Delphi — это целое число, занимающее 4 байта. В принципе, можно прямо записывать это число в массив Pixels, при этом удобнее всего использовать шестнадцатеричную запись, где каждая составляющая кодируется двумя шестнадцатеричными цифрами (и занимает 1 байт). Перед шестнадцатеричными числами в Паскале ставится знак $.
var x, y: integer;
begin
Canvas.Pixels[x,y] := $00FFFF;
end;
Рисование на холстеПиксели и цветЦвет можно задать и по-другому, а формате RGB (red — красный, green — зеленый, blue —синий).

Слайд 5Рисование на холсте
Геометрические фигуры
Цвет и стиль линий определяется свойством Canvas.Pen

(перо), которое содержит несколько подсвойств. Из них наиболее важны три

следующих:
Color — цвет линий; Width — толщина линий
Style — стиль линии: psClear — нет линий, psSolid — сплошная, psDash — штриховая, psDot — точечная и другие.

Canvas.Pen.Color := clRed; // команда устанавливает красный цвет для линий

Замкнутые фигуры можно залить сплошным цветом или узором прямо при рисовании. Тип заливки определяется кистью — свойством Canvas.Brush, которое имеет два основных подсвойства:
Color — цвет кисти;
Style — стиль кисти: bsClear — нет заливки, bsSolid — сплошная, bsCross — в клеточку и другие.
По умолчанию устанавливается сплошная заливка белым цветом.

Рисование на холстеГеометрические фигурыЦвет и стиль линий определяется свойством Canvas.Pen (перо), которое содержит несколько подсвойств. Из них

Слайд 6Рисование на холсте
Геометрические фигуры
При рисовании линий используется понятие текущей позиции

рисования (графического курсора). Это невидимая точка, из которой начинается рисование

очередного отрезка. Метод MoveTo(x,y) перемещает курсор (текущую позицию) в точку с координатами (x,y), а команда LineTo(x,y) рисует отрезок из текущей позиции в точку (x,y). Например, эти команды рисуют отрезок из точки (10,10) в точку (100,100):
Canvas.MoveTo (10, 10 );
Canvas.LineTo (100, 100 );
После выполнения метода LineTo(x,y) текущая позиция смещается в точку (x,y).

Рисование на холстеГеометрические фигурыПри рисовании линий используется понятие текущей позиции рисования (графического курсора). Это невидимая точка, из

Слайд 7Рисование на холсте
Геометрические фигуры
procedure TForm1.btn1Click(Sender: TObject);
begin
Canvas.Pen.Color:=clBlue;

Canvas.MoveTo(0,0);
Canvas.LineTo(100,100);
Canvas.LineTo(200,0);

end;
Canvas.LineTo(ClientWidth,ClientHeight);
Задание:

создать обработчик события OnClick для кнопки2, рисующий 2 линии, разделяющие форму на 4 равные части.
Рисование на холстеГеометрические фигурыprocedure TForm1.btn1Click(Sender: TObject);begin   Canvas.Pen.Color:=clBlue;   Canvas.MoveTo(0,0);   Canvas.LineTo(100,100);

Слайд 8Рисование на холсте
Геометрические фигуры
Можно избавиться от утомительного написания символов «Canvas.»

перед каждой командой рисования. Для этого есть простой способ: использовать

оператор with:
with Canvas do
begin ... end;

procedure TForm1.btn2Click(Sender: TObject);
begin
with Canvas do
begin
MoveTo(0,0);
LineTo(ClientWidth,ClientHeight);
MoveTo(ClientWidth,0);
LineTo(0, ClientHeight)
end;
end;
Рисование на холстеГеометрические фигурыМожно избавиться от утомительного написания символов «Canvas.» перед каждой командой рисования. Для этого есть

Слайд 9Рисование на холсте
Рисование прямоугольника
Для рисования прямоугольника используется метод
Canvas.Rectangle (

x1, y1, x2, y2 );



для контура используются настройки пера

(Canvas.Pen), для заливки внутренней части — кисть (Canvas.Brush).
with Canvas do
Begin
Pen.Color := clRed;
Brush.Color := clBlue;
Rectangle (20,20,100,100)
end;

x2,y2

x1,y1

Чтобы отключит заливку, достаточно установить прозрачную кисть, то есть
Canvas.Brush.Style := bsClear;

Рисование на холстеРисование прямоугольникаДля рисования прямоугольника используется метод Canvas.Rectangle ( x1, y1, x2, y2 ); для контура

Слайд 10Рисование на холсте
Рисование эллипса
Эллипсы (и круги) рисуются с помощью метода

Canvas.Ellipse:
Canvas.Ellipse( x1, y1, x2, y2 );
Точки (x1,y1) и

(x2,y2) — это противоположные углы прямоугольника, в который вписан этот эллипс.

x2,y2

x1,y1

Задание: создать обработчик события OnClick для кнопки3, рисующий 4 эллипса, расположенных в разных углах формы.

procedure TForm1.btn3Click(Sender: TObject);
begin
with Canvas do begin
Pen.Color := clRed;
Brush.Color := clBlue;
Ellipse (0,0,50,50);
Ellipse (200,0,250,50);
Ellipse (0,200,50,250);
Ellipse (200,200,250,250);
end;
end;

Рисование на холстеРисование эллипсаЭллипсы (и круги) рисуются с помощью метода Canvas.Ellipse: Canvas.Ellipse( x1, y1, x2, y2 );

Слайд 11ВОПРОСЫ
1.Что обозначает в Delphi слово Canvas?
2. Для каких целей можно

использовать новый оператор with?
3. С помощью каких команд нарисуем

линию на форме?
4. Как установить цвет линии?
5.Что обозначают слова ClientWidth и ClientHeight, как их можно использовать при рисовании?
6. Что обозначает команда Rectangle (20,20,100,100)?
7. Что обозначают команда Canvas.Brush.Style := bsClear;
8. Покажите схематично, что будет изображено на форме в результате работы команды Ellipse (200,0,250,50).

ВОПРОСЫ1.Что обозначает в Delphi слово Canvas?2. Для каких целей можно использовать новый оператор with? 3. С помощью

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика