Область рисования.
Объект Область рисования Graphics позволяет выбрать в качестве области рисования определенный элемент управления и обладает методами рисования графических фигур. Сначала необходимо в разделе объявления переменных определить имя объекта, например:
Dim Graph1 As Graphics
Затем в программном коде обработчика события необходимо указать определенный элемент управления в качестве области рисования. Обычно в качестве области рисования выбирается размещенное на форме графическое поле (например, PictureBox1):
Graph1 = Ме.PictureBox1.CreateGraphics ()
Перо.
Объект Перо Pen определяет цвет и ширину линии рисования. Сначала необходимо в разделе объявления переменных определить имя объекта (например, Pen1), установить цвет (например, красный Color.Red) и ширину линии в пикселях (например, 3):
Dim Pen1 As New Pen(Color.Red, 3)
Затем в программном коде обработчика события можно установить новые значения цвета и ширины линии, например:
Pen1.Color = Color.Green
Pen1.Width = 15
Кисть.
Объект Кисть Brush определяет цвет и стиль закрашивания прямоугольников, окружностей и других замкнутых фигур. Сначала необходимо в разделе объявления переменных определить имя объекта (например, Brush1) и установить тип закраски и цвет (например, сплошная закраска синего цвета SolidBrush (Color.Blue) ):
Dim Brush1 As New SolidBrush (Color.Blue )
Затем в программном коде обработчика события можно установить новый цвет закраски (например, пурпурный):
Brush1.Color = Color.Magenta
Графические методы.
Графические фигуры рисуются с использованием графических методов. Замкнутые фигуры, такие как прямоугольники или эллипсы, состоят из двух частей — контура и внутренней области. Контур рисуется с использованием заданного пера, а внутренняя область закрашивается с использованием заданной кисти.
Цвет.
Цвет устанавливается как значение свойства Color. Можно установить цвет с использованием нескольких десятков цветовых констант. Ниже приведены примеры установки зеленого цвета для объекта Pen1 и желтого цвета для объекта Brush1:
Pen1.Color = Color.Green
Brush1.Color = Color.Yellow
Для установки цвета в 24-битовой палитре цветов RGB используется метод Color.FromArgb (Red, Green, Blue), аргументами которого являются три числа в диапазоне от 0 до 255 (интенсивности красного, зеленого и синего цветов). Например, так можно установить пурпурный цвет для объекта Brush1:
Brush1.Color = Color.FromArgb(255, 0 , 255)
Рисование текста.
Метод DrawString () позволяет выводить текст в область рисования. Аргументами метода является Строка текста, Шрифт, Кисть и координаты начала строки. Объекты Шрифт (например, drawFont) и Кисть (например, drawBrush) необходимо объявить:
Dim drawFont As New Font («Arial», 16)
Dim drawBrush As New SolidBrush (Color.Black)
Рисование текста в поле рисования можно осуществить так:
Graphl1.DrawString («Текст», drawFont , drawBrush, 10, 10)
Системы координат.
Рисование линий, прямоугольников и других фигур производится в компьютерной системе координат, начало которой расположено в верхнем левом углу формы или элемента управления. Ось Х направлена вправо, а ось У — вниз. Единицей измерения по умолчанию является точка (пиксель). Компьютерная система координат графического поля шириной 300 точек и высотой 200 точек приведена на рисунке ниже.
При геометрических построениях и построении графиков функций удобнее использовать математическую систему координат, начало которой обычно находится в центре области рисования. Ось Х направлена вправо, а ось У — вверх. Математическая система координат графического поля шириной 300 точек и высотой 200 точек приведена ниже:
Для преобразования компьютерной системы координат в математическую систему координат используется метод масштабирования и поворота осей ScaleTransform () и метод сдвига начала координат TranslateTransform ().
Метод Graph1.ScaleTransform(1 , — 1) обеспечивает поворот оси У.
Метод Graph1.TranslateTransform(150 , -100) обеспечивает сдвиг по оси Х на 150 точек вправо и сдвиг по оси У на 100 точек вниз.
Анимация.
Для создания анимации (иллюзии движения на экране какого-либо объекта) применяется принцип смены кадров (изображений), как это делается в мультипликации. Для этого необходимо с определенной частотой рисовать объект в поле рисования, причем координаты объекта должны каждый раз изменяться на определенную величину.
<span>import random
chuslo = [random.randint(0,500) for x in range(1000)]
five = []
for i in chuslo<span>:
</span>----if i %5==0<span>:
</span></span>----<span>five.append(i)
five.sort()
five.reverse()
print(five)
[500, 500, 500, 495, 495, 495, 490, 485, 485, 480, 475, 470, 470, 470, 470, 465, 465, 460, 460, 460, 460, 455, 455, 455, 450, 450, 450, 450, 445, 440, 440, 435, 430, 430, 425, 425, 425, 425, 420, 420, 420, 420, 420, 415, 415, 405, 405, 395, 395, 395, 390, 385, 385, 380, 380, 375, 370, 365, 365, 360, 360, 360, 360, 355, 355, 355, 350, 350, 350, 345, 340, 335, 330, 330, 330, 330, 325, 325, 325, 320, 320, 315, 315, 315, 310, 310, 310, 310, 305, 305, 295, 295, 290, 280, 280, 280, 275, 275, 275, 275, 270, 260, 260, 255, 245, 240, 235, 230, 230, 225, 220, 220, 215, 215, 210, 210, 210, 205, 205, 205, 205, 205, 200, 200, 195, 195, 195, 190, 180, 175, 175, 175, 175, 170, 170, 160, 160, 160, 155, 155, 150, 145, 145, 140, 135, 135, 130, 130, 125, 125, 120, 120, 120, 110, 105, 100, 100, 100, 100, 95, 95, 90, 90, 85, 85, 80, 80, 80, 75, 70, 70, 65, 65, 65, 60, 45, 45, 45, 35, 30, 30, 20, 15, 10, 10, 10, 10, 0]
</span>