มีหลายตัวเลือกในการทำโปรแกรมกราฟิกโดยใช้ Ubuntu
ใช้ SDL
หากคุณต้องการที่จะใช้graphics.h
บนแพลตฟอร์ม Ubuntu libgraph
คุณจะต้องรวบรวมและติดตั้ง มันคือการติดตั้ง Turbo c graphics API บน Linux โดยใช้ SDL
มันไม่ได้มีประสิทธิภาพมากและเหมาะสำหรับการใช้งานที่มีคุณภาพการผลิต แต่มันง่ายและใช้งานง่ายเพื่อการเรียนรู้
คุณสามารถดาวน์โหลดได้จากที่นี่
ก่อนอื่นให้เพิ่มที่เก็บUniverse (เนื่องจากแพ็คเกจที่จำเป็นบางอย่างไม่มีอยู่ในที่เก็บหลัก):
sudo add-apt-repository universe
sudo apt-get update
การติดตั้งต่อจำเป็นครั้งที่สองและแพ็คเกจเพิ่มเติม:
สำหรับรุ่นก่อนหน้า 18.04:
sudo apt-get install libsdl-image1.2 libsdl-image1.2-dev guile-1.8 \
guile-1.8-dev libsdl1.2debian libart-2.0-dev libaudiofile-dev \
libesd0-dev libdirectfb-dev libdirectfb-extra libfreetype6-dev \
libxext-dev x11proto-xext-dev libfreetype6 libaa1 libaa1-dev \
libslang2-dev libasound2 libasound2-dev build-essential
สำหรับ 18.04 : จาก Ubuntu 18.04 ใช้guile-2.0
งานได้และlibesd0-dev
เลิกใช้แล้ว สำหรับนี้คุณต้องเพิ่มที่เก็บของในxenial
sources.list
sudo nano /etc/apt/sources.list
เพิ่มบรรทัดเหล่านี้:
deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe
sudo apt-get update
วิ่ง จากนั้นติดตั้งแพ็คเกจโดยใช้:
sudo apt-get install libsdl-image1.2 libsdl-image1.2-dev guile-2.0 \
guile-2.0-dev libsdl1.2debian libart-2.0-dev libaudiofile-dev \
libesd0-dev libdirectfb-dev libdirectfb-extra libfreetype6-dev \
libxext-dev x11proto-xext-dev libfreetype6 libaa1 libaa1-dev \
libslang2-dev libasound2 libasound2-dev
ตอนนี้แยกlibgraph-1.0.2.tar.gz
ไฟล์ที่ดาวน์โหลด
ไปที่โฟลเดอร์ที่แตกแล้วรันคำสั่งต่อไปนี้:
./configure
make
sudo make install
sudo cp /usr/local/lib/libgraph.* /usr/lib
ตอนนี้คุณสามารถใช้#include<graphics.h>
บน Ubuntu และบรรทัดต่อไปนี้ในโปรแกรมของคุณ:
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 (ผ่าน GLUT)
แม้ว่าโดยทั่วไปแล้ว OpenGL จะถูกสร้างขึ้นสำหรับการเขียนโปรแกรมสามมิติ แต่การวาดรูปร่าง 2D นั้นให้เค้าร่างพื้นฐานและแนะนำเกี่ยวกับ OpenGL และให้แนวคิดเกี่ยวกับวิธีการเริ่มการวาดวัตถุใน OpenGL
sudo apt-get install freeglut3-dev
ในการติดตั้งมากเกินไปเปิดสถานีและประเภท
- นี่คือโปรแกรมกราฟิกอย่างง่ายโดยใช้ GLUT
/* 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;
}