2 / 2 / 0
Регистрация: 24.05.2016
Сообщений: 88

Рисование по вершинам(точкам)

28.11.2017, 00:15. Показов 1025. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброй ночи уважаемые форумчане.

Сразу перейду к вопросу.

Вот код:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public partial class MainForm : Form
    {
        int[] A={1,2,3,4,5,6,7,8,9,10,11};
        Point[] P=  {
                        new Point(100,80),//Вершина №1
                        new Point(100,140),//Вершина №2
                        new Point(100,200),//Вершина №3
                        new Point(100,260),//Вершина №4
                        new Point(253,290),//Вершина №5
                        new Point(406,290),//Вершина №6
                        new Point(560,260),//Вершина №7
                        new Point(560,200),//Вершина №8
                        new Point(560,140),//Вершина №9
                        new Point(560,80),//Вершина №10
                        new Point(330,50),//Вершина №11
                    };
 
void DrwClick(object sender, EventArgs e)
        {
                    
            Bitmap points_11 = new Bitmap(pan3.Width,pan3.Height);
            Pen pen = new Pen(Color.Black);
            Graphics g = Graphics.FromImage(points_11);
            pan3.BackgroundImage = points_11;
            
    
            for(int i=0;i<A.Length;i++) {
                    for(int j=0;j<A.Length;j++) {
                        if (DGVSm[i,j].Value != "0") {   
                                                            g.DrawLine(new Pen(Brushes.Black, 1),P[i],P[j]);
                                                      }
                                                 }
                                         }
                
        }
Суть состоит в том, чтобы отрисовать линии только между теми вершинами, которые соответствуют условию ( То есть имеем DataGridView размерностью 11 на 11, который забит нулями. Осуществляется заполнение таблицы единицами. ) если ячейка != 0, то значит значение проходит, а метод рисования принимает значения столбца и строки и рисует линию между этими вершинами где на пересечении стоит 1 ( в DataGridView). Но как бы я не пытался, а отрисовываются сразу все вершины, а не нужные мне и подходящие по условию.

P.S.:Заполнение осуществляется зеркально, то есть если я ввёл в ячейку DGVSm[3,2].Value = "1"; то с помощью события CellEndEdit в ячейку DGVSm[2,3] так же запишется 1. ( Если это имеет значение).
C#
1
2
3
4
5
6
7
8
void DGVSmCellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            int x;
            int y;
            x = Convert.ToInt32(DGVSm.CurrentCell.ColumnIndex.ToString());
            y = Convert.ToInt32(DGVSm.CurrentCell.RowIndex.ToString());
            DGVSm[y,x].Value = DGVSm.CurrentCell.Value; 
        }
Миниатюры
Рисование по вершинам(точкам)  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.11.2017, 00:15
Ответы с готовыми решениями:

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

Рисование линий по точкам массива
Есть двумерный массив, Point mas2 = new Point; который заполняется динамически. Этот массив содержит координаты точек. По этим точкам...

Рисование фигур по вершинам(точкам)
Доброго дня. Есть такая задача, нужно в окне формы щелчками мыши задать точки(вершины), после того как точек например станет 4, по ним...

2
1168 / 886 / 517
Регистрация: 09.04.2014
Сообщений: 2,102
28.11.2017, 01:37
попробуйте проверять ячейки так
C#
1
 if (DGVSm[i,j].Value.ToString() != "0")
1
2 / 2 / 0
Регистрация: 24.05.2016
Сообщений: 88
28.11.2017, 02:56  [ТС]
Благодарю, результат не заставил себя ждать. Тему можно закрыть.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.11.2017, 02:56
Помогаю со студенческими работами здесь

Рисование графов по вершинам в таблице DataGrid
Добрый день гуру програмирования... Мне нужна ваша помощь.. На парах задали проект с графами. И появилась куча проблем.. 1) Нужно...

Рисование графика по точкам
Великие умы, подскажите путь решения следующей проблемы: Имеется задача: нарисовать график по 256 точкам, которые в свою очередь...

Рисование линии по точкам
как нарисовать линию по точкам на qbasic. может выдрать алгоритм из библиотеки уже готовой на сайте.

Рисование по точкам в Quartz 2D
Нужно нарисовать точки, а потом их соединить линиями. А так же мне нужно узнать координаты этих точек (как по мне, то нужно узнать...

Рисование кривой Безье по трем точкам
Доброго утра, форумчане. Надо нарисовать на форме кривую Безье по трём кликам мыши. Как такое реализовать? Можно ли это сделать с помощью...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru