From: erg Date: Tue, 15 Apr 2008 17:20:25 +0000 (+0000) Subject: Add source for info pages to CVS X-Git-Tag: LAST_LIBGRAPH~32^2~4297 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5d5f845c71b63c41bb39828fdd33081842842a63;p=graphviz Add source for info pages to CVS --- diff --git a/doc/infosrc/types b/doc/infosrc/types new file mode 100644 index 000000000..8749ca51c --- /dev/null +++ b/doc/infosrc/types @@ -0,0 +1,320 @@ +# List of attribute types +# Each item consists of line of the form : +# followed by a description of the type in HTML +# The items are alphabetized when the page is created. +# +# The type is given the anchor k:, so +# the description can be linked with "> +:arrowType + + + + + + + + + + +
"normal" + "inv"
"dot" + "invdot"
"odot" + "invodot"
"none" + "tee"
"empty" + "invempty"
"diamond" + "odiamond"
"ediamond" + "crow"
"box" + "obox"
"open" + "halfopen"
"vee" +
+

+These are the basic set of backward-compatible arrow shapes. In addition, +there is a grammar of arrow shapes +which can be used to describe a collection of 1260 arrow shapes as +modifications of a primitive set of 9 arrows. The basic arrows shown +above contain all of the primitive shapes +(box, crow, diamond, +dot, inv, none, +normal, tee, vee) +plus ones that can be derived from the grammar +(odot, invdot, invodot, +obox, odiamond) +plus some supported as special cases for backward-compatibility +(ediamond, open, halfopen, +empty, invempty). +:clusterMode +"local","global","none" +:color +Colors can be specified using one of four formats. + + + +
"#%2x%2x%2x"Red-Green-Blue (RGB)
"#%2x%2x%2x%2x"Red-Green-Blue-Alpha (RGBA)
H[, ]+S[, ]+VHue-Saturation-Value (HSV) 0.0 <= H,S,V <= 1.0
stringcolor name
+ The specification for the RGB and RGBA formats are the format strings used by + sscanf to scan the color value. Thus, these values have the form + "#RGB" or "#RGBA", where R, G, B, and A each consist of 2 hexidecimal + digits, and can be separated by whitespace. HSV colors have the form of 3 + numbers between 0 and 1, separated by whitespace or commas. +

+String-valued color specifications are case-insensitive and interpreted +in the context of the current color scheme, as specified by the +colorscheme attribute. If this is undefined, +the X11 naming scheme will be used. +An initial "/" character can be used to override the use of +the colorscheme attribute. In particular, a single initial +"/" will cause the string to be evaluated using the default +X11 naming. If the color value has the form "/ssss/yyyy", +the name yyyy is interpreted using the schema ssss. +If the color scheme name is empty, i.e., the color has the +form "//yyyy", the colorscheme attribute is used. +Thus, the forms "yyyy" and "//yyyy" are +equivalent. +

At present, Graphviz recognizes the default color scheme X11, +and the Brewer color schemes. Please note that Brewer +color schemes are covered by this license. +

+Examples:
+ + + + + + + +
ColorRGBHSVString
White"#ffffff""0.000 0.000 1.000""white"
Black"#000000""0.000 0.000 0.000""black"
Red"#ff0000""0.000 1.000 1.000""red"
Turquoise"#40e0d0""0.482 0.714 0.878""turquoise"
Sienna"#a0522d""0.051 0.718 0.627""sienna"
+

+ Note that some output formats, e.g., mif, + only support a limited number of specific colors. +

+ The string value transparent can be used to indicate no color. + This is only available in the output formats + ps, svg, fig, vmrl, and the bitmap formats. It can be used whenever a + color is needed but is most useful with + the bgcolor attribute. + Usually, the same effect can be achieved by setting + style to invis. +:colorList +A colon-separated list of color values: C(:C)* + where each C is a color value. +:dirType +For an edge T -> H; + + + +
"forward" + "back"
"both" + "none"
+For undirected edges T -- H;, one of the nodes, usually +the righthand one, is treated as the head for the purpose of +interpreting "forward" and "back". +:escString +string allowing escape sequences which are replaced according +to the context. +For node attributes, the substring "\\N" is replaced by the name of the node, +and the substring "\\G" by the name of the graph. +For graph or cluster attributes, the substring "\\G" is replaced by the +name of the graph or cluster. +For edge attributes, the substring "\\\\E" is replaced by the name of the edge, +the substring "\\G" is replaced by the name of the graph or cluster, +and the substrings "\\T" and "\\H" by the names of +the tail and head nodes, respectively. +The name of an edge is the string formed from the name of the +tail node, the appropriate edge operator ("--" or "->") and the name of the +head node. +

+In addition, if the associated attribute is +label, +headlabel or taillabel, +the escape sequences "\\\\n", "\\l" and "\\\\r" +divide the label into lines, centered, left-justified, and right-justified, +respectively. +:lblString +an escString +or an HTML label. +:layerList +list of strings separated by characters from the +layersep attribute (by default, colons, +tabs or spaces), defining layer +names and implicitly numbered 1,2,... +:layerRange +layerId or layerIdslayerId,
where layerId = "all", +a decimal integer or a layer name. +(An integer i corresponds to layer i.) +The string s consists of 1 or more separator characters specified +by the layersep attribute. +:outputMode +"breadthfirst","nodesfirst","edgesfirst" +These specify the order in which nodes and edges are drawn in concrete +output. The default "breadthfirst" is the simplest, but when the graph +layout does not avoid edge-node overlap, this mode will sometimes have +edges drawn over nodes and sometimes on top of nodes. If the mode +"nodesfirst" is chosen, all nodes are drawn first, followed by the +edges. This guarantees an edge-node overlap will not be mistaken for +an edge ending at a node. On the other hand, usually for aesthetic +reasons, it may be desirable that all edges appear beneath nodes, even +if the resulting drawing is ambiguous. This can be achieved by choosing +"edgesfirst". +:packMode +"node","clust","graph" +These specify the granularity of packing connected components when +the pack attribute is true. A value of "node" causes +packing at the node and edge label, with no overlapping of these objects. +This produces a layout with the least area, but it also allows interleaving, +where a node of one component may lie between two nodes in another +component. A value of "graph" does a packing using the bounding box of the +component. Thus, there will be a rectangular region around a component +free of elements of any other component. +A value of "clust" guarantees that top-level clusters are kept intact. +What effect a value has also depends on the layout algorithm. For +example, neato does not support clusters, so a value of "clust" will +have the same effect as the default "node" value. +:pagedir +"BL", "BR", "TL", "TR", "RB", "RT", "LB", "LT". +These specify the 8 row or column major orders for traversing a +rectangular array, the first character corresponding to the major +order and the second to the minor order. Thus, for "BL", the +major order is from bottom to top, and the minor order is from left +to right. This means the bottom row is traversed first, from left +to right, then the next row up, from left to right, and so on, +until the topmost row is traversed. +:point +"%f,%f"('!') representing the point (x,y). The +optional '!' indicates the +node position should not change (input-only). +

+If dim is 3 or more, point may also have +the format "%f,%f,%f"('!') to represent the point (x,y,z). +:pointf +"%lf,%lf" representing the point (x,y). +:pointfList +list of pointf, separated by spaces. +:portPos +modifier indicating where on a node an edge should be aimed. +It has the form portname[:compass_point] +or compass_point. +If the first form is used, the corresponding node must either have +record shape with one of its fields +having the given portname, +or have an HTML-like label, one of +whose components has a PORT attribute set to portname. +In this case, the edge is aimed for the center of the corresponding +field. +

+If a compass point is used, it must have the form +"n","ne","e","se","s","sw","w","nw". This modifies the edge +placement to aim for the corresponding compass point on the port or, +in the second form where no portname is supplied, on the node +itself. +

+This attribute can be attached to an edge using the +headport and +tailport attributes, or as part of the +edge description as in +

+node1:port1 -> node2:port5:nw; +
+

+Note that it is legal to have a portname the same as one of +the compass points. In this case, this reference will be resolved to +the port. Thus, if node A has a port w, then +headport=w will refer to the port and not the compass point. +At present, in this case, there is no way to specify that the compass +point should be used. +:rankdir +"TB", "LR", "BT", "RL", corresponding to directed graphs drawn +from top to bottom, from left to right, from bottom to top, and from +right to left, respectively. +:splineType +spline ( ';' spline )*
+ + + + + +
where spline=(endp)? (startp)? point (triple)+
and triple=point point point
and endp="e,%d,%d"
and startp="s,%d,%d"
+If a spline has points p1 p2 p3 ... pn, (n = 1 (mod 3)), the points + correspond to the control points of a B-spline from p1 to pn. If startp + is given, it touches one node of the edge, and the arrowhead + goes from p1 to startp. If startp is not given, p1 touches a node. + Similarly for pn and endp. +:rankType +"same", "min", "source", "max", "sink" +:rect +"%d,%d,%d,%d" The rect llx,lly,urx,ury gives the coordinates, in + points, of the lower-left corner (llx,lly) and the upper-right corner + (urx,ury). +:style +styleItem ( ',' styleItem )*
+ + + + +
where styleItem=name or name'('args')'
and args=name ( ',' name )*
and name=[^)(,  ][^)(,]*
+Note that whitespace characters are ignored, except for names which +can contain them. A +name cannot contain any comma, or left or right parenthesis, and it cannot +begin with a whitespace character. +

+At present, the recognized style names are +"dashed", "dotted", "solid", "invis" and "bold" for nodes and edges, +and "filled", "diagonals" and "rounded" for nodes only. +The styles "filled" and "rounded" are recognized for clusters. +Additional styles are available in +device-dependent form. Style lists are passed to device drivers, which +can use this to generate appropriate output. +

+The setlinewidth style value can be +used for more control over the width of node borders and edges than is +allowed by bold. This style value takes an argument, specifying the +width of the line in points. For example, style="bold" is +equivalent to style="setlinewidth(2)". +The use of setlinewidth is deprecated; one should use the +penwidth attribute instead. +:shape +A string specifying the shape of a node. +There are three +main types of shapes : +polygon-based, +record-based and +user-defined. +:startType +has the syntax [style][seed]. +

+If style is present, it must be one of the strings "regular", +"self", or "random". In the first case, the nodes are +placed regularly about a circle. In the second case, +an abbreviated version of neato is run to obtain the initial layout. +In the last case, the nodes are placed randomly in a unit square. +

+If seed is present, it specifies a seed for the random number +generator. If seed is a positive number, this is used as the +seed. If it is anything else, +the current time, and possibly the process id, is used to pick a seed, +thereby making the choice more random. In this case, the seed value +is stored in the graph. +

+If the value is just "random", a time-based seed is chosen. +

+Note that input positions, specified by a node's +pos +attribute, are only used when the style is "random". +:viewPort +"%lf,%lf,%lf,%lf,%lf" or "%lf,%lf,%lf,'%s'" +

+The viewPort W,H,Z,x,y or W,H,Z,N +specifies a viewport for the final image. The pair (W,H) gives the +dimensions (width and height) of the final image, in +points. +The optional Z is the zoom factor, i.e., the image in the original layout will be +W/Z by H/Z points in size. By default, Z is 1. +The optional last part is either a pair (x,y) giving a position in the original layout of the +graph, in +points, of the center of the viewport, or the name N +of a node whose center should used as the focus. +By default, the focus is the center of the graph bounding box, i.e., +(bbx/2,bby/2), where "bbx,bby" is the +value of the bounding box attribute bb. +

+Sample values: 50,50,.5,'2.8 BSD' or 100,100,2,450,300. +The first will take the 100x100 point square centered on the node 2.8 BSD +and scale it down by 0.5, yielding a 50x50 point final image.