summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/libgd-src/tests/gdimagesquaretocircle/gdimagesquaretocircle.c
blob: f8fba91d3845c88f81122dc7fb8675e01f7af077 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * Basic test for gdImageSquareToCircle()
 */
#include "gd.h"
#include "gdfx.h"
#include "gdtest.h"

int main()
{
	gdImagePtr im1, im2;
	int white;
	int black;

	im1 = gdImageCreateTrueColor(128, 128);
	white = gdImageColorAllocate(im1, 255, 255, 255);
	black = gdImageColorAllocate(im1, 0, 0, 0);
	gdImageFilledRectangle(im1, 0, 0, 127, 127, white);

	/* Draw a cross line in the middle of im1 */
	/* The horizonal line will become a circle in im2 */
	/* The vertical line will become a horizonal with half len in im2 */
	gdImageLine(im1, 0, 63, 127, 63, black);
	gdImageLine(im1, 63, 0, 63, 127, black);
	im2 = gdImageSquareToCircle(im1, 64);

	gdAssertImageEqualsToFile("gdimagesquaretocircle/gdimagesquaretocircle_exp.png", im2);

	gdImageDestroy(im1);
	gdImageDestroy(im2);

	return gdNumFailures();
}