Альтернативы graphics.h - PullRequest
       25

Альтернативы graphics.h

7 голосов
/ 01 августа 2011

В этом семестре в колледже у нас есть вводный курс по компьютерной графике. Не существует рекомендуемого способа выполнения лабораторных упражнений. Большинство студентов используют Turbo C и встроенный заголовочный файл graphics.h.

Я немного опасаюсь этого, Turbo C - вещь 70-х годов, и изучать что-то на ней кажется мне бессмысленным. Я могу также настроить graphics.h для компилятора Bloodshed Dev-C ++ или, возможно, libgraph в системах Linux.

Есть ли альтернативы Borland graphics.h? Я ищу относительно современные решения, которые относительно просты в том смысле, что они не добавляют слишком много стандартного кода и т. Д., Но в то же время реализуют ту же функциональность.

Чтобы дать немного больше информации о задачах, которые мы будем выполнять, мы будем реализовывать базовые графические алгоритмы, такие как алгоритм DDA, алгоритмы Брезенхэма, преобразование сканирования и т. Д. Поэтому мне нужно иметь возможность рисовать пиксели на экране, мне не нужна действительно высокоуровневая библиотека, которая сама может рисовать примитивы, такие как линии и круги. Если это может быть здорово, но для изучения я должен быть в состоянии нарисовать необработанные пиксели на экране.

Ответы [ 4 ]

7 голосов
/ 01 августа 2011

Allegro или SDL библиотеки могут быть для вас.

Я бы также предложил не использовать Bloodshed Dev-C ++, поскольку он также немного устарел. Вы можете использовать MS VC ++ Express или Code :: Blocks , которые оба бесплатны.

2 голосов
/ 01 августа 2011

Взгляните на Гарь .Это библиотека C ++, разработанная для «творческого кодирования», и она выглядит довольно простой в использовании, но при этом мощной (см. Примеры).

Вы также можете попробовать SFML .У него довольно много последователей, и у вас будет большое сообщество, если у вас возникнут какие-либо проблемы.

0 голосов
/ 03 января 2015

SDL - ваш лучший выбор.Я не смог заставить graphics.h работать с Dev C ++, так как более новые версии Windows несовместимы с ним.Другая графическая библиотека, которая может работать, - это GLFW , если вам нужно только рисовать окна и пользовательский интерфейс.

0 голосов
/ 01 августа 2011

Если вы ищете «современный» и «не очень много шаблонного», почему бы не JavaScript?Он будет запущен непосредственно в браузере, и вы можете использовать элемент <canvas> или связать функцию setPixel DOM в сценарии, который вы предоставляете своим студентам.

Вот ссылка, которую вы можете посмотреть: http://www.codeproject.com/KB/scripting/javascriptlinedrawing.aspx.

И еще вопрос: Алгоритм Брезенхема в Javascript .

Если вы привержены C ++, всегда есть OpenGL, но есть, я полагаю, немного большекривой обучения.В старые времена были BGI и GRX для DJGPP (кто-нибудь помнит , что ?).Я не знаю многих независимых от устройства библиотек для записи пикселей на экран (GDI и Xlib слишком специфичны для ОС).В мире Perl / Python / Tcl есть Tk, который не зависит от ОС.

Лично мне нравится JavaScript для низкоуровневых графических алгоритмов - никаких настроек!- но если вы не привязаны к C ++, возможно, стоит посмотреть.Но если у вас нет времени на преподавание JavaScript, возможно, некоторые из ваших учеников могут реализовать некоторые алгоритмы за дополнительную плату.

...