উবুন্টু ব্যবহার করে গ্রাফিক্স প্রোগ্রামিংয়ের জন্য বেশ কয়েকটি বিকল্প রয়েছে।
এসডিএল ব্যবহার করে
আপনি যদি graphics.h
উবুন্টু প্ল্যাটফর্মে ব্যবহার করতে চান তবে আপনাকে সংকলন এবং ইনস্টল করতে হবে libgraph
। এটি লিনাক্সের এসডিএল ব্যবহার করে টার্বো সি গ্রাফিক্স এপিআই প্রয়োগ করে।
এটি উত্পাদন মানের অ্যাপ্লিকেশনের জন্য খুব শক্তিশালী এবং উপযুক্ত নয়, তবে এটি শেখার উদ্দেশ্যে সহজ এবং সহজেই ব্যবহারযোগ্য।
আপনি এখান থেকে ডাউনলোড করতে পারেন ।
প্রথমে ইউনিভার্স সংগ্রহস্থল যুক্ত করুন (যেহেতু কিছু প্রয়োজনীয় প্যাকেজগুলি মূল ভান্ডারে উপলব্ধ নয়):
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 এর জন্য : উবুন্টু থেকে 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>
আপনার প্রোগ্রামে উবুন্টু এবং নিম্নলিখিত লাইনটি ব্যবহার করতে পারেন :
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;
}
ওপেনজিএল (জিএলটিউটের মাধ্যমে) ব্যবহার করা হচ্ছে
যদিও ওপেনজিএলটি মূলত থ্রিডি প্রোগ্রামিংয়ের জন্য তৈরি করা হয়েছে, 2D আকার আঁকলে ওপেনগিএলকে প্রাথমিক রূপরেখা এবং পরিচয় দেওয়া হয় এবং কীভাবে ওপেনগিএলে অঙ্কনগুলি শুরু করা যায় সে সম্পর্কে ধারণা দেয়।
- GLUT ইনস্টল করতে, টার্মিনাল খুলুন এবং টাইপ করুন
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;
}