summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/support/texdraw/texdraw_3.html
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/support/texdraw/texdraw_3.html')
-rw-r--r--Master/texmf-dist/doc/support/texdraw/texdraw_3.html369
1 files changed, 0 insertions, 369 deletions
diff --git a/Master/texmf-dist/doc/support/texdraw/texdraw_3.html b/Master/texmf-dist/doc/support/texdraw/texdraw_3.html
deleted file mode 100644
index 52193c720b2..00000000000
--- a/Master/texmf-dist/doc/support/texdraw/texdraw_3.html
+++ /dev/null
@@ -1,369 +0,0 @@
-<HTML>
-<HEAD>
-<!-- Created by texi2html 1.56k from texdraw.texi on 10 March 2004 -->
-
-<TITLE>TeXdraw - 3. Drawing Segments and Scaling</TITLE>
-</HEAD>
-<BODY>
-Go to the <A HREF="texdraw_1.html">first</A>, <A HREF="texdraw_2.html">previous</A>, <A HREF="texdraw_4.html">next</A>, <A HREF="texdraw_11.html">last</A> section, <A HREF="texdraw_toc.html">table of contents</A>.
-<P><HR><P>
-
-
-<H1><A NAME="SEC13" HREF="texdraw_toc.html#TOC13">3. Drawing Segments and Scaling</A></H1>
-
-<P>
-TeXdraw provides individually scaled segments which can be used to
-create relocatable drawing modules.
-
-
-
-<UL>
-<LI><A HREF="texdraw_3.html#SEC14">Drawing segments</A>
-<LI><A HREF="texdraw_3.html#SEC15">Drawing paths</A>
-<LI><A HREF="texdraw_3.html#SEC16">Saving positions</A>
-<LI><A HREF="texdraw_3.html#SEC17">Scaling coordinates</A>
-<LI><A HREF="texdraw_3.html#SEC18">Drawing size</A>
-<LI><A HREF="texdraw_3.html#SEC19">Initial current position</A>
-</UL>
-
-
-
-<H2><A NAME="SEC14" HREF="texdraw_toc.html#TOC14">3.1 Drawing segments</A></H2>
-<P>
-<A NAME="IDX72"></A>
-<A NAME="IDX73"></A>
-
-
-<P>
-A TeXdraw drawing segment allows for local modifications of
-parameters and relative positioning. A TeXdraw segment is delimited
-by a <CODE>\bsegment</CODE> command and an <CODE>\esegment</CODE> command. Inside
-the segment, the initial current position is <CODE>(0 0)</CODE>. Any changes
-to parameters such as the gray level and the line width, remain local to
-the segment. Segments are implemented in TeX using a
-<CODE>\begingroup</CODE> and <CODE>\endgroup</CODE>. Segments can be nested.
-
-
-<DL COMPACT>
-
-<DT><CODE>\bsegment</CODE>
-<DD>
-<A NAME="IDX74"></A>
-
-Start a drawing segment. The coordinate system is shifted such that the
-current position corresponds to the coordinate <CODE>(0 0)</CODE>. Changes to
-scaling, position and line parameters stay local to the drawing segment.
-<A NAME="IDX75"></A>
-<DT><CODE>\esegment</CODE>
-<DD>
-End a drawing segment. The current position in effect before the
-corresponding <CODE>\bsegment</CODE> command is restored. The scaling and
-line parameter values revert to those in effect before the corresponding
-<CODE>\bsegment</CODE> command was invoked.
-</DL>
-
-
-
-<H2><A NAME="SEC15" HREF="texdraw_toc.html#TOC15">3.2 Drawing paths</A></H2>
-<P>
-<A NAME="IDX76"></A>
-<A NAME="IDX77"></A>
-<A NAME="IDX78"></A>
-Certain subtle interactions occur between drawing segments and fill
-operations. In PostScript, lines are drawn by first defining a path,
-then later stroking the path to draw the line. In TeXdraw, this
-stroking occurs when the line is terminated, say by a <CODE>\move</CODE>
-command. PostScript paths are interrupted by, but continue after a
-drawing segment. This means that a path started before a segment may
-not be stroked (drawn) until after the segment ends. Consider the
-following example.
-
-<PRE>
-\move (0 0)
-\lvec (1 1)
-\bsegment
- \move (-0.25 -0.25)
- \fcir f:0.8 r:0.5
-\esegment
-\move (0 0)
-</PRE>
-
-<P>
-A PostScript path is started at <CODE>(0 0)</CODE> and continues with a line
-to <CODE>(1 1)</CODE>. This path is interrupted by the segment. The filled
-circle is drawn next. After the segment, the path continues and is not
-stroked until the <CODE>\move (0 0)</CODE> command after the end of the
-segment. This means that the line appears on top of the filled region.
-
-
-<P>
-If the fill operation is to cover the line, the path must be stroked
-before the fill operation. From TeXdraw, the move commands
-<CODE>\move</CODE> and <CODE>\rmove</CODE>, and the end TeXdraw command
-<CODE>\etexdraw</CODE> terminate a path and cause it to be stroked. Within a
-segment, the end segment command <CODE>\esegment</CODE> also terminates and
-strokes a path. In the example above, the line can be stroked by
-inserting a move command (such as a <CODE>\rmove (0 0)</CODE> which does not
-affect the position), before the start of the segment.
-
-
-
-
-<H2><A NAME="SEC16" HREF="texdraw_toc.html#TOC16">3.3 Saving positions</A></H2>
-<P>
-<A NAME="IDX79"></A>
-<A NAME="IDX80"></A>
-<A NAME="IDX81"></A>
-<A NAME="IDX82"></A>
-
-
-<P>
-The <CODE>\savecurrpos</CODE> command saves the current position. The saved
-position is an absolute position, not one relative to a segment. The
-position saving mechanism is global; the position can be saved within a
-nested segment and then used outside of the segment. The <VAR>x</VAR> and
-<VAR>y</VAR> coordinates of the position are saved separately as named
-coordinates. The names are of the form <CODE>*<VAR>name</VAR></CODE>, with the
-leading <CODE>*</CODE> being obligatory. A companion command,
-<CODE>\savepos</CODE>, saves a given coordinate (relative to the current
-segment) as an absolute symbolic position.
-
-
-<DL COMPACT>
-
-<DT><CODE>\savecurrpos (*<VAR>px</VAR> *<VAR>py</VAR>)</CODE>
-<DD>
-<A NAME="IDX83"></A>
-
-Save the current position as the absolute position referenced by
-<CODE>(*<VAR>px</VAR> *<VAR>py</VAR>)</CODE>.
-<A NAME="IDX84"></A>
-<DT><CODE>\savepos (<VAR>x</VAR> <VAR>y</VAR>)(*<VAR>px</VAR> *<VAR>py</VAR>)</CODE>
-<DD>
-Save the coordinate position <CODE>(<VAR>x</VAR> <VAR>y</VAR>)</CODE> as the absolute
-position referenced by <CODE>(*<VAR>px</VAR> *<VAR>py</VAR>)</CODE>. The coordinate
-<CODE>(<VAR>x</VAR> <VAR>y</VAR>)</CODE> is interpreted in the normal fashion as a
-coordinate relative to the current segment, using the current scaling
-factors and drawing unit.
-</DL>
-
-<P>
-The symbolic names used to specify a saved position can consist of any
-characters that are not special to TeX, but must start with a
-<CODE>*</CODE> character. The symbolic names can be used as the <VAR>x</VAR>
-and/or <VAR>y</VAR> coordinate in any command that needs a coordinate.
-Symbolic coordinates are not normally used with relative motion commands
-such as <CODE>\rlvec</CODE> or <CODE>\rmove</CODE>. If used with relative motion,
-the corresponding displacement is equal to the symbolic coordinate
-value.
-
-
-<P>
-On exit from a segment, the position and graphics state on entry is
-restored. Any changes to line types, scaling and position are
-discarded. However, it is sometimes useful alter the position on exit
-from a segment. The <CODE>\savepos</CODE> command allows for the saving of a
-position within the segment. This position can be restored after the
-<CODE>\esegment</CODE> with a <CODE>\move</CODE> command using the saved symbolic
-position. This approach can be used to build modules which operate in a
-manner analogous to the basic relative motion line vector commands.
-
-
-<P>
-The following example defines a macro which draws a box 0.75 inches wide
-by 0.5 inches high containing centered text. On leaving the macro the
-position will be set at a point on the righthand side of the box.
-
-<PRE>
-\def\tbox #1{\bsegment
- \lvec (0 +0.25) \lvec (0.75 +0.25)
- \lvec (0.75 -0.25) \lvec (0 -0.25) \lvec (0 0)
- \textref h:C v:C \htext (0.375 0){#1}
- \savepos (0.75 0)(*ex *ey)
- \esegment
- \move (*ex *ey)}
-</PRE>
-
-<P>
-With this definition, we can treat <CODE>\tbox</CODE> in the same way as the
-basic vector commands, stringing them together to form a block diagram
-as in this example.
-
-<PRE>
-\centertexdraw{
- \ravec (1 0) \tbox{$H(z)$} \ravec (1 0)
-}
-</PRE>
-
-
-
-<H2><A NAME="SEC17" HREF="texdraw_toc.html#TOC17">3.4 Scaling coordinates</A></H2>
-<P>
-<A NAME="IDX85"></A>
-<A NAME="IDX86"></A>
-<A NAME="IDX87"></A>
-<A NAME="IDX88"></A>
-
-
-<P>
-There are two scale factors available, the unit scale factor and the
-segment scale factor. The overall scale factor is the product of these
-two. There are absolute and relative versions of commands to change
-these scale factors.
-
-
-<P>
-The unit scale factor is normally used to affect global scale changes.
-Changes to the unit scale factor remains local to a segment, but
-propagate to inferior segments. The default value is unity.
-
-
-<P>
-The segment scale factor is used for local scale changes. It remains
-local to a segment. The segment scale factor is reset to unity on entry
-into each segment. This means that changes to the segment scale factor
-do not propagate to inferior segments.
-
-
-<DL COMPACT>
-
-<DT><CODE>\setunitscale <VAR>scale</VAR></CODE>
-<DD>
-<A NAME="IDX89"></A>
-
-Set the unit scaling to <VAR>scale</VAR>. The argument <VAR>scale</VAR> is a real
-number which is used to scale coordinate values. The overall scaling
-factor is the product of the unit scale factor and the segment scale
-factor.
-<A NAME="IDX90"></A>
-<DT><CODE>\relunitscale <VAR>value</VAR></CODE>
-<DD>
-Adjust the unit scale factor by multiplying by <VAR>value</VAR>. This has
-the effect of multiplying the overall scale factor by the same factor.
-The overall scaling factor is the product of the unit scale factor and
-the segment scale factor.
-<A NAME="IDX91"></A>
-<DT><CODE>\setsegscale <VAR>scale</VAR></CODE>
-<DD>
-Set the segment scale factor. The argument <VAR>scale</VAR> is a real number
-which is used to scale coordinate values. The overall scale factor is
-the product of the unit scale factor and the segment scale factor.
-<A NAME="IDX92"></A>
-<DT><CODE>\relsegscale <VAR>value</VAR></CODE>
-<DD>
-Adjust the segment scale factor by multiplying by <VAR>value</VAR>. This has
-the effect of multiplying the current overall scale factor by the same
-factor. The overall scaling factor is the product of the unit scale
-factor and the segment scale factor.
-</DL>
-
-<P>
-In addition to the unit scale factor and the segment scale factor, the
-scaling can be controlled by the choice of drawing units with the
-command <CODE>\drawdim</CODE> (see section <A HREF="texdraw_2.html#SEC7">2.4 Coordinate specification</A>).
-
-
-<DL COMPACT>
-
-<DT><CODE>\drawdim cm \setunitscale 2.54</CODE>
-<DD>
-Set the units to centimetres scaled by 2.54. Together these commands
-are effectively the same as <CODE>\drawdim in</CODE>.
-</DL>
-
-<P>
-The segment scale can be used to allow scale changes in segments so that
-values are in more convenient units. For example suppose dimensions in
-a segment are multiples of one third of an inch. The segment scale can
-be set once to make 1 drawing unit equal 0.3333 inches. From that point
-on, coordinates can be specified with integer values.
-
-
-<P>
-The following example defines a macro to draw a rectangular box which is
-twice as wide as it is high. The width is specified as an argument.
-
-<PRE>
-\def\mybox #1{\bsegment
- \setsegscale #1
- \lvec (0 +0.25) \lvec (1 +0.25) \lvec (1 -0.25)
- \lvec (0 -0.25) \lvec (0 0)
- \esegment}
-</PRE>
-
-
-
-<H2><A NAME="SEC18" HREF="texdraw_toc.html#TOC18">3.5 Drawing size</A></H2>
-<P>
-<A NAME="IDX93"></A>
-
-
-<P>
-The effective size of the drawing is determined by the maximum
-excursions of the coordinates supplied to TeXdraw commands. The
-minimum and maximum scaled <VAR>x</VAR> and <VAR>y</VAR> coordinates are tallied.
-Note that <CODE>\move</CODE> commands contribute to the determination of the
-calculated size of the drawing, even though they do not generate visible
-lines. The circle and ellipse commands add a compensation for the radii
-of circles and ellipses. The final TeXdraw drawing is placed in a
-TeX box with lower lefthand corner corresponding to
-<CODE>(</CODE><VAR>x</VAR>-min <VAR>y</VAR>-min<CODE>)</CODE> and upper righthand corner at
-<CODE>(</CODE><VAR>x</VAR>-max <VAR>y</VAR>-max<CODE>)</CODE>.
-
-
-<P>
-Text generated by <CODE>\htext</CODE>, <CODE>\vtext</CODE> or <CODE>\rtext</CODE> can
-spill outside the box as determined above. Only the text reference
-point is guaranteed to be in the drawing box. Arcs can also spill
-outside the drawing box. Note also that the widths of lines, and the
-sizes of arrowheads do not affect the size of the drawing. The
-calculated size of the drawing will never be larger than the actual size
-of the drawing. In extreme cases in which text or lines extend far
-outside the drawing, extra <CODE>\move</CODE> commands should be used to
-establish the size of the drawing so that the TeXdraw box includes
-all of the drawing.
-
-
-<P>
-TeXdraw provides the <CODE>\drawbb</CODE> command to draw a box which
-indicates the effective size of the drawing. Whenever <CODE>\drawbb</CODE> is
-invoked, a ruled box is drawn around the drawing as it has been sized up
-to that point. Normally <CODE>\drawbb</CODE> is invoked just before the end
-of a drawing to indicate the effective size of the final drawing.
-
-
-<DL COMPACT>
-
-<DT><CODE>\drawbb</CODE>
-<DD>
-<A NAME="IDX94"></A>
-
-Draw a ruled box around the effective size of a drawing produced by
-TeXdraw commands.
-</DL>
-
-
-
-<H2><A NAME="SEC19" HREF="texdraw_toc.html#TOC19">3.6 Initial current position</A></H2>
-<P>
-<A NAME="IDX95"></A>
-<A NAME="IDX96"></A>
-
-
-<P>
-The first operation in a drawing should be a move to establish the
-current position. The current position can be established explicitly
-through a <CODE>\move</CODE> command or a text positioning command such as
-<CODE>\htext</CODE> with a coordinate. However, if an attempt is made to use
-a drawing command which needs a current position and none has been
-established, TeXdraw implicitly sets the initial current position to
-<CODE>(0 0)</CODE>. The size of the TeXdraw figure is normally determined
-from the sequence of coordinates specified, but will include the
-implicit initial position in case another initial position has not been
-explicitly specified.
-
-
-<P><HR><P>
-Go to the <A HREF="texdraw_1.html">first</A>, <A HREF="texdraw_2.html">previous</A>, <A HREF="texdraw_4.html">next</A>, <A HREF="texdraw_11.html">last</A> section, <A HREF="texdraw_toc.html">table of contents</A>.
-</BODY>
-</HTML>