0% found this document useful (0 votes)
3 views2 pages

Getimage Function

The document describes two functions, getimage and putimage, used for copying and displaying images on the screen in a graphical programming context. The getimage function captures a specified rectangular area of the screen and stores it in memory, while putimage restores that image to the screen using various operations defined by an operator parameter. An example code snippet demonstrates the use of these functions to create an animated smiling face on the screen.

Uploaded by

slsmgmccsit
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views2 pages

Getimage Function

The document describes two functions, getimage and putimage, used for copying and displaying images on the screen in a graphical programming context. The getimage function captures a specified rectangular area of the screen and stores it in memory, while putimage restores that image to the screen using various operations defined by an operator parameter. An example code snippet demonstrates the use of these functions to create an animated smiling face on the screen.

Uploaded by

slsmgmccsit
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

getimage function

getimage copies an image from the screen to memory. getimage function saves a bit image of
specified region into memory, region can be any rectangle.

void getimage(int left, int top, int right, int bottom, void *bitmap);

left, top, right, and bottom define the screen area to which the rectangle is copied. bitmap points
to the area in memory where the bit image is stored. The first two words of this area are used for
the width and height of the rectangle; the remainder holds the image itself.

putimage function

putimage puts the bit image previously saved with getimage back onto the screen, with the upper
left corner of the image placed at (left,top). bitmap points to the area in memory where the
source image is stored.
void putimage(int left, int top, void *bitmap, int op);
The op parameter to putimage specifies a combination operator that controls how the color for
each destination pixel onscreen is computed, based on the pixel already onscreen and the
corresponding source pixel in memory. The enumeration putimage_ops, as defined in graphics.h,
gives names to these operators.

Name Value Description


COPY_PUT 0 Copy
XOR_PUT 1 Exclusive or
OR_PUT 2 Inclusive or
AND_PUT 3 And
NOT_PUT 4 Copy the inverse of the source

In other words, COPY_PUT copies the source bitmap image onto the screen, XOR_PUT XORs
the source image with the image already onscreen, OR_PUT ORs the source image with that
onscreen, and so on.

#include<graphics.h>
#include<conio.h>
#include<stdlib.h>

main()
{
int gd = DETECT, gm, area, temp1, temp2, left = 25, top = 75;
void *p;

initgraph(&gd, &gm, "C:\\TC\\BGI");


setcolor(YELLOW);
circle(50, 100, 25);
setfillstyle(SOLID_FILL, YELLOW);
floodfill(50, 100, YELLOW);

setcolor(BLACK);
setfillstyle(SOLID_FILL, BLACK);
fillellipse(44, 85, 2, 6);
fillellipse(56, 85, 2, 6);

ellipse(50, 100, 205, 335, 20, 9);


ellipse(50, 100, 205, 335, 20, 10);
ellipse(50, 100, 205, 335, 20, 11);

area = imagesize(left, top, left + 50, top + 50);


p = malloc(area);

setcolor(WHITE);
settextstyle(SANS_SERIF_FONT, HORIZ_DIR, 2);
outtextxy(155, 451, "Smiling Face Animation");

setcolor(BLUE);
rectangle(0, 0, 639, 449);

while(!kbhit())
{
temp1 = 1 + random (588);
temp2 = 1 + random (380);

getimage(left, top, left + 50, top + 50, p);


putimage(left, top, p, XOR_PUT);
putimage(temp1 , temp2, p, XOR_PUT);
delay(100);
left = temp1;
top = temp2;
}

getch();
closegraph();
return 0;
}

You might also like