是否有任何基于Linux的编译器支持graphics.h库?我想要实现图形程序,所以请告诉我,如果有这样的软件。
如果没有,那我怎么用呢?
发布于 2014-09-17 07:20:24
有几个选项可用于使用Ubuntu进行图形编程。
使用SDL的
graphics.h,则需要编译和安装libgraph。它是用SDL在Linux上实现turbo图形API的。
它功能不强,不适用于生产质量的应用,但它简单易用,便于学习。
您可以从这里下载它。
guile-2.0 works和libesd0-dev被废弃。为此,您需要在xenial的sources.list中添加存储库。列出以下几行: deb、http://us.archive.ubuntu.com/ubuntu/、异种主宇宙、deb-src、http://us.archive.ubuntu.com/ubuntu/、异种主宇宙运行sudo apt-get update。然后使用以下方式安装软件包: sudo apt-get install libsdl-image1.2 libsdl-image1.2-dev guile-2.0-dev libsdl1.2debian libart-2.0-dev libaudiofile dev\ libesd0-dev libdirectfb-dev libfreetype6-dev \ libxext-dev x11proto-xext-dev libaa1 libaa1-dev libslang2-dev libasound2 libasound2libgraph-1.0.2.tar.gz文件。#include<graphics.h>:int gd=DETECT,gm;initgraph(&gd,&gm,NULL);下面是一个使用graphics.h的示例程序:
/* demo.c */ #include <graphics.h> int main() { int gd = DETECT,gm,left=100,top=100,right=200,bottom=200,x= 300,y=150,radius=50; initgraph(&gd,&gm,NULL); rectangle(left, top, right, bottom); circle(x, y, radius); bar(left + 300, top, right + 300, bottom); line(left - 10, top + 150, left + 410, top + 150); ellipse(x, y + 200, 0, 360, 100, 50); outtextxy(left + 100, top + 325, "C Graphics Program"); delay(5000); closegraph(); return 0; }

虽然OpenGL基本上是为3D编程而制作的,但绘制2D图形给出了OpenGL的基本轮廓和介绍,并给出了如何在OpenGL中开始绘制对象的想法。
sudo apt-get install freeglut3-dev。/* demo.c */
#include <GL/gl.h>
#include <GL/glut.h>
#include <GL/glu.h>
void setup() { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); }
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glColor3f(0.0f, 0.0f, 0.0f);
glRectf(-0.75f,0.75f, 0.75f, -0.75f);
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);
glutInitWindowSize(800,600);
glutCreateWindow("Hello World");
setup();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
发布于 2015-01-28 11:19:35
如果您想在ubuntu或任何其他linux发行版中使用graphics.h,那么我更喜欢libxbgi。它可以做几乎所有的事情,你希望从图形。h窗口。您可以从这里下载:http://libxbgi.sourceforge.net/
否则,如果你想要做一些高端的图形,那么你在那里的SDL(这主要是为编程视频游戏)和OpenGL(是为3D图形)。你也可以使用两者的混合物。一个例子是游戏briquolo(拼写可能是错误的)。
图形编程快乐!!
https://askubuntu.com/questions/525051
复制相似问题