123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- struct line_type
- {
- enum { invisible, solid, dotted, dashed } type;
- double dash_width;
- double thickness;
-
- line_type();
- };
- class output
- {
- public:
-
- output();
- virtual ~output();
-
- virtual void start_picture (double sc, const position &ll, const position &ur) = 0;
- virtual void finish_picture (void) = 0;
- virtual void arc (const position &start, const position ¢,
- const position &end, const line_type <) = 0;
- virtual void circle (const position ¢, double rad,
- const line_type <, double fill) = 0;
- virtual void ellipse (const position ¢, const distance &dim,
- const line_type <, double fill) = 0;
- virtual void line (const position &start, const position *v, int n,
- const line_type <) = 0;
- virtual void polygon (const position *v, int n,
- const line_type <, double fill) = 0;
- virtual void spline (const position &start, const position *v, int n,
- const line_type <) = 0;
- virtual void text (const position ¢er, text_piece *v, int n,
- double angle) = 0;
- virtual void rounded_box (const position ¢, const distance &dim,
- double rad, const line_type <, double fill) = 0;
-
- virtual void command (const char *s, const char *filename, int lineno);
- virtual void set_location (const char *filename, int lineno);
-
- virtual int supports_filled_polygons (void);
-
- virtual void begin_block (const position &ll, const position &ur);
- virtual void end_block (void);
-
- void set_desired_width_height (double wid, double ht);
- void set_args (const char *);
- protected:
- char *args;
- double desired_height;
- double desired_width;
- double compute_scale (double sc, const position &ll, const position &ur);
- };
- extern output *out;
- #define TROFF_SUPPORT 0
- #define TEX_SUPPORT 0
- #define PLOT_SUPPORT 1
- #ifdef TROFF_SUPPORT
- output *make_troff_output (void);
- #endif
- #ifdef TEX_SUPPORT
- output *make_tex_output (void);
- output *make_tpic_output (void);
- #endif
- #ifdef PLOT_SUPPORT
- output *make_plot_output (void);
- extern char *output_format;
- extern char *font_name;
- extern char *pen_color_name;
- extern double font_size;
- extern double line_width;
- extern int precision_dashing;
- #endif
|