Skip to main content

Explanation of Graphics in C programming

   The header file graphics.h should be included to use graphics related built in functions.
Again, the variable gDriver is an integer variable that specifies graphics driver to be used. Device drivers are small programs which talk directly to the hardware. Graphics drivers are a subset of device drivers and are applicable only in the graphics mode. The initialization of this variable to DETECT is to set another variable gMode to the highest resolution available for the detected driver.  The value of this variable gDriver may be another than DETECT (e.g. 1 for CGA, 9 for VGA.). The variable gMode is an integer that specifies initial graphics mode.
      The built in function initgraph() is for graphics initialization. The syntax for this is as
 initgraph(&graphics_driver, &graphics_mode, path_to_driver);
  path_to_driver specifies the directory path where initgraph() looks for graphics drivers ( .BGI files). This function initializes the graphics system by loading a graphics driver from disk then putting the system into graphics mode. Iinitgraph() also resets all graphics settings like color, current positions etc to their default values. Normally, initgraph()
loads a graphic driver by allocating memory for driver than loading the appropriate .BGI file from disk.
     The another built in function setcolor(GREEN) sets the color GREEN as drawing color. The function closegraph() shutdown the graphics system. It de-allocates all memory allocated by the graphics system. It then restores the screen to the mode it was in before initgraph() function called. The syntax for other function is given as below
              i.      line():
        line(x1,y1,x2,y2);
It draws line from point (x1,y1) to another point (x2,y2).
            ii.      circle();
       circle(x,y,radius);
 It draws a circle at center co-ordinate (x,y) and having radius radius.
          iii.      ellipse();
ellipse(x, y, staring_angle, end_angle, xradius, yradius) ; 
It draws a ellipse having center at co-ordinate (x,y) and radii xradius & yradius. The drawing angles are starting_angle and end_angle. Generally, stating_angle is 0 and end_ange is 360 for a complete ellipse.
          iv.      arc();
arc(x, y, starting_angle, end_angle, radius);
It draws arc having center point at co-ordinate (x,y) and certain radius.
            v.      rectangle();
rectangle(x1,y1,x2,y2);
  It draws a rectangle having diagonal points at co-ordinates (x1,y1) and (x2,y2).
          vi.      drawpoly();
drawpoly(number_of_poly_points, array_of_co-ordinates_of_corners);
It draws required polygon. The number_of_poly_points denotes number of points (i.e. for pentagon 5 , for hexagon 6 and so on). Again, array_of_co-ordinates_of_corners denotes an array in which the corner point’s co-ordinates are stored.
  

      The other various useful built in functions related to graphic are
                            i.      getmaxx()
                          ii.      getmaxy()
                        iii.      outtextxy()
                        iv.      putpixel()
                          v.      restorecrtmode()
                        vi.      moveto()
                      vii.      lineto()
                    viii.      moverel()

                        ix.      linerel()

Comments

Popular posts from this blog

Object Oriented Programming

Object Oriented Programming Programming paradigm that represents the concept of "objects" that have data fields (attributes that describe the object) and associated procedures known as methods Programming methodology based on objects, instead of just functions and procedures Focuses on data rather than process As individual objects can be modified without affecting other aspects of the program, it is easier for programmers to structure and organize software programs Easier to update and change programs written in object-oriented languages Simula was the first object oriented programming language Eg: C++, Java, etc. Features of OOPS Objects Referred as instance of class Basic run-time entities in an object-oriented system a person, a place, a bank account, a table of data, etc can be an object They occupy space in memory that keeps its state  Each object contains data and code to manipulate the data  Classes Blue print or prototype  which defi

How structure elements are stored?

  The elements of a structure are always stored in contiguous memory locations. This can be illustrated as void main() {     struct student      {      int roll;      float marks;      char remarks;   };   struct student st={200,60.5,'P'};   printf("\nAddress of roll=%u",&st.roll);   printf("\nAddress of marks=%u",&st.marks);   printf("\nAddress of remarks=%u",&st.remarks);   getch(); } Output: Address of roll=65518 Address of marks=65520 Address of remarks=65524                  st.roll               st.marks                          st.remarks 200 60.5 ‘P’               65518             65520                               65524           

How containership is different than inheritance ?

               Inheritance is the mechanism of deriving properties of one class into another. While containership is mechanism in which one class contain objects of other classes as its member.                     class alpha{_ _ _ _ _ };                     class beta{_ _ _ _ _ };                      class gamma                      {                         alpha a;                         beta b;                       _ _ _ _ _ };            All objects of gamma class will contain the objects a and b, this kind of relationship is called containership or nesting.