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