diff options
Diffstat (limited to 'gnu/games/chess/Xchess/XCircle.c')
-rw-r--r-- | gnu/games/chess/Xchess/XCircle.c | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/gnu/games/chess/Xchess/XCircle.c b/gnu/games/chess/Xchess/XCircle.c deleted file mode 100644 index 55148550e95c..000000000000 --- a/gnu/games/chess/Xchess/XCircle.c +++ /dev/null @@ -1,162 +0,0 @@ - -/* This file contains code for X-CHESS. - Copyright (C) 1986 Free Software Foundation, Inc. - -This file is part of X-CHESS. - -X-CHESS is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY. No author or distributor -accepts responsibility to anyone for the consequences of using it -or for whether it serves any particular purpose or works at all, -unless he says so in writing. Refer to the X-CHESS General Public -License for full details. - -Everyone is granted permission to copy, modify and redistribute -X-CHESS, but only under the conditions described in the -X-CHESS General Public License. A copy of this license is -supposed to have been given to you along with X-CHESS so you -can know your rights and responsibilities. It should be in a -file named COPYING. Among other things, the copyright notice -and this notice must be preserved on all copies. */ - - -/* RCS Info: $Revision: 1.2 $ on $Date: 1995/05/30 04:41:18 $ - * $Source: /home/ncvs/src/gnu/games/chess/Xchess/XCircle.c,v $ - * Copyright (c) 1986 Wayne A. Christopher, U. C. Berkeley CAD Group - * Permission is granted to do anything with this code except sell it - * or remove this message. - * - */ - -#include <stdio.h> -#include <X11/Xlib.h> -#include <X11/X10.h> -#include <math.h> - -#define PI 3.1415926535897932384 - -#define MAXVERTS 1000 - -void -XCircle(win, x, y, rad, start, end, width, height, pixel, func, planes) - Window win; - int x, y, rad; - double start, end; - int pixel; - int width, height; - int func, planes; -{ - Vertex verts[MAXVERTS]; - double xp, yp, ang; - int lx, ly, xpt, ypt, i; - double gradincr = 2 / (double) rad; - int bk = 0; - - while (end >= PI * 2) - end -= PI * 2; - while (start >= PI * 2) - start -= PI * 2; - while (end < 0) - end += PI * 2; - while (start < 0) - start += PI * 2; - if (end == start) { - if (end < gradincr) - end = end + PI * 2 - gradincr / 2; - else - end -= gradincr / 2; - } - for (ang = start, i = 0; i < MAXVERTS; ) { - - xp = x + rad * cos(ang); - yp = y + rad * sin(ang); - - xpt = xp; - ypt = yp; - - if (!i || (lx != xpt) || (ly != ypt)) { - verts[i].x = xpt; - verts[i].y = ypt; - verts[i].flags = 0; - i++; - } - lx = xpt; - ly = ypt; - if (bk) - break; - if (((ang < end) && (ang + gradincr > end)) || ((end < start) - && (ang + gradincr > 2 * PI) - && (ang + gradincr - 2 * PI > end))) { - ang = end; - bk = 1; - } else if (ang == end) { - break; - } else { - ang += gradincr; - } - if (ang >= PI * 2) - ang -= PI * 2; - } - - /* Now draw the thing.. */ - XDraw(win, verts, i, width, height, pixel, func, planes); - - return; -} - -#ifdef notdef /* VertexCurved is screwed up */ - -void -XCircle(win, x, y, rad, start, end, width, height, pixel, func, planes) - Window win; - int x, y, rad; - double start, end; - int pixel; - int width, height; - int func, planes; -{ - Vertex verts[7]; - int i, j, sv, ev; - int dp = 0; - - for (i = j = 0 ; i < 4; i++) { - verts[j].x = x + rad * cos((double) (PI * i / 2)); - verts[j].y = y + rad * sin((double) (PI * i / 2)); - verts[j].flags = VertexCurved; - if ((start >= PI * i / 2) && (start < PI * (i + 1) / 2) && - (start != end)) { - j++; - verts[j].x = x + rad * cos(start); - verts[j].y = y + rad * sin(start); - verts[j].flags = VertexCurved; - sv = j; - } else if ((end >= PI * i / 2) && (end < PI * (i + 1) / 2) - && (start != end)) { - j++; - verts[j].x = x + rad * cos(end); - verts[j].y = y + rad * sin(end); - verts[j].flags = VertexCurved; - ev = j; - } - j++; - } - verts[0].flags |= VertexStartClosed; - verts[j].x = verts[0].x; - verts[j].y = verts[0].y; - verts[j].flags = (verts[0].flags & ~VertexStartClosed) | - VertexEndClosed; - for (i = 0; i < 15; i++) { - if (dp) - verts[i % 7].flags |= VertexDontDraw; - if (i % 7 == ev) - dp = 1; - else if (i % 7 == sv) - dp = 0; - } - XDraw(win, verts, j + 1, width, height, pixel, func, planes); - - return; -} - -#endif notdef - |