Annotation of lucent/sys/man/1/art, revision 1.1.1.1

1.1       root        1: .TH ART 1
                      2: .      \" /*% troff -man % | lp -du
                      3: .CT 1 graphics
                      4: .SH NAME
                      5: art, art2pic \- edit line-art
                      6: .SH SYNOPSIS
                      7: .B art
                      8: [
                      9: .B -f
                     10: .I font
                     11: ]
                     12: [
                     13: .B -b
                     14: .I picture
                     15: ]
                     16: .PP
                     17: .B art2pic
                     18: .I file
                     19: .SH DESCRIPTION
                     20: .I Art
                     21: is an interactive program to create precise line-art in the style of
                     22: .IR pic (1).
                     23: It is mostly mouse-operated, with a few commands entered from the keyboard.
                     24: It divides its window into four areas:
                     25: a menu bar at the top,
                     26: a one-line rectangle immediately below for echoing typed-in characters,
                     27: another one-line rectangle below that for printing messages,
                     28: and a large area at the bottom for displaying the drawing.
                     29: The
                     30: .B -b
                     31: option displays the specified
                     32: .I picture
                     33: (in the format of
                     34: .IR picfile (9.6))
                     35: as a background for the drawing.
                     36: .PP
                     37: A small caret, whose apex is the
                     38: .IR "current point" ,
                     39: appears on the screen.
                     40: The lines, arcs, and other elements of a drawing are
                     41: constructed by placing the caret at each of a sequence of points that define the
                     42: item.  When the caret moves, two other markers (a square and a cross) trail it,
                     43: showing its previous positions.  Items on the screen
                     44: near the caret attract it.  Important points on items, like endpoints or
                     45: intersections, pull harder than more mundane points, making precise
                     46: alignment easy.
                     47: .PP
                     48: On request,
                     49: .I art
                     50: will automatically construct alignment lines and circles,
                     51: which it displays more faintly than items in the drawing.
                     52: Certain lines and points in a drawing are
                     53: .IR hot .
                     54: .I Art
                     55: constructs circles of given radii and lines of given slopes
                     56: at hot points, and parallels at given distances from hot lines
                     57: and lines at given angles to their endpoints.
                     58: Menus pulled down from the menu bar
                     59: control what alignment items are constructed.
                     60: Items are automatically heated when added to the drawing
                     61: and will be heated or cooled on command.
                     62: .PP
                     63: The `important points' on a line segment to which the
                     64: caret preferentially gravitates are its endpoints and midpoint.
                     65: On a circle, the center is important.
                     66: On an arc, the endpoints are important.
                     67: On a box, the corners, the midpoints of the sides and the center are important.
                     68: Likewise, on a piece of text, the corners, midpoints and center of its bounding
                     69: box are important.
                     70: On a spline, the control points are important,
                     71: and in a group, the important points of the group members are important.
                     72: .PP
                     73: Whenever button 1 is pressed, the caret follows the mouse cursor.
                     74: On release, the item the caret is touching, if any, is
                     75: selected and highlighted.  If more than one item touches the caret, clicking button
                     76: 1 repeatedly will cycle through them.
                     77: .PP
                     78: Pressing button 2 pops up a menu of commands that add new items to the drawing.
                     79: Every item is described by several
                     80: .IR "control points" :
                     81: a line by its endpoints, a circular arc by its endpoints and a third point on the arc,
                     82: and so forth.  A new item is specified by moving the caret in turn to each
                     83: control point but the last, selecting a menu entry with button two, then using
                     84: button 1 to place the caret
                     85: on the last control point.
                     86: (Buttons 2 and 3 will cancel the command.)
                     87: While the caret is being dragged to the last control point,
                     88: .I art
                     89: displays and updates the item on the screen (``rubber-banding'').
                     90: In all cases, after making an addition to the drawing, the new item becomes the
                     91: current selection.
                     92: The button 2 menu operations are
                     93: .TF parallels
                     94: .TP
                     95: .B line
                     96: Add a line segment to the drawing.  The two control points are the segment's endpoints.
                     97: .TP
                     98: .B circle
                     99: Add a circle to the drawing.  The first control point is the center.
                    100: The second is a point on the circumference.
                    101: .TP
                    102: .B arc
                    103: Add a circular arc to the drawing.  The endpoints are the first and third control points.
                    104: The second control point is an interior point of the arc.
                    105: .TP
                    106: .B box
                    107: Add a rectangle to the drawing.  The box's sides are vertical and horizontal.  The
                    108: two control points are two diagonally opposite corners.
                    109: .TP
                    110: .B spline
                    111: Add a spline curve to the drawing, or extend an existing spline.
                    112: Splines are a little more complicated than other items because they may have any
                    113: number of control points.
                    114: If the current selection is not a spline, there are two control points \(em
                    115: the ends of a new spline.  When a spline is selected, the
                    116: .B spline
                    117: button adds a new control point to the end of the spline closest to the selected point.
                    118: .TP
                    119: .B group
                    120: Add a group to the drawing.  The two control points are the diagonally opposite
                    121: corners of a rectangle.
                    122: Any item partially or completely contained in the rectangle is made part of the group.
                    123: Henceforth the group acts as a monolithic item and may be moved, deleted or copied
                    124: as a unit.  The
                    125: .BR open ,
                    126: .B close
                    127: and
                    128: .B flatten
                    129: commands (on button 3) allow manipulation of the items within a group.
                    130: Groups may be nested within other groups.
                    131: .PP
                    132: Button 3's menu has commands to manipulate the current selection.
                    133: .TF parallels
                    134: .TP
                    135: .B delete
                    136: Remove the selection from the drawing.  If the whole drawing is selected,
                    137: .I art
                    138: asks for confirmation by pressing mouse button 3.  Buttons 1 and 2 cancel the command.
                    139: .TP
                    140: .B heat
                    141: Heat the selected item.
                    142: .TP
                    143: .B copy
                    144: Create a duplicate of the selected item.  The duplicate must be dragged to its intended
                    145: position using button 1.  Buttons 2 and 3 cancel the command.
                    146: .TP
                    147: .B edit
                    148: Change the indicated point of the selected item.  Button 1 adjusts the point.
                    149: Buttons 2 and 3 cancel the command.  This command's behavior depends on the
                    150: kind of item and the point at which it is selected.
                    151: .IP
                    152: If a line is selected near an endpoint, that endpoint moves and the other remains
                    153: fixed.  Both endpoints of a line selected near its midpoint move\(emits length and
                    154: slope do not change.
                    155: .IP
                    156: If a circle selected at its center, it translates without changing its radius.
                    157: If selected on its circumference, its radius changes but its center remains fixed.
                    158: .IP
                    159: The control point of an arc or spline nearest the selection point is modified.
                    160: .IP
                    161: If a box is selected near a corner, that corner moves and the other remains fixed.
                    162: If selected near the middle of an edge, the edge moves, but the opposite edge remains
                    163: fixed.  If selected near its center, the whole box moves without changing its size
                    164: or shape.
                    165: .IP
                    166: A group or a piece of text translates, regardless of the selection point.
                    167: .TP
                    168: .B open
                    169: The selection must be a group.  All commands now operate on the members of the
                    170: group.
                    171: .TP
                    172: .B close
                    173: The most-recently opened group is closed.
                    174: Any changes made while it was open are propagated to other copies.
                    175: .TP
                    176: .B flatten
                    177: The selection must be a group.
                    178: The items in the group are inserted in its place in the drawing.
                    179: This undoes the effect of the
                    180: .B group
                    181: command.  Other copies of the group are unaffected.
                    182: .PP
                    183: Keyboard commands:
                    184: .TF parallels
                    185: .TP
                    186: .B "t text
                    187: Add text to the drawing.  The text is in the current font and is drawn centered
                    188: on the caret.
                    189: .TP
                    190: .BI "f " name
                    191: Set the current typeface.
                    192: .I Name
                    193: is the name of a font file.
                    194: Subdirectories of
                    195: .B /lib/font/bit
                    196: contain many appropriate fonts.
                    197: .TP
                    198: .B D
                    199: Redraw the display.
                    200: .TP
                    201: .B q
                    202: Quit.
                    203: .I Art
                    204: exits, without asking for confirmation.
                    205: .TP
                    206: .BR "w " [ \f2file\f1 ]
                    207: Write the drawing into a file in
                    208: .I art
                    209: format.
                    210: .I File
                    211: defaults to the last file mentioned in a read or write command.
                    212: .I Art
                    213: files may be converted to
                    214: .IR pic (1)
                    215: format by the
                    216: .I art2pic
                    217: command.
                    218: .TP
                    219: .BR "r " [ \f2file\f1 ]
                    220: Read a drawing from a file.
                    221: .I File
                    222: defaults to the last file mentioned in a read or write command.
                    223: .TP
                    224: .B c
                    225: Cool everything.  Every hot item is cooled.
                    226: .TP
                    227: .B a
                    228: Select all items.  The entire drawing is selected.
                    229: .TP
                    230: .B d
                    231: Drop anchor.  The
                    232: .I anchor
                    233: is the fixed point for the not-yet-implemented rotate and scale commands.
                    234: .PP
                    235: Menus pulled down from the menu bar contain commands that alter how
                    236: .IR art
                    237: responds to user interaction.
                    238: .TF parallels
                    239: .TP
                    240: .B slopes
                    241: Most of the entries in this menu are numbers, representing angles in degrees.
                    242: Those that are marked with a star are the inclination from horizontal of alignment
                    243: lines constructed at each hot point of the drawing.  Selecting a number toggles
                    244: the star on and off.  The
                    245: .B measure
                    246: button measures the slope of the line connecting the most recent two points selected
                    247: with the caret.  The measurement is printed, and a corresponding new entry is made
                    248: in the menu.
                    249: .TP
                    250: .B angles
                    251: This menu behaves much like the
                    252: .B slopes
                    253: menu.  Items marked with a star are angles at which alignment lines are drawn
                    254: through the endpoints of hot lines.  The
                    255: .B measure
                    256: button measures the angle indicated by the most recent three points selected with the caret.
                    257: .TP
                    258: .B parallels
                    259: Items marked with a star are distances at which alignment lines are drawn parallel
                    260: to hot lines.  The
                    261: .B measure
                    262: button measures the distance between the most recent two points selected with the caret.
                    263: Distances are nominally in inches, but the program believes the display pitch to be
                    264: 100 pixels per inch.
                    265: .TP
                    266: .B circles
                    267: Items marked with a star are radii of alignment circles drawn with centers at
                    268: hot points.  The
                    269: .B measure
                    270: button measures the distance between the most recent two points selected with the caret.
                    271: .TP
                    272: .B grid
                    273: Items in this menu activate a rectangular grid of gravitating points.
                    274: They have labels like
                    275: .BR 0,0+.1,.1 .
                    276: The first pair of numbers is the coordinate of a point on the grid; the other
                    277: pair is the
                    278: .I x
                    279: and
                    280: .I y
                    281: displacements of other points.
                    282: The
                    283: .B off
                    284: item disables the grid (the default situation).
                    285: .B Measure
                    286: creates a custom-measured grid using the last two positions of the caret as
                    287: diagonally adjacent grid-points.
                    288: .TP
                    289: .B gravity
                    290: The starred entry on this menu is the maximum distance that the caret will move from
                    291: the mouse cursor to snap to an item on the screen.
                    292: .TP
                    293: .B heating
                    294: The
                    295: .B "heat new
                    296: button toggles whether objects are automatically heated when created or modified.
                    297: The item is marked with a star if set, as it is initially.
                    298: .SH SOURCE
                    299: .B /sys/src/cmd/art
                    300: .SH "SEE ALSO"
                    301: .IR tweak (1)
                    302: .SH BUGS
                    303: Needs two or more bits per pixel.
                    304: Doesn't compute intersections of splines with circles or arcs.
                    305: No filled regions, line styles or arrowheads.
                    306: Doesn't save construction lines in files.
                    307: Because it draws in xor mode when rubber-banding, lines can momentarily disappear.
                    308: Tracks slowly in large drawings.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.