1 #include <u.h> 2 #include <libc.h> 3 #include <stdio.h> 4 #include <libg.h> 5 #define SCX(A) ((((A) - e1->xmin)*e1->scalex + e1->left)+.5) 6 #define SCY(A) ((((A) - e1->ymin)*e1->scaley + e1->bottom)+.5) 7 #define SCR(A) ((A)*e1->scalex+.5) 8 #define unorm(y) (double)(e1->sidey - y) 9 #define BIGINT 0x3FFFFFFF /* a large, but valid, int */ 10 extern struct penvir { 11 double left, bottom; 12 double xmin, ymin; 13 double scalex, scaley; 14 double sidex, sidey; 15 double copyx, copyy; 16 double quantum; 17 double grade; 18 int pgap; 19 double pslant; 20 int pmode, foregr, backgr; 21 } *e0, *e1, *esave; 22 #define RADIAN 57.3 /* radians per degree */ 23 struct seg { 24 int x, y, X, Y; 25 char stat; 26 }; 27 /* 28 * Color values 29 */ 30 #define ZERO 3 31 #define RED 2 32 #define GREEN 2 33 #define YELLOW 1 34 #define BLUE 2 35 #define MAGENTA 1 36 #define CYAN 1 37 #define WHITE 0 38 /* 39 * display parameters 40 */ 41 int clipminx, clipminy, clipmaxx, clipmaxy; /* clipping rectangle */ 42 int mapminx, mapminy, mapmaxx, mapmaxy; /* centered square */ 43 /* 44 * Prototypes 45 */ 46 #include "../plot.h" 47 void m_clrwin(int, int, int, int, int); 48 void m_finish(void); 49 void m_initialize(char *); 50 int m_text(int, int, char *, char *, int, int, int); 51 void m_vector(int, int, int, int, int); 52 void m_swapbuf(void); 53 void m_dblbuf(void); 54 int bcolor(char *); 55 void sscpy(struct penvir *, struct penvir *); 56