
/*
 *   THIS FILE IS UNDER RCS - DO NOT MODIFY UNLESS YOU HAVE
 *   CHECKED IT OUT USING THE COMMAND CHECKOUT.
 *
 *    $Id: mathmake.c 10 2000-02-14 18:56:41Z lucky $
 *
 *    Revision history:
 *     $Log$
 *     Revision 1.1  2000/02/14 18:47:58  lucky
 *     Initial revision
 *
 *
 */

#include <stdio.h>
#include <math.h>

#define scale 1024

int basis[91];
int cost[360];

main(void) {
	int i;
	printf("#define costScale %d\n", scale);
	printf("int cost[] = {\n  ");
	for (i=0; (i <= 90); i++) {
		basis[i] = cos((double)i * .0174532925) * scale;
	}
	for (i=0; (i < 90); i++) {
		printf("%d,\n  ", cost[i] = basis[i]);
	}
	for (i=90; (i < 180); i++) {
		printf("%d,\n  ", cost[i] = -basis[180-i]);
	}
	for (i=180; (i < 270); i++) {
		printf("%d,\n  ", cost[i] = -basis[i-180]);
	}
	for (i=270; (i < 359); i++) {
		printf("%d,\n  ", cost[i] = basis[360-i]);
	}
	printf("%d\n", cost[359] = basis[1]);
	printf("};\n");
	printf("#define sintScale %d\n", scale);
	printf("int sint[] = {\n  ");
	for (i=0; (i<360); i++) {
		int val;
		val = cost[(i + 270) % 360];
		if (i != 359) {
			printf("%d,\n  ", val);
		} else {
			printf("%d\n", val);
		}
	}
	printf("};\n");
}
		
