diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/refman.tex | 158 |
1 files changed, 29 insertions, 129 deletions
diff --git a/doc/refman.tex b/doc/refman.tex index cb28a5e..d56dfa5 100644 --- a/doc/refman.tex +++ b/doc/refman.tex @@ -288,7 +288,16 @@ This document is also referenced as the CENA technical note NT02-782. \subsection{Differences current release and 3.2.6 release} \begin{itemize} -\item pathTags introduced in 3.2.6 has been examplified and documented. Label and label format documentation has been enhanced. +\item bezier item has been suppressed; they can now be easily replaced by curve item. +\item curve item supports now a high level description: they may be composed of line +segment, arcs and bezier. +\item operators of the contour command are now \ident{add} \ident{addhole} \ident{remove}. +contours ids are now predictable. The GPC ``not-so-free'' library is no more used. +So Zinc is again fully free software. +\item the hierarchical view in ZincDebug.pm can now display some choosen attributes +in a choosen format. +\item pathTags introduced in 3.2.6 have been examplified and documented. Label and label +format documentation has been enhanced. \end{itemize} \subsection{Differences between 3.2.6 and 3.2.4 release} @@ -406,15 +415,10 @@ MA 02111-1307, USA. While this software is distributed under the GNU Library General Public License, part of it are derived from the Tk toolkit which is copyrighted under another open source -license by The Regents of the University of California and Sun Microsystems, Inc.\ The -general polygon clipper, GPC, is copyrighted by the Advanced Interfaces Group, -Department of Computer Science, University of Manchester. GPC can't be used for -commercial purposes without the agreement of the University of Manchester and a monetary -contribution to the University of Manchester. Please contact them at gpc@cs.man.ac.uk -or browse http://www.cs.man.ac.uk/aig/staff/alan/software/ It is possible to use Zinc -without including GPC, it is a compile time decision. The GL font rendering is derived -from Mark Kilgard code described in ``A Simple OpenGL-based API for Texture Mapped -Text'' and is copyrighted by Mark Kilgard under an open source license. +license by The Regents of the University of California and Sun Microsystems, Inc.. +The GL font rendering is derived from Mark Kilgard code described in ``A Simple +OpenGL-based API for Texture Mapped Text'' and is copyrighted by Mark Kilgard +under an open source license. \section{Authors and credits} @@ -986,7 +990,7 @@ to the scale and rotation factors of the transformation. \item \objectref{reticle} Only the center and the spacing between circles are affected. \item \objectref{map} lines and arcs are fully transformed. For texts and symbols only the position is affected. -\item \objectref{rectangle}, \objectref{arc}, \objectref{curve}, and \objectref{bezier} are fully transformed. +\item \objectref{rectangle}, \objectref{arc}, and \objectref{curve} are fully transformed. \item \objectref{window} Only the position (relative to the anchor) is affected. \end{itemize} @@ -1376,18 +1380,6 @@ reference) and all list parameters are given as array references. giving the coordinates of the origin and the corner of the enclosing rectangle. The origin should be the top left vertex of the enclosing rectangle and the corner the bottom right vertex of the rectangle. - \item{\bf bezier} \\ - The bezier type expects a list of floating point numbers \verb+x0 y0 x1 y1 ... xn yn+, - giving the coordinates of the bezier segment controls. The number of values - should be pair (or the last value will be discarded), and there should be at - least two control points. The segments are built as follow: if there is at - least four points, they are used as the four controls of a cubic Bezier. Then, - if more than four points are provided , the first three are discarded and - the process is restarted using as first control the last control of the previous - segment. The process is repeated until there is less than four points left. - If three points are left, a segment is drawn using the second point for the - two off-curve controls. If two points are left, a line segment is drawn - between the two. \item{\bf curve} \\ The curve type expects a list of floating point numbers \verb+x0 y0 x1 y1 ... xn yn+, giving the coordinates of the curve vertices. The number of values should be @@ -1716,7 +1708,7 @@ false. {\tt coordListOrTagOrId} specifies a list of coordinates or an item describing a contour. If a list is specified it should contain a pair number of floating point values specifying the contour vertices X and Y in order. If a tag or an id is specified, it is - should be from one of these classes: arc, bezier curve, icon, rectangle, tabular, text, + should be from one of these classes: arc, curve, icon, rectangle, tabular, text, window. The external shape of the item will be used as the contour. If {\tt coordListOrTagOrId} describes more than one item, the first in display list order will be used. @@ -1724,15 +1716,13 @@ false. {\tt operator} specifies the operation that will be carried. This can be: \begin{description} - \item{\ident{diff}} Substract the given contour from the item contours - \item{\ident{inter}} Intersect the given contour and the item contours, replacing the - original contours by the intersection. - \item{\ident{union}} Compute the union of the given contour and the item's contours, - replacing the original contours by the union. - \item{\ident{xor}} Compute the exclusive or of the given contour and the item's - contours, replacing the original contours by the result. + \item{\ident{add}} + \item{\ident{addhole}} + \item{\ident{remove}} \end{description} + The following operation are now more available (from Version 3.2.6c): \ident{diff}, + \ident{inter}, \ident{union}, \ident{xor}. An error is generated if the items are not of a correct type or if the coordinate list is malformed. @@ -1743,7 +1733,6 @@ false. holes are counter-clockwise). This is usually not a problem if the curve item is used to describe polygonal areas but can lead to unpredicted effects on real unclosed curves. - \emph{NB: This command is available only when GPC support has been built in Zinc.} \end{blockindent} @@ -1768,11 +1757,8 @@ false. read. For tracks setting the current position this way will make the previous position shift into the history. For reticles, the coordinates of the center can be set or read. For arcs and rectangles, the coordinates of the origin and corner can be set or - read. For beziers, the coordinates of the vertices can be set or read and it is possible - to remove or add vertices to an existing item. For curves, the capabilities of bezier - are extended to support multiple contours. For all items that do not support multiple - contours (currently all except curves) the {\tt contour} parameter should be omitted or - specified as zero. + read. For all items that do not support multiple contours (currently all except curves) + the {\tt contour} parameter should be omitted or specified as zero. The optional parameters must be combined to produce a given behavior. Here are the various form recognized by the command: @@ -1792,8 +1778,7 @@ false. Set all coordinates of contour at contourIndex. All items can do it if contourIndex is zero. Curves can handle other contours. For groups, icons, texts, windows, tabulars, reticles, tracks, waypoints, only the first vertex will be used. For rectangles and - arcs, only the first two vertices will be used. Beziers and curves can handle any - number of vertices. + arcs, only the first two vertices will be used. Curves can handle any number of vertices. \item{\tt\large pathname {\bf coords} tagOrId contourIndex coordIndex\\ @@ -1818,21 +1803,21 @@ false. \$zinc->{\bf coords}(tagOrId, 'remove', contourIndex, coordIndex);} Remove coordinate at coordIndex in contour at contourIndex. Can only be handled by - beziers and curves. Only curves can handle contourIndex other than zero. + curves. Only curves can handle contourIndex other than zero. \item{\tt\large pathname {\bf coords} tagOrId add contourIndex coordList\\ \$zinc->{\bf coords}(tagOrId, 'add', contourIndex, coordList);} - Add coordinates at the end of contour at contourIndex. Can only be handled by beziers - and curves. Only curves can handle contourIndex other than zero. + Add coordinates at the end of contour at contourIndex. Can only be handled by curves. + Only curves can handle contourIndex other than zero. \item{\tt\large pathname {\bf coords} tagOrId add contourIndex coordIndex coordList\\ \$zinc->{\bf coords}(tagOrId, 'add', contourIndex, coordIndex, coordList);} Add coordinates at coordIndex in contour at contourIndex. Can only be handled by - beziers and curves. Only curves can handle contourIndex other than zero. + curves. Only curves can handle contourIndex other than zero. \end{itemize} And the slightly abbreviated forms: @@ -2355,7 +2340,7 @@ false. number of coordinates in x, y order. The returned control point list consists of four control points per Bezier segment with two consecutive segments sharing their last/first control point. The control points are in x, y order and can be used to create or change - a Bezier item. + a bezier part of a curve item. \end{blockindent} @@ -3519,91 +3504,6 @@ This attribute has priority over the \attributeref{curve}{fillcolor} attribute a is {\tt true}.} -\section{Bezier items} -\object{bezier} - - - Items of type \ident{bezier} display a path of Bezier cubic segments connected by their - end points. Each segment is described by four control points, two located at the ends of - the segment and two located off curve. The last segment can contain less than four - points but at least two. If it contains two points a straight line segment is drawn, if - it contains three points, the second point is used as the two off-curve control - points. The polygon delimited by the path can optionally be filled. - - It is possible to use this item as a clip item for its group, the clip shape will be the - polygon obtained by closing the path. It is also possible to use this polygon in a - \cmdref{contour} command to build a complex shape in a \objectref{curve} item. The controls - points can be read, modified, added or removed with the \cmdref{coords} command. - -Applicable attributes for \ident{bezier} are: - -\attribute{bezier}{capstyle}{capstyle}{Specifies the form of the outline ends. This -attribute is only applicable if the bezier is not closed and the outline relief is -flat. The default value is {\tt round}.} - -\attribute{bezier}{composealpha}{boolean}{Specifies if the alpha value inherited from -the parent group should be composed with the alpha of this item. The default value is {\tt true}.} - -\attribute{bezier}{composerotation}{boolean}{Specifies if the current rotation should be -composed with the local transform. The default value is {\tt true}.} - -\attribute{bezier}{composescale}{boolean}{Specifies if the current scale should be -composed with the local transform. The default value is {\tt true}.} - -\attribute{bezier}{fillcolor}{gradient}{Specifies the color that will be used to fill -the bezier if requested by the \attributeref{bezier}{filled} attribute. The default value is a one color -gradient based on the current value of the widget option \optref{backcolor}.} - -\attribute{bezier}{filled}{boolean}{Specifies if the item should be filled. The default -value is {\tt false}.} - -\attribute{bezier}{fillpattern}{bitmap}{Specifies the pattern to use when filling the -item. The default value is {\tt ""}.} - -\attribute{bezier}{firstend}{lineend}{Describes the arrow shape at the start of the bezier. -This attribute is applicable only if the item is not filled and the relief of the outline -is flat. The default value is {\tt ""}.} - -\attribute{bezier}{lastend}{lineend}{Describes the arrow shape at the end of the bezier. -This attribute is applicable only if the item is not filled and the relief of the outline -is flat. The default value is {\tt ""}.} - -\attribute{bezier}{linecolor}{gradient}{Specifies the color that will be used to draw -the item outline. The default value is the current value of the widget option -\optref{forecolor}.} - -\attribute{bezier}{linepattern}{bitmap}{Specifies the pattern to use when drawing the -outline. The default value is {\tt ""}.} - -\attribute{bezier}{linestyle}{linestyle}{Specifies the line style to use when drawing the -outline. The default value is {\tt simple}.} - -\attribute{bezier}{linewidth}{dimension}{Specifies the with of the item outline (not -scalable). The default value is {\tt 1}.} - -\attribute{bezier}{priority}{priority}{The absolute position in the stacking order among -siblings of the same parent group. The default value is {\tt 2}.} - -\attribute{bezier}{relief}{relief}{Specifies the relief used to drawn the bezier -outline. This attribute has priority over the \attributeref{bezier}{linepattern} and -\attributeref{bezier}{linestyle} attributes. The color of the relief is derived from -the color in \attributeref{bezier}{linecolor}. The default value is {\tt flat}.} - -\attribute{bezier}{sensitive}{boolean}{Specifies if the item should react to events. The -default value is {\tt true}.} - -\attribute{bezier}{tags}{taglist}{The list of tags associated with the item. The default -value is {\tt ""}.} - -\attribute{bezier}{tile}{image}{Specifies an image used for filling the item with -tiles. This will be done only if filling is requested by the \attributeref{bezier}{filled} -attribute. This attribute has priority over the \attributeref{bezier}{fillcolor} attribute and the -\attributeref{bezier}{fillpattern} attribute. The default value is {\tt ""}.} - -\attribute{bezier}{visible}{boolean}{Specifies if the item is displayed. The default value -is {\tt true}.} - - \section{Triangles items} \object{triangles} |