1 / 1 / 1
Регистрация: 11.03.2011
Сообщений: 22

Рисование линий по координатам

13.04.2011, 16:16. Показов 31479. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Возникла необходимость нарисовать линию по координатам.
Есть ли в С++ ф-я, подобная ф-ии line в Pascal?
Pascal
1
line (x, y, x2, y2);
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.04.2011, 16:16
Ответы с готовыми решениями:

Рисование Рисование точек по координатам
Доброе время суток. Помогите мне наглядным примером. У меня есть массив координат a х у 1 2 3 4 1 3 кпримеру, мне нужно...

Построить несколько линий в пространстве по координатам
Здравствуйте! Подскажите, можно ли построить в программе несколько линий в пространстве по координатам? Например, есть координаты трех...

Массив: отрисовка массива линий по координатам
Создать программу выполняющую действия: 1)вводить и сохранять в массиве данных введенные пользователем координаты линий {знаю что у линий...

24
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,874
13.04.2011, 23:59
Студворк — интернет-сервис помощи студентам
obZen,
консоль это такое же окно как и другие
поэтому посмотри любую книгу про Windows раздел графики
лучше всех по моему Петзолд

Цитата Сообщение от obZen Посмотреть сообщение
HWND - это тип данных?
хендер окна( в виндосе все на хендерах)

Цитата Сообщение от obZen Посмотреть сообщение
hWnd - переменная этого типа?
да
Цитата Сообщение от obZen Посмотреть сообщение
GetConsoleWindow()
получить хендер консоли
Цитата Сообщение от obZen Посмотреть сообщение
HDC hDC=GetDC(hWnd); - объясните, что происходить здесь?
получить дескриптор для рисования Система может рисовать не только в окне но и на принтере плотере......
везде будет один и тот же код просто меняем дескриптор
Цитата Сообщение от obZen Посмотреть сообщение
HPEN cP = CreatePen(PS_SOLID, 2, RGB(0,255,0)); - создание линии. Но что такое PS_SOLID остаётся в тумане...
создание пера если будешь рисовать линию надо выбрать перо
конкретно здесь сплошное PS_SOLID ширина 2 цвет зеленый RGB(0,255,0)
Цитата Сообщение от obZen Посмотреть сообщение
SelectObject(hDC,cP);
выбрать перо в дескриптор рисования
1
1 / 1 / 1
Регистрация: 11.03.2011
Сообщений: 22
14.04.2011, 00:12  [ТС]
Цитата Сообщение от IrineK Посмотреть сообщение
Спасибо огромное! Буду учить)

Такой вопрос: нарисовал поле 10х10. Если прокрутить окно вниз и вернуться обратно, изображение стирается...

Добавлено через 2 минуты
ValeryS, Оо.. Спасибо! Объяснили, понял!) Должен знать, что использую, потому и спросил!
А мануал от Иры почитаю)
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,874
14.04.2011, 00:20
Цитата Сообщение от obZen Посмотреть сообщение
Если прокрутить окно вниз и вернуться обратно, изображение стирается...
это фишка Виндос система не должна запоминать что нарисовано в окне. окно само дожно себя перерисовывать.
для этого ему посылается сообщение WM_PAINT. оно посылается когда изменился размер, окно перекрыто полностью или частично.....
Но приходит ли оно консоли????
по моему тебе проще создать GUI окно и не мучатся
там все логичней
0
 Аватар для Olchik
21 / 21 / 1
Регистрация: 31.07.2009
Сообщений: 131
23.04.2011, 13:59
Есть необходимость сделать массив Point неограниченным (но конечным). Как задавать ограниченный, я знаю, н-р, вот так
C++
1
2
3
4
5
6
7
8
array <Point>^ points =
            {Point(100,200),//a
            Point(120,150),//b
            Point(150,100),//c
            Point(162.5,150),//d
            Point(175,175),//e
            Point(200,200),//f
            Point(125,375)};//g
но он ограничен, а мне надо от 1 до n точек, для того чтоб построить по ним график с помощью
C++
1
>DrawCurve(anyPen,anyPointMas);
Подскажите, плз, как это сделать
работаю в c++, crl, windows form application.
p.s. не стала создавать новую тему, ибо те, кто писал ответы в этой, наверняка знают как это можно реализовать.
p.p.s. рисовать графики именно там, и именно с помощью массива точек и DrawCurve - идея не моя, а преподавателя - хочет, чтоб так ему сделали
0
14 / 14 / 4
Регистрация: 27.10.2012
Сообщений: 141
09.11.2013, 16:33
Цитата Сообщение от obZen Посмотреть сообщение
Возникла необходимость нарисовать линию по координатам.
Есть ли в С++ ф-я, подобная ф-ии line в Pascal? Код Pascal1
line (x, y, x2, y2);
А вот мне нужно именно так, как было описано в начале темы. Нужно нарисовать горизонтальную линию, состоящую из большого количества маленьких отрезков. И очень часто менять левый и правый конец каждого отрезка по координате Y. В Visual Basic это было элементарно - там был объект Line со свойствами x1, y1, x2, y2, который можно было просто разместить на форме. Неужели в C++ нельзя так же просто это сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.11.2013, 16:33
Помогаю со студенческими работами здесь

Рисование линий
Дорогие друзья! Я создаю что-то типа редактора изображений. Но вдруг у меня из памяти вылетело. Как можно мышкой рисовать по форме! Я...

Рисование линий
Есть маленькая форма, на ней можно мышкой рисовать линии. Соль в том что в Paint сохраняется почему-то только последняя линия, хотя...

Рисование линий
Здравствуйте все. Мой вопрос в том, как нарисовать линии поверх изображения так, чтобы при зумировании изображения линии соответствовали...

Рисование линий
Подскажите как нарисовать подряд линии? Graphics gr = e.Graphics; Pen p = new Pen(Color.Blue, 5);// цвет линии и ширина ...

рисование линий
помогите пожалуйста. мне надо,чтобы по нажатию мыши в вершинах многоугольника(я его загружаю через commanddialog) должны прорисовываться...


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

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

Новые блоги и статьи
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru