Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/25: Рейтинг темы: голосов - 25, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 30.01.2011
Сообщений: 7

Нарисовать фигуру по точкам на форме

05.03.2011, 12:08. Показов 5207. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Прошу совета в решении части задачи, а именно:
необходимо нарисовать фигуру по нарисованным на форме точкам, т.е. сначала ставим N точек, потом кликаем и по ним рисуется фигура (кривая,замкнутая кривая,многоугольник)

Вот код, не знаю почему не хочет работать )

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
' сам экшн
 
Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick
 
         Me.CreateGraphics.DrawEllipse(New Pen(Color.Red, 1), e.X, e.Y, 1, 1)
 
         a(i) = New Point(e.X, e.Y)
        
        i = i + 1
       
    End Sub
 
'инициализация переменных
 
Public Class Form1
    Public a() As Point = {New Point(0, 0)}
    Public i As Integer = 0
' действие для рисования 
 
Private Sub КриваяToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles КриваяToolStripMenuItem.Click
        
        Me.CreateGraphics.FillPolygon(New SolidBrush(Color.Red), a)
    End Sub
Добавлено через 1 час 45 минут
нашел ошибку
VB.NET
1
2
3
4
5
Dim pnt(50) As Point  (массив на 50 точек, можно динамический вроде сделать)
 
Me.CreateGraphics.DrawEllipse(New Pen(Color.Red, 1), e.X, e.Y, 1, 1)
        pnt(i) = New Point(e.X, e.Y)
        i = i + 1

подскажите как написать приведенное ниже для моего случая, а то все фигуры из нуля начинаются(первая точка 0.0)
не знаю как проверить равна ли точка нулю

VB.NET
1
2
3
4
5
If pnt.X = 0 And pnt.Y = 0 Then
        pnt.X = e.X
        pnt.Y = e.Y
        End If
        Me.CreateGraphics.DrawLine(New Pen(Brushes.Green, 5), pnt.X, pnt.Y, e.X, )
Добавлено через 9 часов 42 минуты
нашел решение )))
вот конечный вариант моего монолога, может кому нибудь будет полезен.
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Class Form1
    Dim pnt(n) As Point
    Dim n As Integer
    Public i As Integer
 
Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick
        ReDim Preserve pnt(n)
        pnt(i) = New Point(e.X, e.Y)
        Me.CreateGraphics.DrawEllipse(New Pen(Color.Red, 1), e.X, e.Y, 1, 1)
        n = n + 1
        i = i + 1
            End Sub
 
Private Sub КриваяToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles КриваяToolStripMenuItem.Click
        Me.CreateGraphics.DrawCurve(Pens.Black, pnt, 0)
    End Sub
 
    Private Sub МногоугольникToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles МногоугольникToolStripMenuItem.Click
        Me.CreateGraphics.DrawPolygon(Pens.BlueViolet, pnt)
    End Sub
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.03.2011, 12:08
Ответы с готовыми решениями:

В форме нарисовать фигуру по точкам, которые мы отметим кликом мышки
Необходимо например нарисовать 4 точки и что-бы программа соединила их все последовательно! Спасибо за помощь

Нарисовать фигуру по введенным точкам
Нужно нарисовать фигуру по введенным точкам. Вот код: майн #include "widget.h" #include <QApplication> int main(int...

Нарисовать объемную фигуру по заданным точкам
Здравствуйте. Пытаюсь как то научиться рисовать объемную фигуру, например: цилиндр или конус. Рисую случайную линию на PictureBox и путем...

1
1 / 1 / 0
Регистрация: 28.01.2016
Сообщений: 3
29.03.2019, 12:02
thank you veru much ))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.03.2019, 12:02
Помогаю со студенческими работами здесь

Как нарисовать фигуру через полигон по точкам
Вот мой проект, объясните теперь мне пожалуйста: 1/Как нарисовать фигуру через полигон по точкам? 2/Как написать чтобы сохраняло в...

Как нарисовать фигуру на форме в FASM?
Не нашел подходящей открытой темы, поэтому создал новую, сильно не ругайтесь если повторяется... Необходимо написать программу в FASM, в...

В первой форме выбрать фигуру, во второй - ее нарисовать
Приложение с 2 формами, на первой отображается: нажми к(круг), п(прямоугольник) или т(треугольник), esc -выход из прил, при нажатии на...

Нарисовать фигуру 1, в её середине фигуру 2, в которую вписать текст – свою фамилию и инициалы
срочно нужно написать программу по следующему условию: В заданной части графического экрана нарисовать фигуру 1, в её середине фигуру 2,...

Определить фигуру по точкам
не узнаёт квадрат при а(1,2), b(2,2), c(2,1), d(1,1). #include <stdio.h> #include <math.h> #include <conio.h> void main(void) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru