drawing using turbo cpp برمجة الرسم بلغة سي باستخدام ++turbo c
TRANSCRIPT
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
1/37
1 :10/12/2006
TURBO C++
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
2/37
2
4
7/#include
11/
19/
22/24/-
28/
32/
34/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
3/37
3
:
) .(-
: .
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
4/37
4
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
5/37
5 TURBO C++
OptionsLinkerLibraries
Graphics library ok
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
6/37
6
:
470 )640)pixel .1)pixel( =480640
2. )pixel( .((picture cell
3. .
4. )X( . 5. )Y( .
: VGA
.
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
7/37
7
/
#include
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
8/37
8
:
.:
c:\\tc\\bgi++ TURBO C
.
#include#include#includevoid main(){int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "c:\\tc\\bgi");
...
) (...
getch();
}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
9/37
9.83graphics.h ( )
35
arc imagesizebar initgraphbar3d installuserdrivercircle installuserfont
cleardevice lineclearviewport linerelclosegraph linetodetectgraph movereldrawpoly movetoellipse outtextfillellipse outtextxyfillpoly pieslicefloodfill putimage
getarccoords putpixelgetaspectratio rectanglegetbkcolor registerbgidrivergetcolor registerfarbgidrivergetdefaultpalette registerbgifontgetdrivername registerfarbgifontgetfillpattern restorecrtmodegetfillsettings sectorgetgraphmode setactivepagegetimage setallpalettegetlinesettings setaspectratiogetmaxcolor setbkcolorgetmaxmode setcolorgetmaxx setfillpatterngetmaxy setfillstylegetmodename setgraphbufsizegetmoderange setgraphmode
getpalette setlinestylegetpalettesize setpalettegetpixel setrgbpalettegettextsettings settextjustifygetviewsettings settextstylegetx setusercharsizegety setviewportgraphdefaults setvisualpagegrapherrormsg setwritemode _graphfreemem textheight _graphgetmem textwidthgraphresult
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
10/37
10
/closegraph
.
Closegraph();
initgraph(&gdriver, &gmode, "c:\\tc\\bgi"); .
/cleardevice
:
cleardevice ();
clrscr(); :) clrscr(); .(
getmaxx/
640.: )640( m):.(
m=getmaxx();
/getmaxy
470.: )470( m):.(
m=getmaxy();
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
11/37
11
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
12/37
12 /line
4: (x1,y1).((x2,y2
: .Line(x1,y1,x2,y2);
#include#include#includevoid main(){int x1=50 ,y1=20;int x2=200,y2=100;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");line(x1,y1,x2,y2);getch();
}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
13/37
13/circle
3 : (x,y) r.
: x,y,z .
circle(x,y,r);
#include#include#includevoid main(){int x=150,y=80,r=10;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");circle(x,y,r);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
14/37
14 /putpixel
3 : (x1,y1) h
015.
) ).
: ) ( .
Putpixel(x,y,h);
#include#include#includevoid main(){Int x=45,y=60,h=15;int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "c:\\tc\\bgi");putpixel(x,y,h);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
15/37
15 /arc
(midx, midy)=
Stangle= (1) Endangle= (2)
Radius= arc(midx, midy, stangle, endangle, radius);
#include#include#include
void main(){int midx=320, midy=240, stangle = 45;int endangle = 135, radius = 100;
int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");arc(midx, midy, stangle, endangle, radius);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
16/37
16 /ellipse
(midx, midy)=
Stangle= (1) Endangle= (2)
Xradius= x Yradius= y
Ellipse(midx, midy, stangle, endangle, xradius, yradius);
#include#include
#includevoid main(){
int midx=320, midy=240, stangle = 45;int endangle = 135, radius = 100;
int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");ellipse (midx, midy, stangle, endangle,xradius,yradius);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
17/37
17 /rectangle
=(A,B)
=(W,Z)rectangle(A,B,W,Z);
#include#include#includevoid main(){
Int a=10,b=20,w=150,z=200;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");rectangle(a,b,w,z);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
18/37
18 /drawpoly
p[n]n .
Drawpoly(n,p);
#include#include#includevoid main(){
Int p[3];int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");P[0]=10;p[1]=15;P[2]=100;p[3]=200;P[4]=200;p[5]=250;fillpoly(3,p);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
19/37
19
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
20/37
20 /setlinestyle
:a 14 .b 012 .c 1 3.
Setlinestyle(a,b,c);
: ) () ( .
/Setcolor
setcolor :
;)15(setcolor
012345
67891011
12131415
: ) () ( .
/setbkcolor
setbkcolor :
;)4(setbkcolor
: ) () ( .
/getbkcolor
.: )0( m):.(
m=getbkcolor();
/getcolor
.: )5( m):.(
m=getcolor();
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
21/37
21 /floodfill
(G,F)
.
floodfill(G,F,getmaxcolor());
: ) () (. :
.... .
/getmaxcolor
: ).m):)15(
m=getmaxcolor();
. : rectangle(A,B,W,Z);
=(A,B) =(W,Z)
floodfill(G,F,getmaxcolor()); =(G,F)
#include#include#includevoid main(){
Int a=100,b=200,w=100,z=300,G=150,F=200;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");
rectangle(a,b,w,z);setcolor(14);floodfill(G,F,getmaxcolor());getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
22/37
22
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
23/37
23
.
/moveto
(x,y)
moveto(x,y);
/moveto
) dx dy( .
moverel(dx,dy);
/getx
.: =100 )100( m):.(
m=getx();
/gety .
: =100 )100( m):.(
m=gety();
/lineto
(x,y) .
lineto(x,y);
/linerel
) dx dy(
.
linerel(dx,dy);
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
24/37
24
/
THIS IS MY TESTTHIS IS MY TESTTHIS IS MY TESTTHIS IS MY TEST
Enter start
WritWritWritWriteeee yoyoyoyour nameur nameur nameur name
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
25/37
25 /outtext
: .
(x,y).
: (0,0) .: .
;")++c("uttextxyo
#include
#include#includevoid main(){int x=45,y=60,h=15;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");outtextxy("c++");getch();
}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
26/37
26 /outtextxy
2 : (x,y).
: .: .
;")++c",y,x(uttextxyo
#include#include
#includevoid main(){int x=45,y=60,h=15;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");outtextxy(x,y,"c++");getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
27/37
27 /settextstyle
3 :
A ) 111(B )0 1 (
" : "C ) 110(
settextstyle(A,B,C);
:) ().(
/sprintf
outtext
sprintf(msg,"%d %d",a,b);
a .b .
msg char#include#include
#includevoid main(){char msg[10];int a=12,b=10;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");sprintf(msg,"%d %d",a,b);
outtextxy(x,y,msg);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
28/37
28
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
29/37
29 /fillellipse
.
(midx, midy)= Xradius= x Yradius= y
: .
Fillellipse(midx, midy, xradius, yradius);
#include
#include#includevoid main(){
int midx=320, midy=240, stangle = 45;int endangle = 135, radius = 100;
int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");fillellipse (midx, midy, xradius,yradius);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
30/37
30 /bar
(=(A,B =(W,Z)
bar(A,B,W,Z);
#include#include#includevoid main(){
Int a=10,b=20,w=150,z=200;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");bar(a,b,w,z);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
31/37
31 /fillpoly
.
p[n]n .Fillpoly(n,p);
#include#include#includevoid main()
{Int p[3];int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");P[0]=10;p[1]=15;P[2]=100;p[3]=200;P[4]=200;p[5]=250;fillpoly(3,p);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
32/37
32
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
33/37
33 /setfillstyle
.
: K 012 C 015
setfillstyle(k,c);
: ) () ( .
#include#include#includevoid main(){
Int a=10,b=20,w=150,z=200;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");setfillstyle(1,15);
bar(a,b,w,z);getch();}
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
34/37
34
/
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
35/37
35
(x1,y)(x2,y).1. (x1,y) h2. ;)001(delay
10ms) =1000ms( .3. )0(4. x=x+1;5. .
#include#include#include#include
;)001(delay
void main(){int x=45,y=60,h=3;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");for(int i=0;i
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
36/37
36
(x1,y)(x2,y).1. (x1,y) h2. ;)001(delay
10ms) =1000ms( .3. /cleardevice ();4. x=x+15. .
#include#include#include#include
;)001(delay
void main(){int x=45,y=60,h=3;int gdriver = DETECT, gmode, errorcode;initgraph(&gdriver, &gmode, "c:\\tc\\bgi");for(int i=0;i
-
8/14/2019 Drawing Using Turbo Cpp ++Turbo C
37/37
37 ) (
x=x+1;
#include #include #include #include #include void draw_arrow(int x, int y);int main(void){
int gdriver = DETECT, gmode, errorcodevoid *arrowint x, y, E=10, i=0unsigned int sizeinitgraph(&gdriver, &gmode, "c:\\tc\\bgi");x = 45y = 60draw_arrow(x, y);size = imagesize(x-E, y- E, x+ E, y+ E);arrow = malloc(size);getimage(x-E, y- E, x+ E, y+ E, arrow);while (!kbhit())
{putimage(x-E, y- E, arrow, XOR_PUT);x += 1if (i>100) x = 45putimage(x-E, y- E, arrow, XOR_PUT);delay(100);i+=1;}free(arrow);closegraph();return 0}void draw_arrow(int x, int y){