Header file:
graphics.h
Synopsis:
void getaspectratio(int *xaspect, int *yaspect);
xaspect - pointer to x's aspect factor
yaspect - pointer to y's aspect factor
Description:
getaspectratio() gets the aspect ratio of current graphic mode.
getaspectratio function in c graphics
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void) {
/* request auto detection */
int graphicDriver = DETECT, graphicMode;
int err, midx, midy, x, y;
char buf[256];
/* initialize graphics and local variables */
initgraph(&graphicDriver, &graphicMode,
"C:/TURBOC3/BGI");
/* read result of initialization */
err = graphresult();
if (err != grOk) {
/* an error occurred */
printf("Graphic Error: %s\n",
grapherrormsg(err));
return 0;
}
setcolor(getmaxcolor());
midx = getmaxx() / 2;
midy = getmaxy() / 2;
/* get current aspect ratio settings */
getaspectratio(&x, &y);
sprintf(buf, "Aspect ratio=>%d : %d", x, y);
outtextxy(0, 0, buf);
/* draw normal circle */
arc(midx, midy, 0, 360, 110);
getch();
/* clear the screen */
cleardevice();
/* adjust the aspect for a wide circle */
setaspectratio(x / 2, y);
sprintf(buf, "Aspect ratio=>%d : %d", x / 2, y);
outtextxy(0, 0, buf);
arc(midx, midy, 0, 360, 110);
getch();
/* adjust the aspect for a narrow circle */
cleardevice();
setaspectratio(x, y/2);
sprintf(buf, "Aspect ratio=>%d : %d", x, y / 2);
outtextxy(0, 0, buf);
arc(midx, midy, 0, 360, 110);
/* clean up */
getch();
closegraph();
return 0;
}
Output: (getaspectratio built-in function in c graphics.h)
No comments:
Post a Comment