Рисование в консоли
Всем привет, такой вопрос, есть ли такой сайт который рисует или выдаёт готовые рисунки кода (Например мне нужно нарисовать) корабль, дом и т.д в консоли, но что бы самому этой вакханалией не заниматься))
Нужно для оформление Морского боя.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Рисование синусоиды в консоли
Написать программу чтобы в консоле рисовала синусоиду, при определенных входящих данных.
Рисование в консоли (не символами)
Есть ли у кого пример рисования в консоли не символами. Буду очень признателен 😐
Рисование в консоли (дома и дороги)
Подскажите. Есть абстрактный класс в котором я динамически выделяю память под двумерный массив.
Подключить ASCII кодировку (рисование рамок в консоли)
Добрый день! Пишу в VS’13. Проект: Консольное приложение Win32 Есть такая проблема. Хочется.
Заблокирован
Xpystum, вы хоть рисунок предоставьте
Нарушитель
8936 / 4800 / 1111
Регистрация: 12.03.2015
Сообщений: 22,645
Сообщение от Xpystum
Нужно для оформление Морского боя.
Какой дебил тебя там заставляет делать «морской бой» в консоли? Сломай ему нос.
18413 / 9584 / 2341
Регистрация: 30.01.2014
Сообщений: 16,742
Сообщение от Xpystum
есть ли такой сайт который рисует или выдаёт готовые рисунки
600 / 616 / 96
Регистрация: 29.05.2015
Сообщений: 3,812
Сообщение от Xpystum
Например мне нужно нарисовать) корабль, дом и т.д в консоли
А нафига? Ты вводишь в консоли D4, а консоль тебе отвечает «Мимо».
18413 / 9584 / 2341
Регистрация: 30.01.2014
Сообщений: 16,742
Сообщение от alexu_007
Наверное хочет заставочку сделать.
Сообщение от DrOffset
И насмешливую пиратскую морду при проигрыше ))
Меню пользователя @ SmallEvil |
Заблокирован
Сообщение от Verevkin
делать «морской бой» в консоли?
а чего? на то он и заказчик, можно еще псевдографику и мауса добавить
600 / 616 / 96
Регистрация: 29.05.2015
Сообщений: 3,812
Вариант 13х13:
Регистрация: 05.12.2018
Сообщений: 109
Это не заказчик, это с учебы)
Сделать морской бой — при том что темы из ООП нельзя использовать)
— получилось вот так.
Просто хочу красиво оформить) поэтому нужен рисунок в начале в меню)
Заблокирован
Сообщение от Xpystum
получилось вот так
где/что получилось?
Регистрация: 05.12.2018
Сообщений: 109
Я затупил как вставить картину на форуме, вложил её.
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Заблокирован
WinAPI: LoadImage-загрузить файл
Регистрация: 05.12.2018
Сообщений: 109
Можете ли вы мне код скинуть?)
Регистрация: 01.04.2021
Сообщений: 39
@ zayats80888
Croessmah, вручную делал или скопипастил?
Меню пользователя @ zayats80888 |
zayats80888, копипаст конечно.
Меню пользователя Croessmah |
Читать блог |
@ zayats80888
Croessmah, а я уж хотел плюсануть за творчество 🙁
Меню пользователя @ zayats80888 |
2419 / 1039 / 371
Регистрация: 01.06.2021
Сообщений: 3,708
Xpystum, у тебя корабли размещаются только вертикально?
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Рисование ASCII кодами и русский текст в консоли
Всем добрый вечер. И вот такой вопрос есть. Сначала печатаю в консоли текст а под ним.
Рисование в консоли
#include "stdafx.h" #include <iostream> #include <conio.h> #include <Windows.h> using namespace.
Рисование в консоли
Я попытался рисовать в консоли прямую линию алгоритмом бренезхема и столкнулся с проблемой как.
Рисование в консоли
Я испытываю себя и пытаюсь выводить изображение в консоли на c# . Выводить круг, квадрат двигать.
Рисование в консоли на C#
Мне надо, чтобы в консоли сначала появилось: "Loading. " Console.WriteLine("Loading. ") Затем.
Рисование в консоли
Товарищи, такая беда — сестра попросила помочь ей задачки порешать/объяснить на шарпе, а я уже 3.
Рисование фракталов в консоли
Написал модуль для рисования в консоли простых примитивов. unit ConsoleGraph; uses Crt; type.
Рисование в консоли Visual Studio c++
Учился писать код в паскале. По ходу учебы перешел на с++ и Visual Studio. В борланд паскале был удобный канвас в котором можно было рисовать фигуры/графики функций etc. есть ли в visual studio аналог?
Отслеживать
задан 29 ноя 2017 в 11:31
Андрей Лобанович Андрей Лобанович
129 1 1 золотой знак 1 1 серебряный знак 7 7 бронзовых знаков
Псевдографикой?
29 ноя 2017 в 11:33
неа, нужно качать дополнительные библиотеки из вне
29 ноя 2017 в 11:38
@user272591, что за библиотеки?
29 ноя 2017 в 11:49
@VladimirGamalyan да, почему нет.
29 ноя 2017 в 11:50
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
В Windows на окне можно рисовать средствами GDI, консольное окно не исключение. Естественно такое решение будет непереносимым. Пример:
#include #include #include int main() < HWND hwnd = GetConsoleWindow(); HDC hdc = GetDC(hwnd); int x = 0; for (float i = 0; i < 3.14 * 10; i += 0.05) < SetPixel(hdc, x, 50 + 25 * cos(i), RGB(255, 255, 255)); x += 1; >ReleaseDC(hwnd, hdc); std::cin.ignore(); return 0; >
Кроме установки пикселя в наличии большое кол-во функций для рисования различных примитивов, с применением разных кистей (толщины, узора и т.п.).
Внимание! Работает сносно только в старых версиях Windows (Windows XP). Не использовать для современных систем, начиная с Vista.
Как рисовать в консоли c
Или чтобы рисовать в текстовом режиме: функции установки курсора и вывода на консоль (псевдографики из ASCII).
Сообщ. #7 , 09.12.06, 13:21
Senior Member
Рейтинг (т): 1
да не не псевдографика надо нарисовать как можно проще график синуса
Сообщ. #8 , 09.12.06, 13:50
Рейтинг (т): 26
Что-то вроде
const int N = 100;
const double PI = 3.141592;
const double T = 2; // число периодов
TCHAR title[MAX_PATH];
POINT pts[N];
int _tmain(int argc, _TCHAR* argv[])
GetConsoleTitle(title, MAX_PATH);
HWND hwnd = FindWindow(NULL, title);
HDC hdc = GetDC(hwnd);
GetClientRect(hwnd, &rc);
HPEN hpen = CreatePen(PS_SOLID, 1, RGB(0xFF, 0, 0));
SelectObject(hdc, hpen);
MoveToEx(hdc, 0, (rc.bottom — rc.top)/2, 0);
for(int i = 0; i < N ; ++i)
pts[i].x = (rc.right - rc.left)*i/100;
pts[i].y = (rc.bottom - rc.top)/2*(1.0 + sin(i*T*2.0*PI/N));
Polyline(hdc, pts, N);
DeleteObject(hpen);
ReleaseDC(hwnd, hdc);
Сообщ. #9 , 09.12.06, 23:42
Unregistered
LPBOY, работает только в линейке NT/2000/XP.
Сообщ. #10 , 10.12.06, 07:43
Рейтинг (т): 26
Сообщ. #11 , 10.12.06, 08:47
Unregistered
Не знаю. Вопрос к Мелкософтам. Пробовал — в 9х ничерта не рисует. В ХП — рисует.
Сообщ. #12 , 10.12.06, 14:15
пропагандист
Рейтинг (т): 188
В консоли можно рисовать график синуса, помечая символами ‘*’ точки на графике, отрисовывая с некоторым шагом.
Сообщ. #13 , 10.12.06, 15:03
Unregistered
Да многое можно. Но какое-то нехорошее чувство подсказывает, что великомудрый препод на самом деле просто хочет ДОСовскую прогу, и свято уверен, что это называется «консольной».
Сообщ. #14 , 02.06.07, 07:31
Unregistered
Доброе утро.
Немного другая проблема.
Есть dosпрога, написанная когда-то давно на Turbo C. Хочется запустить ее в Builder C++ 6.0.
float z,h,x1,y1,x2,y2,x3,y3,r,t=0;
int Driver = DETECT, Mode;
setbkcolor (BLACK);
printf («\n What way do you want to enter data?»);
P: printf («\n To use keyboard press 1»);
printf («\n To use entering from file press 2: «);
if (z==1) goto M;
else if (z==2)
J: x1=300+r*sin(t);
y1=200+r*cos(t);
x2=300+r*sin(t);
y2=200+r*cos(t);
x3=300+r*sin(t);
y3=200+r*cos(t);
line (x1,y1,x2,y2);
line (x1,y1,x3,y3);
line (x2,y2,x3,y3);
Скачал файлик graphics.h. Кинул в папку include.
Функция initgraph теперь выглядит так: initgraph(&Driver, &Mode, «»);
Пытаюсь скомпилить, появляется ошибка:
[C++ Fatal Error] graphics.h(10): F1003 Error directive: BGI graphics not supported under Windows
Как можно переделать прогу, чтобы она заработала. Рисовать нужно именно в консоли.
ОС WinXP SP2
компилятор C++ Builder 6.0
Сообщ. #15 , 02.06.07, 10:00
Unregistered
IGV, во-первых, незачем поднимать такие старые темы — для новых вопросов обычно создаются новые топики. Во-вторых, если используешь
Цитата IGV @ 02.06.07, 07:31
компилятор C++ Builder 6.0
то у тебя есть два варианта: либо рисовать непосредственно на канве формы (или одного из компонентов, специально для этого предназначенных — TPaintBox, TImage и т.д.), используя соответствующие методы и свойства (Pixels, LineTo, MoveTo, Arc и пр.), либо обратить внимание в сторону проекта Dos Graphics Migration Library.
0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
0 пользователей:
- Предыдущая тема
- C/C++: Общие вопросы
- Следующая тема
- Форум на Исходниках.RU
- Программирование
- C/C++
- C/C++: Общие вопросы
Графика в консоли
Существует ли возможность реализовать графику в консольных приложениях С++ с использованием стандартных библиотек. (без создния собственных библиотек, классов и прочее)?
Например, чтобы для изображения линии использовалось что-то вроде line(x1,x2,y1,y2)
P,S. среда Visual Studio или Code Blocks.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Графика в консоли
Здравствуйте, подскажите пожалуйста, можно ли в консоли с++ устроить графический интерфейс.
Графика в консоли
Помогите разобраться с графикой в консоле. компилирую код в Dev C++ #include <iostream> #include.
Построение графика функции в консоли
Привет всем Задание такое — построить график функции |y| = |sin(x)| + cos(x) Вся сложность.
Графика в консоли
Изучаю с++ написал калькулятор для консоли, хочу переписать его в графическую версию для консоли.
CEO SOVAZ Corp.
386 / 232 / 51
Регистрация: 17.12.2011
Сообщений: 822
Записей в блоге: 1
В консоли вроде нельзя. В Qt SDK есть встроенная библиотека QPainter. Там и рисуй (только не в консоли)
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Сообщение было отмечено как решение
Решение
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#include #include int main(){ POINT op; HWND hWnd=GetConsoleWindow(); HDC hDC=GetDC(hWnd); SelectObject(hDC,GetStockObject(WHITE_PEN)); MoveToEx(hDC,50,50,&op); LineTo(hDC,100,200); ReleaseDC(hWnd,hDC); std::cin.get(); return 0; }
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
Спасибо, Croessmah.
Правда, сложновато будет новичкам это втолкнуть в теме «создание рисунков циклическим повторением графических примитивов». Но попробую.
Не хочется ради этой одной темки Паскаль или Бейсик задействовать.
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Сообщение от LVV
«создание рисунков циклическим повторением графических примитивов»
покажите им квадрат или треугольник(ковер, салфетку) Серпинского.
Их можно достаточно ясно описать без использования программирования вовсе
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
Сообщение от Croessmah
можно достаточно ясно описать без использования программирования вовсе
Ну, смысл как раз в программировании и заключается. Циклы + графика: интересней для изучения, чем на одних вычислениях циклы «оттачивать».
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
LVV, я бы OpenGL юзал.
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
Croessmah, А можно сделать так чтобы линия не пропадала когда консоль сворачиваешь? Чтобы перерисовка была
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
v.a.l.i.d, В обработчике событий добавить в WM_PAINT перерисовку.
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
Сообщение от go
В обработчике событий добавить в WM_PAINT перерисовку.
А как это сделать?
1370 / 593 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
Сообщение от Croessmah
#include #include
Иногда нужно
1 2 3
#define _WIN32_WINNT 0x0500 #include #include
иначе может возникнуть ошибка error C3861: ‘GetConsoleWindow’: identifier not found
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Сообщение от daslex
Иногда нужно
Специально для Вас: MSDN. Изменение WINVER и _WIN32_WINNT
И если уж на то пошло, то _WIN32_WINNT_WIN2K, а не 0x0500
А лучше пишите тогда под DOS
1370 / 593 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
Сообщение от Croessmah
Специально для Вас
ну не только для меня. будут люди, которые с этим столкнутся еще.
Регистрация: 22.01.2013
Сообщений: 76
Сообщение от Croessmah
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#include #include int main(){ POINT op; HWND hWnd=GetConsoleWindow(); HDC hDC=GetDC(hWnd); SelectObject(hDC,GetStockObject(WHITE_PEN)); MoveToEx(hDC,50,50,&op); LineTo(hDC,100,200); ReleaseDC(hWnd,hDC); std::cin.get(); return 0; }
кто может рассказать как оно работает, буду очень благодарен
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Если просто
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#include #include int main(){ POINT op; HWND hWnd=GetConsoleWindow(); //Получаем дескриптор окна консоли HDC hDC=GetDC(hWnd); //Получаем контекст устройства по полученному дескриптору SelectObject(hDC,GetStockObject(WHITE_PEN)); //Выбираем перо WHITE_PEN в контекст MoveToEx(hDC,50,50,&op); //Ставим текущую точку в координаты 50,50 LineTo(hDC,100,200); //Рисуем линию из текущей точки в точку 100, 200 ReleaseDC(hWnd,hDC); //"Освобождаем" контекст std::cin.get(); return 0; }
Регистрация: 22.01.2013
Сообщений: 76
можно ли где почитать про это все
интересует:
1) какие параметры за что отвечают
2) можно ли менять толщину линии
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Сообщение от skynet120
можно ли где почитать про это все
MSDN, книги и статьи по WinAPI
Добавлено через 1 минуту
Сообщение от skynet120
какие параметры за что отвечают
Смотря параметры чего.
Сообщение от skynet120
как нарисовать горизонтальную линию
координаты поменять
Сообщение от skynet120