Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Консольная графика...


Автор: GaGu 29.7.2007, 19:14
Уважаемые кодеры, как начинающие, так и профи. Мой вопрос касается графики в консоли, а точнее как её создавать, используя С/С++. Мне необходима информация по этой теме, поэтому, если кто имеет литературу в электронном виде или ссылки в интернете, прошу поделиться. Заранее всем спасибо. С уважением GaGu.

Автор: Kuvaldis 29.7.2007, 20:00
GaGu, 
Ты не очень хорошо определил платформу, ОС
Но тем не менее: для меня когда-то весьма полезной оказалась книга Шилдта "Си для профессионалов" от 89 года (там про DOS)
Почитать можно http://soft32.ru/literature.shtml?topic=cplus&book=2

Автор: JackYF 29.7.2007, 23:07
Цитата(GaGu @  29.7.2007,  19:14 Найти цитируемый пост)
Мой вопрос касается графики в консоли, а точнее как её создавать, используя С/С++

если у тебя BC++3.1 или аналогичный, то действительно смотри graphics.h от Борланда. Это будут 16-разрядные ДОС-приложения.

если же тебе нужны 32-разрядные современные приложения, то таким уже никто не занимается.

Добавлено через 20 секунд
Цитата(GaGu @  29.7.2007,  19:14 Найти цитируемый пост)
Мой вопрос касается графики в консоли, а точнее как её создавать, используя С/С++

если у тебя BC++3.1 или аналогичный, то действительно смотри graphics.h от Борланда. Это будут 16-разрядные ДОС-приложения.

если же тебе нужны 32-разрядные современные приложения, то таким уже никто не занимается.

Автор: Dronchik 30.7.2007, 05:42
Бросай это дело, на Виндовскую графику переходи. Самому когдато надо было но нашол лишь как замутить треугольник вращяущийся. Но если очень надо то пройдись по другим темам.

Автор: bsa 30.7.2007, 07:16
Вообще-то, было бы не плохо сначала немного пояснить, что значит "графика в консоли". Так как такого понятия нет. В линуксе, например, можно создать графическую консоль (frame buffer console, называется), но, думаю, не об этом речь.
Если речь идет про рамки консольных окошек, то это называется псевдографика.

Автор: Dronchik 30.7.2007, 10:52
Возможно (как я понял), GaGu имел виду рисование геометрических фигур в консоле. Например у Борланда есть grafics.h. В ней описаны функции для рисования в консоли. 

Автор: Daevaorn 30.7.2007, 10:57
Цитата(Dronchik @  30.7.2007,  11:52 Найти цитируемый пост)
 имел виду рисование геометрических фигур в консоле. Например у Борланда есть grafics.h. В ней описаны функции для рисования в консоли.  

это не совсем консоль. это графический режим. в частности DOS.

Автор: GaGu 30.7.2007, 19:49
Kuvaldis, спасибо за книженцию. Очень даже интересно. 
Консольные проги я пишу в Turbo C++, используя заголовок 
#include <graphics.h>
//-----------------------------
Современные 32-разрядные приложения я пишу в Borland C++ Builder 6. Скоро Visual C++ себе поставлю.
Про графическую консоль в Linux я имею представления, коль сам там тоже сижу. Поэтому могу сказать, что псевдографика меня не интересует.
Вы говорите, чтоб я это дело бросил? Я бы с радостью, да мне необходимо задачи решать, ну типа:
нарисуйте пятиконечную звезду, или напишите на синем фоне зелёными буквами слово "тошнит".
Так что это скорее всего графический режим...

Автор: alex_smirnov 31.7.2007, 12:02
Интересно, я сначала подумал, что GaGu решил реализовывать графику в текстовом режиме...
Я когда-то так арканойд на BC 3.1 писал, было прикольно! smile

Автор: profispb 31.7.2007, 16:27
Если нужна самая простая реализация пользовательского интерфейса(окошки, кнопки, меню), могу рассказать как это делается..  Защищал курсовой по этой теме. Компилятор Turbo C 3.0.
И кто-бы что не говорил это лучший компилятор под дос! smile

Автор: Daevaorn 31.7.2007, 16:41
Цитата(profispb @  31.7.2007,  17:27 Найти цитируемый пост)
И кто-бы что не говорил это лучший компилятор под дос!

неа. http://www.delorie.com/djgpp/

Автор: JackYF 31.7.2007, 16:42
Цитата(profispb @  31.7.2007,  16:27 Найти цитируемый пост)
И кто-бы что не говорил это лучший компилятор под дос! smile 

мда, вот только времена ДОС уже малесько прошли...

Автор: GaGu 31.7.2007, 17:13
profispb, а как можно с тобой связаться. Напиши мне на sota-07@bk.ru. Заранее благодарен за консультацию.

Автор: profispb 31.7.2007, 18:23
Цитата(JackYF @ 31.7.2007,  16:42)
Цитата(profispb @  31.7.2007,  16:27 Найти цитируемый пост)
И кто-бы что не говорил это лучший компилятор под дос! smile 

мда, вот только времена ДОС уже малесько прошли...

Я не говорю что щас времена ДОС! Я сказал что, этот компилятор лучший для доса. Сколько на нем в свое время сделал....

Добавлено через 1 минуту и 47 секунд
Цитата(GaGu @ 31.7.2007,  17:13)
profispb, а как можно с тобой связаться. Напиши мне на sota-07@bk.ru. Заранее благодарен за консультацию.

Задавай интересующие тебя вопросы на ящик profispb18 гав-гав rambler.ru

Автор: En_t_end 31.7.2007, 19:29
Не вздумайте, кто сюда зайдет в поисках инфы по программированию терминала использовать ncurses. Если не хотите тронуться умом лучше найдите нормальную либу над той же ncurses,которая будет хоть что-то сама решать.

Автор: bsa 31.7.2007, 21:50
En_t_end, секс надоел?  smile 
Ты б посоветовал какую-нибудь, что ли...

Автор: En_t_end 1.8.2007, 07:01
Цитата(bsa @  1.8.2007,  01:50 Найти цитируемый пост)
Ты б посоветовал какую-нибудь, что ли...

Из тех что мне насоветовали на сырцах, да и здесь, можно выделить Slang. Вещь интересная, но опять же документация фиговая конретных примеров как к той же ncurses я не нашел. Если кто найдет полезную инфу по Slang пусть напишет на pnzh пес mail.ru или pnzhdin пес gmail.com

Автор: try_to_get 4.8.2007, 15:38
В Borland C++ есть Borland Graphics Interface (BGI) В хелпе Borland C++ DOS Reference описаны все функции.

Добавлено через 1 минуту и 29 секунд
Вот пример:

Код

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{
   /* request autodetection */
   int gdriver = DETECT, gmode, errorcode;

   /* initialize graphics mode */
   initgraph(&gdriver, &gmode, "");

   /* read result of initialization */
   errorcode = graphresult();

   if (errorcode != grOk)    /* an error occurred */
   {
      printf("Graphics error: %s\n", grapherrormsg(errorcode));
      printf("Press any key to halt:");

      getch();
      exit(1);               /* return with error code */
   }

   /* draw a line */
   line(0, 0, getmaxx(), getmaxy());

   /* clean up */
   getch();
   closegraph();
   return 0;
}

Автор: GaGu 8.8.2007, 20:14
Люди, скажите, а кто-нибудь из вас вообще щас пишет приложения под консоль(в Linux или Windows)? Или неужели на них уже спроса нет?

Автор: try_to_get 8.8.2007, 20:20
В институте заставляют писать...  smile 

Автор: Dronchik 9.8.2007, 06:08
И в школу иногда, а так - окошки.

Автор: En_t_end 9.8.2007, 09:37
Цитата(GaGu @  9.8.2007,  00:14 Найти цитируемый пост)
Люди, скажите, а кто-нибудь из вас вообще щас пишет приложения под консоль(в Linux или Windows)? Или неужели на них уже спроса нет?

Спрос есть. Людей мало кто конкретно этим занимается.

Добавлено через 2 минуты и 4 секунды
Цитата(try_to_get @  9.8.2007,  00:20 Найти цитируемый пост)
В институте заставляют писать...  

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

Добавлено через 13 минут и 38 секунд
Цитата(bsa @  1.8.2007,  01:50 Найти цитируемый пост)
секс надоел?   
Ты б посоветовал какую-нибудь, что ли...

Вот ещё... посоветовал Sun : NDK++ - довольно удобный враппер, система событий(event, message) сделана также как в MFC. Да и сам враппер очень уж по духу похож на MFC, та же(в идейном смысле) иерархия фундаментальных классов. Довольно удобно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)