Графика в VB
Графика в Vb
VB обладает большим набором инструментов для отображения графических объектов. С помощью графики в программах на vb можно визуализировать решения математических задач или создавать анимацию. В этом уроке мы научимся рисовать в VB прямоугольник, эллипс, линию, точку .
Чтобы рисовать различные объекты в VB, используется элемент PictureBox, который задает на форме графическую область для рисования.
Добавим в форму элементы Кнопка и PictureBox, в котором мы и будем рисовать.
В свойствах PictureBox во вкладке Layout в свойстве Size (размер) можно указать размеры графической области. Мы указали размер графической области 400x400 пикселей.
Получается данная форма
Для того чтобы начать рисовать в элементе PictureBox, необходимо привязать графический объект к данному элементу.
Dim Название объекта As Graphics = PictureBoxНомер.CreateGraphics()
Пример:
Dim Graphics As Graphics = PictureBox1.CreateGraphics()
Создается графический объект с именем Graphics, он привязывается к элементу PictureBox1. В дальнейшем для отображения графических фигур будем работать уже с объектом Graphics.
Для отображения объектов нужно создать объект Перо с помощью команды.
Dim название пера = New Pen(Drawing.Color.(цвет), толщина линии)
В скобках задаётся цвет и толщина линии объекта Перо, которым мы будем рисовать
Пример:
Dim red = New Pen(Drawing.Color.Red, 5)
Cоздаётся красное перо с именем red с толщиной 5 пикселей.
Рисование линии в Vb.
Чтобы нарисовать линию в графической области PictureBox, нужно использовать метод DrawLine для привязанного к этой области графического объекта.
Объект.DrawLine(название пера, координата x первого конца, координата y первого конца, координата x второго конца, координата y второго конца)
Пример:
Graphics.DrawLine(red, 5, 5, 50, 50)
Рисует красную линию в графической области PictureBox1 с координатами начала x = 5, y = 5 и координатами конца x = 50, y = 50
Рисование прямоугольника в Vb
Чтобы нарисовать прямоугольник в графической области PictureBox, нужно использовать метод DrawRectangle для привязанного к этой области графического объекта.
Объект.DrawRectangle(название пера, координата x левого верхнего угла, координата y левого верхнего угла, ширина, высота)
Пример:
Graphics.DrawRectangle(green, 50, 50, 100, 100)
Рисует зеленый прямоугольник в графической области PictureBox1 с координатами верхнего левого угла x = 50,y = 50 шириной 100 и высотой 100
Рисование окружности и эллипса в Vb
Для рисования эллипса или окружности в Vb нужно сначала создать объект Прямоугольник, в который будет вписан эллипс.Объект Прямоугольник создаётся с помощью набора команд
Dim название прямугольника As New Rectangle
название прямоугольника.X = координата x левого верхнего угла
название прямоугольника.Y = координата y левого верхнего угла
название прямоугольника.Width = ширина прямоугольника
название прямоугольника.Height = высота прямоугольника
Пример:
Dim rectangle As New Rectangle
rectangle.X = 100
rectangle.Y = 100
rectangle.Width = 100
rectangle.Height = 50
Затем, с помощью созданного прямоугольника, рисуем вписанный в него эллипс, используя метод DrawEllipse для графического объекта, привязанного к графической области
Объект. DrawEllipse(перо, прямоугольник)
Например:
Graphics.DrawEllipse(blue, rectangle)
Рисует синий эллипс вписанный в прямоугольник rectangle
Для того, чтобы нарисовать окружность в Vb, нужно, чтобы ширина и высота прямоугольника совпадали по величине. Радиус окружности равен половине высоты.
Координата x центра окружности будет равна координате x левого верхнего угла прямоугольника + радиус окружности. Координата y центра окружности будет равна координате y левого верхнего угла прямоугольника + радиус окружности.
Пример рисования окружности в vb с координатами центра (200, 300) радиусом 50:
Dim rct As New Rectangle
rct.X = 150
rct.Y = 250
rct.Width = 100
rct.Height = 100
Graphics.DrawEllipse(blue, rct)
Рисование закрашенного прямоугольника в Vb
Чтобы рисовать закрашенные объекты в vb, необходимо сначала создать объект Кисть SolidBrush, в котором определяется цвет заливки. Объект Кисть в Vb задается следующим образом
Dim название кисти As New SolidBrush(Drawing.Color.цвет)
Для рисования закрашенного прямоугольника используется метод FillRectangle для графического объекта, привязанного к графической области.
Graphics.FillRectangle (название кисти, координата x левого верхнего угла, координата y левого верхнего угла, ширина, высота)
Пример рисования закрашенного прямоугольника в vb
Dim Brush As New SolidBrush(Drawing.Color.Red)
Graphics.FillRectangle(Brush, 50, 50, 100, 80)
Рисует закрашенный красным цветом прямоугольник с координатами углов 50, 50 и шириной 100 и высотой 80
Полный текст программы VB для рисования всех фигур
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Graphics As Graphics = PictureBox1.CreateGraphics()
' создание ручек для отрисовки
Dim red = New Pen(Drawing.Color.Red, 5) ' создаётся красное перо с толщиной 5 пикселей
Dim green = New Pen(Drawing.Color.Green, 5)
Dim blue = New Pen(Drawing.Color.Blue, 5)
Dim Brush As New SolidBrush(Drawing.Color.Red)
' отрисовываем линию
Graphics.DrawLine(red, 5, 5, 50, 50) ' отрисовываем красную линию
' отрисовываем прямоугольник
Graphics.DrawRectangle(green, 50, 50, 100, 100) ' рисуем зелёный прямоугольник
' создаём прямоугольник, с помощью которого будет отрисовываться эллипс
Dim rectangle As New Rectangle
rectangle.X = 100
rectangle.Y = 100
rectangle.Width = 100
rectangle.Height = 50
' отрисовка круга
Graphics.DrawEllipse(blue, rectangle)
Dim rct As New Rectangle
rct.X = 150
rct.Y = 150
rct.Width = 100
rct.Height = 100
Graphics.DrawEllipse(blue, rct)
Graphics.FillRectangle(Brush, 300, 350, 350, 400)
End Sub
End Class
Полезно почитать по теме графика в Vb
Пример графической игры на vb стрельба из пушки
Поделиться:
Нет комментариев. Ваш будет первым!