home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume12 / postscript / part01 / source / graphics.h < prev    next >
Encoding:
C/C++ Source or Header  |  1987-10-27  |  1.0 KB  |  65 lines

  1. /*
  2.  * Copyright (C) Crispin Goswell 1987, All Rights Reserved.
  3.  */
  4.  
  5. #include "device.h"
  6. #include "point.h"
  7. #include "font.h"
  8.  
  9. #define PI 3.14159265358979
  10.  
  11. #define MAXDASH    11
  12.  
  13. #define MAXGSAVES    20
  14.  
  15. #define BBOX_LEFT    0
  16. #define BBOX_TOP    1
  17. #define BBOX_RIGHT    2
  18. #define BBOX_BOTTOM    3
  19.  
  20. struct show_context
  21.  {
  22.      char InShow;
  23.      char space;
  24.     Point Width;
  25.     HardPoint shim, space_shim;
  26.      Object CharName;
  27.      struct cache *ccache;
  28.      Matrix mat;
  29.  };
  30.  
  31. struct state
  32.  {
  33.      Matrix CTM;
  34.      Colour colour;
  35.      HardPoint cp; int cp_defined;
  36.      Path path;
  37.      Path clip;
  38.      Object font;
  39.      float line_width;
  40.      int line_cap;
  41.      int line_join;
  42.      struct
  43.       {
  44.           float frequency, rotation, *thresh;
  45.           int count;
  46.           Object spot_function;
  47.        } screen;
  48.      struct {
  49.          Object transfn;
  50.          float *tran;
  51.          int tcount;
  52.      } transfer;
  53.      int flatness;
  54.      float miter_limit;
  55.      float dash_offset, dash_array [MAXDASH];
  56.      int dash_length;
  57.     struct device *device;
  58.     struct show_context *show;
  59.     struct device *clipdevice;
  60.  };
  61.  
  62. extern struct state *gstate;
  63.  
  64. extern int stroke_method, fill_method;
  65.