Daniel Llorens 7e591cad0b Remove generated files 10 tahun lalu
..
info 7e591cad0b Remove generated files 10 tahun lalu
AUTHORS 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
COPYING 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
CUSTOMIZE 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
ChangeLog 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
INSTALL 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
Makefile.am 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
NEWS 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
README 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
README-X 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
TODO 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
VERSION 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
config.guess 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
config.sub 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
drawing.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
extern.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
install-sh 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
ltconfig 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
ltmain.sh 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_alloc.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_api.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_api.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_arc.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_arc.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_canvas.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_fllarc.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_fllarc.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_fllrct.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_fply.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_fplycon.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_gc.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_gc.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_line.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_ply.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_ply.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_plycon.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_plygen.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_plypnt.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_plyutil.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_scanfill.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_spans.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_spans.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_version.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_widelin.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_widelin.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_zerarc.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_zerarc.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mi_zerolin.c 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
missing 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
mkinstalldirs 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
sys-defines.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu
xmi.h 798e4231dd Initial import from plotutils-2.6 13 tahun lalu

README

This directory contains libxmi, a machine-independent vector graphics
rasterization library, and the sample program ./drawing.c. The source code
for libxmi is distributed under the GNU GPL (see the file ./COPYING). The
Web page for the package is: http://www.gnu.org/software/libxmi/libxmi.html .

The file ./INSTALL explains how to install libxmi, and the file ./CUSTOMIZE
explains how to customize it. Please read this file first, though.

libxmi is based on the vector graphics code in the sample X server that is
a part of the X Window System distribution. This code has been converted
to ANSI C, extensively rearranged and commented, and somewhat extended.
(In particular, by adding support for multicolored dashing.) The original
X11 vector graphics code was written in the mid-to-late 1980's by Brian
Kelleher, Joel McCormack, Todd Newman, Keith Packard, Robert Scheifler and
Ken Whaley, who worked for Digital Equipment Corp., MIT, and/or the X
Consortium. See ./README-X for an X Consortium permission notice. GNU
extensions by Robert S. Maier .

The public header file for libxmi is ./xmi.h. It declares the eight
functions in libxmi's core API, e.g. miDrawPoints(), miDrawLines(),
miFillPolygon(), miDrawRectangles(), miFillRectangles(), miDrawArcs(), and
miFillArcs(). These functions have the same semantics as the corresponding
X11 functions (XDrawPoints, XDrawLines, etc.). The libxmi API contains a
reentrant function miDrawArcs_r() too, since miDrawArcs() is not reentrant.
Each function in the core API adds painted points to an opaque miPaintedSet
object, a pointer to which is passed as its first argument.

The core API includes functions for creating, manipulating, and destroying
miPaintSet objects. It also includes functions for creating, manipulating,
and destroying miCanvas objects. The function miCopyPaintedSetToCanvas()
moves the points in a miPaintedSet to the next stage of the graphics
pipeline: it merges them onto a miCanvas. There is support in this second
stage for sophisticated pixel-merging algorithms.

In general, it should be easy to install libxmi as a standalone library, or
incorporate libxmi bodily into another package's source tree. libxmi is
written in `strict C', so it may be compiled with either an ANSI C compiler
or a C++ compiler. See ./INSTALL.