Чтение онлайн

на главную

Жанры

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 6: Программирование на Visual Basic искусственного интеллекта. Продолжение 2
Шрифт:

По первому варианту, добавляем в проект нужный файл по обычной схеме: в панели Solution Explorer выполняем правый щелчок по имени проекта, в контекстном меню выбираем Add, Existing Item, в панели Add Existing Item в окне “Files of type” выбираем “All Files”, в центральном окне находим (например, в папке компьютера файл, скопированный из Интернета), выделяем имя этого файла и щёлкаем кнопку Add (или дважды щёлкаем по имени этого файла).

По второму варианту, в панели Solution Explorer

выполняем правый щелчок по имени проекта и в контекстном меню выбираем Add, New Item, в панели Add New Item выделяем шаблон Code File, в окне Name записываем имя DPaint.vb и щёлкаем кнопку Add. В проект (и в панель Solution Explorer) добавляется этот файл, открывается пустое окно редактирования кода, в которое записываем код со следующего листинга.

Листинг 21.9. Новый файл.

Public Class DPaint

Private _number As String

Private _position As Point

Private _color As Color

Private _pen As Pen

Private _thick As Integer

Private _width As Integer

Private _brush As SolidBrush

#Region "Property Declaration"

Public Sub New

'_color = Color.Yellow

'Для большей чёткости задаём красный цвет цифр для очков

'и времени:

_color = Color.Red

_brush = New SolidBrush(_color)

_number = 0

End Sub

Public Sub New(ByVal number As Integer)

Me.number = number

_color = Color.Yellow

_brush = New SolidBrush(_color)

End Sub

Public Property number As Double

Get

Return CDbl(_number)

End Get

Set(ByVal Value As Double)

_number = Value.ToString

_number = _number.PadLeft(8, "0")

End Set

End Property

Public Property position As Point

Get

Return _position

End Get

Set(ByVal Value As Point)

_position = Value

End Set

End Property

Public Property thick As Integer

Get

Return _thick

End Get

Set(ByVal Value As Integer)

_thick = Value

End Set

End Property

Public Property width As Integer

Get

Return _width

End Get

Set(ByVal Value As Integer)

_width = Value

End Set

End Property

#End Region

#Region "Show digital Number"

Private Function conPol(ByVal i As Integer) As Point

Dim c, h As Integer

Dim x As Integer = _position.X

Dim y As Integer = _position.Y

Dim poly(3) As Point

Select Case i

Case 1

c = x

h = y – _width – 2

poly(0).X = c

poly(0).Y = h

poly(1).X = c + _width

poly(1).Y = h

poly(2).X = c + _width – _thick

poly(2).Y = h + _thick

poly(3).X = c + _thick

poly(3).Y = h + _thick

Return poly

Case 2

c = x + _width

h = y – _width – 1

poly(0).X = c

poly(0).Y = h

poly(1).X = c

poly(1).Y = h + _width

poly(2).X = c – _thick

poly(2).Y = h + _width – _thick / 2

poly(3).X = c – _thick

poly(3).Y = h + _thick

Return poly

Case 3

c = x + _width

h = y + 1

poly(0).X = c

poly(0).Y = h

poly(1).X = c

poly(1).Y = h + _width

poly(2).X = c – _thick

poly(2).Y = h + _width – _thick

poly(3).X = c – _thick

poly(3).Y = h + _thick / 2

Return poly

Case 4

c = x + _width

h = y + _width + 2

poly(0).X = c

poly(0).Y = h

poly(1).X = c – _width

poly(1).Y = h

poly(2).X = c – _width + _thick

poly(2).Y = h – _thick

poly(3).X = c – _thick

poly(3).Y = h – _thick

Return poly

Case 5

c = x

h = y + _width + 1

poly(0).X = c

poly(0).Y = h

poly(1).X = c

poly(1).Y = h – _width

poly(2).X = c + _thick

poly(2).Y = h – _width + _thick / 2

poly(3).X = c + _thick

poly(3).Y = h – _thick

Return poly

Case 6

c = x

h = y – 1

poly(0).X = c

poly(0).Y = h

poly(1).X = c

poly(1).Y = h – _width

poly(2).X = c + _thick

poly(2).Y = h – _width + _thick

poly(3).X = c + _thick

poly(3).Y = h – _thick / 2

Return poly

Case 7

ReDim poly(5)

c = x

h = y

poly(0).X = c

poly(0).Y = h

poly(1).X = c + _thick

poly(1).Y = h – _thick / 2

poly(2).X = c + _width – _thick

poly(2).Y = h – _thick / 2

poly(3).X = c + _width

poly(3).Y = h

poly(4).X = c + _width – _thick

poly(4).Y = h + _thick / 2

poly(5).X = c + _thick

poly(5).Y = h + _thick / 2

Return poly

End Select

End Function

Private Sub show(ByVal g As Graphics, ByVal led1 As Boolean, _

ByVal led2 As Boolean, ByVal led3 As Boolean, _

ByVal led4 As Boolean, ByVal led5 As Boolean, _

ByVal led6 As Boolean, ByVal led7 As Boolean)

led(g, 1, led1)

led(g, 2, led2)

led(g, 3, led3)

led(g, 4, led4)

led(g, 5, led5)

led(g, 6, led6)

led(g, 7, led7)

End Sub

Private Sub led(ByVal g As Graphics, ByVal led As Integer, _

ByVal sta As Boolean)

Поделиться:
Популярные книги

Делегат

Астахов Евгений Евгеньевич
6. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Делегат

Я – Орк. Том 4

Лисицин Евгений
4. Я — Орк
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я – Орк. Том 4

Краш-тест для майора

Рам Янка
3. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
эро литература
6.25
рейтинг книги
Краш-тест для майора

Запределье

Михайлов Дем Алексеевич
6. Мир Вальдиры
Фантастика:
фэнтези
рпг
9.06
рейтинг книги
Запределье

Кодекс Охотника. Книга ХХ

Винокуров Юрий
20. Кодекс Охотника
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга ХХ

Возвышение Меркурия. Книга 8

Кронос Александр
8. Меркурий
Фантастика:
героическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 8

Секси дед или Ищу свою бабулю

Юнина Наталья
Любовные романы:
современные любовные романы
7.33
рейтинг книги
Секси дед или Ищу свою бабулю

Огни Эйнара. Долгожданная

Макушева Магда
1. Эйнар
Любовные романы:
любовно-фантастические романы
эро литература
5.00
рейтинг книги
Огни Эйнара. Долгожданная

Темный Охотник

Розальев Андрей
1. КО: Темный охотник
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Охотник

Мужчина не моей мечты

Ардова Алиса
1. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.30
рейтинг книги
Мужчина не моей мечты

Как я строил магическую империю 2

Зубов Константин
2. Как я строил магическую империю
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Как я строил магическую империю 2

Внешняя Зона

Жгулёв Пётр Николаевич
8. Real-Rpg
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Внешняя Зона

Идеальный мир для Социопата 5

Сапфир Олег
5. Социопат
Фантастика:
боевая фантастика
рпг
5.50
рейтинг книги
Идеальный мир для Социопата 5

Приручитель женщин-монстров. Том 1

Дорничев Дмитрий
1. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Приручитель женщин-монстров. Том 1