|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T p
Length: 7071 (0x1b9f)
Types: TextFile
Names: »plot3.h«
└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89
└─⟦148e64aa4⟧ »./plot2ps.tar.Z«
└─⟦ff7617d1d⟧
└─⟦this⟧ »plot3.h«
/* plot2ps, a utility for converting Unix plot files into postscript.
Copyright (C) 1989 Free Software Foundation, Inc.
Plot2ps 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 GNU General Public
License for full details.
Everyone is granted permission to copy, modify and redistribute plot2ps, but
only under the conditions described in the GNU General Public License. A copy
of this license is supposed to have been given to you along with plot2ps 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. */
/* plot2ps, a utility for converting Unix plot files into postscript.
Copyright (C) 1989 Free Software Foundation, Inc.
Plot2ps 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 GNU General Public
License for full details.
Everyone is granted permission to copy, modify and redistribute plot2ps, but
only under the conditions described in the GNU General Public License. A copy
of this license is supposed to have been given to you along with plot2ps 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. */
#ifndef _plot3_defines_
#define _plot3_defines_ 1
/* the standard library of plot functions */
/* we should add some prototypes here */
extern int arc ();
extern int box ();
extern int circle ();
extern int closepl ();
extern int cont ();
extern int erase ();
extern int label ();
extern int line ();
extern int linemod ();
extern int move ();
extern int openpl ();
extern int point ();
extern int space ();
/* Extensions to the library for postscript */
extern int alabel ();
extern int color ();
extern int fill ();
extern int fontname ();
extern int fontsize ();
extern int rotate ();
/* Internal routines: */
extern int draw_line ();
/* Global variables which affect the output: */
extern double x_input_min; /* minimum input x coordinate */
extern double y_input_min; /* minimum input y coordinate */
extern double x_output_min; /* minimum output x coordinate */
extern double y_output_min; /* minimum output y coordinate */
extern double x_output_max; /* maximum output x coordinate */
extern double y_output_max; /* maximum output y coordinate */
extern double scaleup; /* input to output scaleing for both x and y */
extern int last_x, last_y; /* location of the last coordinates used */
/* The scaling and rotation part of a postscript transformation matrix */
extern double text_transformation_matrix[4];
/* Note: define MAX_NO_OF_POINTS according to the number of
points the postscript device can handle. Experimentation has
shown 150 to be reasonable. */
#define MAX_NO_OF_POINTS 150
extern int line_x[MAX_NO_OF_POINTS];
extern int line_y[MAX_NO_OF_POINTS];
/* We accumulate coordinates untill we either have enought points
or the line is broken. This counter tells us whether we have
accumulated points and how many there are. */
extern int PointsInLine;
/* This bit vector represents the line style (eg. dashed) for
idraw. We intitialize it to all ones which represents a solid
line. */
extern long line_type_bit_vector;
/* This is a string that should conatain a postscript vector
argument for the postscript setdash command. This is allocted
in the OPENPL function. */
extern char *line_type_setdash;
/* The current length of the above buffer */
extern int line_type_setdash_length;
/* LINE_TYPE_SETDASH_BITS is one greater than the length in number of bits in
the dash pattern. It can be computed as the sum of the integers contained
in LINE_TYPE_SETDASH plus one. If the string is empty, then the value should
be zero. */
extern int line_type_setdash_bits;
/* Idraw puts the upper left corner of the tex at the current */
/* TEXT_ROTATION is the angle in degress counterclockwise from the
horizontal for rotation of labels. */
extern int text_rotation;
/* FONT_SIZE is the font size in printer's points (-f option). */
extern double font_size;
/* FONT_SCALING takes into account the font scaling by idraw. Version 2.4
of idraw scales the whole drawing down by a factor of 0.8, we must
scale the fonts back up by 1.25 so that a 14 point fonts appears as
a 14 point font on the hardcopy. Version 2.5 of idraw does not seem
to need this adjustment, but it is left here for compatibility. */
extern double font_scaling;
/* USER_HAS_PROLOGUE is a flag. If it is non-zero then the OPENPL routine
should output the user specified prologue contained in the file specified
in the string USERS_PROLOGUE */
extern int user_has_prologue;
/* USERS_PROLOGUE is a string containing the file name for any user specified
postscript prologue. This file is a substitute for the prologue contained
in the file header.c. */
char *users_prologue;
struct font_info_struct {
char *name; /* the name the user specifies the font by */
char *X_name; /* the X windows font name */
char *ps_name; /* the postscript font name */
int width[256]; /* the font width information */
};
#define NO_OF_FONTS 13
extern struct font_info_struct font_info[NO_OF_FONTS];
/* CURRENT_FONT is a string containing the name of the current font. Since
postscript symbols must generally be less that 256 characters long, we can
reasonably assume that the name will fit in a string this long. */
#define current_font_length 256
extern char current_font[];
/* DEFAULT_FONT is a string containing the name of the default font.
This string should be a valid match for one of the font names. */
extern char default_font[];
/* FIND_FONT takes a string argument S containing a font name and returns the
index of the font structure FONT_INFO corresponding to that name. If no match
is found for the font name, an error message is printed and the index of the
default font is returned. */
extern int find_font();
/* FGCOLOR_RED, FGCOLOR_GREEN and FGCOLOR_BLUE indicate the foreground
color of all plot. For each the range of intensity is from 0 to 1 so
that a value of (0,0,0) represents black and a value of (1,1,1)
indicates white. */
extern double fgcolor_red, fgcolor_green, fgcolor_blue;
/* FILL_LEVEL is the intensity of the filler for closed paths. Intensity
ranges from 0 to 1. A value of 0 represents black and a value of 1 indicates
white. */
extern double fill_level;
/* some machines do not define M_PI. */
#ifndef M_PI
#define M_PI 3.14159265358979323846264
#endif
#endif /* _plot3_defines_ */