11 December 2014

Graphics.h in Linux Mint or Ubuntu

This post tells you how to install graphics.h in either Ubuntu or Linux Mint

Parameters:
OS : Linux Mint 17.1 - 64 bit OS

Usually graphics.h will not be available in Linux Mint and if you want to include that in Ubuntu or Mint, here are the steps and a sample program

$ sudo apt-get update
$ sudo apt-get install build-essential autoconf automake libxmu-dev 
The above line is needed to get all the developmental libraries for ubuntu or mint. 

$ 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

The above line is needed to download the complete graphics with sound libraries

Download this file libgraph
http://download.savannah.gnu.org/releases/libgraph/libgraph-1.0.2.tar.gz

Go the download location and unzip it
$ tar zxvf libgraph-1.0.2.tar.gz
$ cd libgraph-1.0.2/
$ ./configure
$ sudo make
$ sudo make install
$ sudo cp /usr/local/lib/libgraph.* /usr/lib

Once done, its ready to run the graphics.h file

Here are two examples, one to plot  stars in space

/*A program to draw a space with stars*/
#include <graphics.h>
int main()
{
  int gd=DETECT,gm;
  int i,x,y;
  initgraph(&gd,&gm,NULL);
  line(0,0,640,0);
  line(0,0,0,480);
  line(639,0,639,480);
  line(639,479,0,479);
  for(i=0;i<=1000;i++)
  {
    x=rand()%639;
    y=rand()%480;
    putpixel(x,y,15);
  }
getch();
  closegraph();
}
/* End of program */
Here is the output
graphics.h
Graphics Program for Stars



Program 2: A Program to plot a Bar Graph (Histogram)
/*Here a sample program to illustrate how to use BARS which are used for visual statistics */
#include <graphics.h>
int main() {
  int gd=DETECT,gm,maxx,maxy,x,y,button;
  initgraph(&gd,&gm,"");
  line(80,150,200,150);
  line(80,150,80,50);  

outtextxy(100,153,"<-X axis");
  outtextxy(60,50,"<-Y axis");
  bar(100,100,120,150);
  bar(130,120,150,150);
  getch();
  closegraph();
}

Here is the output
graphics.h
Graphics.h for Bar Chart
 T S Pradeep Kumar