1 /**
2  * Basic test for gdImageSquareToCircle()
3  */
4 #include "gd.h"
5 #include "gdfx.h"
6 #include "gdtest.h"
7 
main()8 int main()
9 {
10 	gdImagePtr im1, im2;
11 	int white;
12 	int black;
13 
14 	im1 = gdImageCreateTrueColor(128, 128);
15 	white = gdImageColorAllocate(im1, 255, 255, 255);
16 	black = gdImageColorAllocate(im1, 0, 0, 0);
17 	gdImageFilledRectangle(im1, 0, 0, 127, 127, white);
18 
19 	/* Draw a cross line in the middle of im1 */
20 	/* The horizonal line will become a circle in im2 */
21 	/* The vertical line will become a horizonal with half len in im2 */
22 	gdImageLine(im1, 0, 63, 127, 63, black);
23 	gdImageLine(im1, 63, 0, 63, 127, black);
24 	im2 = gdImageSquareToCircle(im1, 64);
25 
26 	gdAssertImageEqualsToFile("gdimagesquaretocircle/gdimagesquaretocircle_exp.png", im2);
27 
28 	gdImageDestroy(im1);
29 	gdImageDestroy(im2);
30 
31 	return gdNumFailures();
32 }
33