Sector - 16 C, Dwarka, Delhi, India: Sirifort Institute of Management Studies
Sector - 16 C, Dwarka, Delhi, India: Sirifort Institute of Management Studies
Practical- CG Lab
BCA-351
By
Name: Mehak
Enrollment No: 02016702018
Mehak
(02016702018)
CG Practical File
CONTENTS PAGE
Mehak
(02016702018)
CG Practical File
Mehak
(02016702018)
CG Practical File
#include<conio.h>
main()
int gd = DETECT,gm;
setbkcolor(GREEN);
printf("\t\t\t\n\nLINE");
line(50,40,190,40);
printf("\t\t\n\n\n\nRECTANGLE");
rectangle(125,115,215,165);
printf("\t\t\t\n\n\n\n\n\n\nARC");
arc(120,200,180,0,30);
printf("\t\n\n\n\nCIRCLE");
circle(120,270,30);
printf("\t\n\n\n\nELLIPSE");
ellipse(120,350,0,360,30,20);
printf("\t\n\n\n\nSECTOR");
sector(120,450,0,150,50,65);
getch();
closegraph();
return 0;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void main()
initgraph(&gd,&gm,"c:\\tc\\bgi");
setbkcolor(RED);
getch();
closegraph();
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <dos.h>
#include <graphics.h>
#include <stdio.h>
int main()
setcolor(YELLOW);
setfillstyle(SOLID_FILL, YELLOW);
setcolor(BLACK);
setfillstyle(SOLID_FILL, BLACK);
getch();
closegraph();
return 0;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<conio.h>
#include"graphics.h"
#include"stdlib.h"
void main()
int gd=DETECT,gm,i=0,x,xx,y,yy,r;
initgraph(&gd,&gm,"c:\\TC\\bgi");
x=getmaxx();
y=getmaxy();
while(!kbhit())
i++;
// setfillstyle(random(i),random(3));
circle(xx=random(x),yy=random(y),random(300));
setfillstyle(random(i),random(300));
floodfill(xx,yy,getmaxcolor());
delay(200);
getch();
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <conio.h>
#include <graphics.h>
#include <stdio.h>
int main()
circle(180,100,60);
circle(300,300,70);
getch();
closegraph();
return 0;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <stdio.h>
#include <math.h>
#include <dos.h>
void main( )
float x,y,x1,y1,x2,y2,dx,dy,step;
int i,gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc\\bgi");
scanf("%f%f",&x1,&y1);
scanf("%f%f",&x2,&y2);
dx=abs(x2-x1);
dy=abs(y2-y1);
if(dx>=dy)
step=dx;
else
step=dy;
dx=dx/step;
dy=dy/step;
x=x1;
y=y1;
Mehak
(02016702018)
CG Practical File
i=1;
while(i<=step)
putpixel(x,y,5);
x=x+dx;
y=y+dy;
i=i+1;
delay(100);
closegraph();
getch();
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
dx=x1-x0;
dy=y1-y0;
x=x0;
y=y0;
p=2*dy-dx;
while(x<x1)
if(p>=0)
putpixel(x,y,7);
y=y+1;
p=p+2*dy-2*dx;
else
putpixel(x,y,7);
p=p+2*dy;}
x=x+1;
Mehak
(02016702018)
CG Practical File
int main()
getch();
return 0;
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
#include<conio.h>
{ int x = radius;
int y = 0;
int err = 0;
while (x >= y)
{ putpixel(x0 + x, y0 + y, 7);
putpixel(x0 + y, y0 + x, 7);
putpixel(x0 - y, y0 + x, 7);
putpixel(x0 - x, y0 + y, 7);
putpixel(x0 - x, y0 - y, 7);
putpixel(x0 - y, y0 - x, 7);
putpixel(x0 + y, y0 - x, 7);
putpixel(x0 + x, y0 - y, 7);
if (err <= 0)
y += 1;
err += 2*y + 1;
if (err > 0)
Mehak
(02016702018)
CG Practical File
x -= 1;
err -= 2*x + 1;
} } }
int main()
scanf("%d", &r);
drawcircle(x, y, r);
getch();
return 0;
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
int main()
return 0;
Mehak
(02016702018)
CG Practical File
getch();
closegraph();
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
void main()
int gd=DETECT,gm;
int x1,y1,x2,y2 ;
float b1,b2;
float t,deg;
initgraph(&gd,&gm,"c:\\tc\\bgi");
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
setcolor(6);
line(x1,y1,x2,y2);
getch();
//cleardevice();
scanf("%f",°);
t=(22*deg)/(180*7);
b1=abs((x2*cos(t))-(y2*sin(t)));
b2=abs((x2*sin(t))+(y2*cos(t)));
line(x1,y1,b1,b2);
getch();
closegraph();
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<conio.h>
#include<graphics.h>
#include<math.h>
void translate();
void scale();
void rotate();
void main()
int ch;
int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc\\bgi");
setcolor(6);
outtextxy (100,88,"Object.");
rectangle(100,150,150,100);
printf("---MENU---");
scanf("%d",&ch);
cleardevice();
switch(ch)
case 1: translate();
break;
Mehak
(02016702018)
CG Practical File
case 2: scale();
break;
case 3: rotate();
break;
break;
getch();
closegraph();
void translate()
int tx,ty;
setcolor(2);
outtextxy(240,10,"TRANSLATION");
outtextxy(238,20,"------------");
scanf("%d",&tx);
scanf("%d",&ty);
cleardevice();
rectangle(100,150,150,100);
printf("\nAfter Translation");
rectangle(100+tx,150+ty,150+tx,100+ty);
Mehak
(02016702018)
CG Practical File
void scale()
int sx,sy;
setcolor(2);
outtextxy(240,10,"SCALING");
outtextxy(238,20,"--------");
scanf("%d",&sx);
scanf("%d",&sy);
cleardevice();
rectangle(100,150,150,100);
printf("\nAfter Scaling");
rectangle(100*sx,150*sy,150*sx,100*sy);
void rotate()
{ float theta;
int x1,x2,x3,x4;
int y1,y2,y3,y4;
int ax1,ax2,ax3,ax4,ay1,ay2,ay3,ay4;
int refx,refy;
scanf("%f",&theta);
theta=theta*(3.14/180);
cleardevice();
setcolor(2);
Mehak
(02016702018)
CG Practical File
outtextxy(240,10,"ROTATE");
outtextxy(238,20,"-------");
refx=100;
refy=100;
x1=100;
y1=100;
x2=150;
y2=100;
x3=150;
y3=150;
x4=100;
y4=150;
ax1=refy+(x1-refx)*cos(theta)-(y1-refy)*sin(theta);
ay1=refy+(x1-refx)*sin(theta)+(y1-refy)*cos(theta);
ax2=refy+(x2-refx)*cos(theta)-(y2-refy)*sin(theta);
ay2=refy+(x2-refx)*sin(theta)+(y2-refy)*cos(theta);
ax3=refy+(x3-refx)*cos(theta)-(y3-refy)*sin(theta);
ay3=refy+(x3-refx)*sin(theta)+(y3-refy)*cos(theta);
ax4=refy+(x4-refx)*cos(theta)-(y4-refy)*sin(theta);
ay4=refy+(x4-refx)*sin(theta)+(y4-refy)*cos(theta);
rectangle(100,150,150,100);
line(ax1,ay1,ax2,ay2);
line(ax2,ay2,ax3,ay3);
line(ax3,ay3,ax4,ay4);
line(ax4,ay4,ax1,ay1);
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
#include<dos.h>
void rainbow()
// auto detection
int x, y, i;
initgraph(&gdriver,&gmode,"C:\\Tc\\BGI");
delay(100);
setcolor(i/10);
Mehak
(02016702018)
CG Practical File
// driver program
int main()
rainbow();
return 0; }
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <stdio.h>
void draw_moving_car(void) {
setcolor(RED);
Mehak
(02016702018)
CG Practical File
delay(100);
setcolor(BLACK);
Mehak
(02016702018)
CG Practical File
getch();
closegraph();
// Driver code
int main()
draw_moving_car();
return 0;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
#include<conio.h>
int main(){
int gd = DETECT,gm;
int x ,y;
x = getmaxx()/2;
y = getmaxy()/2;
setcolor(RED);
circle(x, y, 30);
setcolor(GREEN);
circle(x, y, 50);
setcolor(YELLOW);
circle(x, y, 70);
setcolor(BLUE);
circle(x, y, 90);
Mehak
(02016702018)
CG Practical File
getch();
closegraph();
return 0;
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<graphics.h>
#include<conio.h>
#include<dos.h>
#include<stdlib.h>
main()
int gd=DETECT,gm,midx,midy;
initgraph(&gd,&gm,"C:\\TC\\BGI");
midx=getmaxx()/2;
midy=getmaxy()/2;
setcolor(RED);
settextstyle(SCRIPT_FONT,HORIZ_DIR,3);
settextjustify(CENTER_TEXT,CENTER_TEXT);
getch();
cleardevice();
setcolor(WHITE);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
rectangle(midx-30,midy-80,midx+30,midy+80);
circle(midx,midy-50,22);
setfillstyle(SOLID_FILL,RED);
floodfill(midx,midy-50,WHITE);
Mehak
(02016702018)
CG Practical File
setcolor(BLUE);
outtextxy(midx,midy-50,"STOP");
delay(2000);
graphdefaults();
cleardevice();
setcolor(WHITE);
rectangle(midx-30,midy-80,midx+30,midy+80);
circle(midx,midy,20);
setfillstyle(SOLID_FILL,YELLOW);
floodfill(midx,midy,WHITE);
setcolor(BLUE);
outtextxy(midx-18,midy-3,"READY");
delay(2000);
cleardevice();
setcolor(WHITE);
rectangle(midx-30,midy-80,midx+30,midy+80);
circle(midx,midy+50,22);
setfillstyle(SOLID_FILL,GREEN);
floodfill(midx,midy+50,WHITE);
setcolor(BLUE);
outtextxy(midx-7,midy+48,"GO");
setcolor(RED);
settextstyle(SCRIPT_FONT,HORIZ_DIR,4);
getch();
closegraph();
Mehak
(02016702018)
CG Practical File
return 0;
OUTPUT:
Mehak
(02016702018)
CG Practical File
Mehak
(02016702018)
CG Practical File
#include<conio.h>
void main()
x=getmaxx()/3;
y=getmaxx()/3;
setbkcolor(WHITE);
setcolor(BLUE);
for(i=1;i<=8;i++)
setfillstyle(i,i);
delay(20);
circle(x, y, i*20);
floodfill(x-2+i*20,y,BLUE);
getch();
closegraph();
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <stdlib.h>
#include <graphics.h>
#include <math.h>
int i;
double t;
Mehak
(02016702018)
CG Practical File
getch();
closegraph();
return;
void main()
int i;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include<conio.h>
int main(){
int gd = DETECT,gm;
/* Draw Hut */
setcolor(WHITE);
rectangle(150,180,250,300);
rectangle(250,180,420,300);
rectangle(180,250,220,300);
line(200,100,150,180);
line(200,100,250,180);
line(200,100,370,100);
line(370,100,420,180);
/* Fill colours */
setfillstyle(SOLID_FILL, BROWN);
setfillstyle(SLASH_FILL, BLUE);
setfillstyle(HATCH_FILL, GREEN);
Mehak
(02016702018)
CG Practical File
getch();
closegraph();
return 0;
OUTPUT:
Mehak
(02016702018)
CG Practical File
#include <conio.h>
#include <graphics.h>
#include <dos.h>
#include <math.h>
void planetMotion(int xrad, int yrad, int midx, int midy, int x[60], int y[60]) {
int i, j = 0;
return;
int main() {
err = graphresult();
Mehak
(02016702018)
CG Practical File
if (err != grOk) {
/* error occurred */
grapherrormsg(err));
return 0;
midx = getmaxx() / 2;
midy = getmaxy() / 2;
planet[0] = 7;
planet[i] = planet[i - 1] + 1;
pos[i] = i * 6;
Mehak
(02016702018)
CG Practical File
while (!kbhit()) {
/* drawing 9 orbits */
setcolor(WHITE);
setcolor(YELLOW);
setfillstyle(SOLID_FILL, YELLOW);
setcolor(CYAN);
setfillstyle(SOLID_FILL, CYAN);
setcolor(GREEN);
setfillstyle(SOLID_FILL, GREEN);
setcolor(BLUE);
Mehak
(02016702018)
CG Practical File
setfillstyle(SOLID_FILL, BLUE);
setcolor(RED);
setfillstyle(SOLID_FILL, RED);
setcolor(BROWN);
setfillstyle(SOLID_FILL, BROWN);
setcolor(LIGHTGRAY);
setfillstyle(SOLID_FILL, LIGHTGRAY);
setcolor(BROWN);
setfillstyle(SOLID_FILL, BROWN);
setcolor(LIGHTBLUE);
setfillstyle(SOLID_FILL, LIGHTBLUE);
Mehak
(02016702018)
CG Practical File
setcolor(LIGHTRED);
setfillstyle(SOLID_FILL, LIGHTRED);
if (pos[i] <= 0) {
pos[i] = 59;
} else {
pos[i] = pos[i] - 1;
delay(100);
cleardevice();
closegraph();
return 0;
Mehak
(02016702018)
CG Practical File
OUTPUT:
Mehak
(02016702018)