Inter-Office MemorandumToGriffin UsersDateOctober 28, 1981FromMaureen StoneLocationPalo AltoSubjectHow to use GriffinOrganizationISLFiled on: [Indigo]Release>HowToUseGriffin.pressWhat is Griffin?Griffin is a stand-alone interactive illustrator for creating full-page color illustrations composed oflines, curves, filled areas, and captions. Illustrations are constructed on the screen using the mouseand menus, and can then be printed at high resolution on a color press printer such as the Puffin orPimlico.To run Griffin, you must have an Alto II with at least 2 banks (128K) of memory and Mesa6proms, a Dophin or a Dorado. Run the command file [Indigo]Release>NewGriffin.cm,which will retrieve the following files:Griffin.run: the illustrator itself.Griffin.fonts: contains a selection of fonts.ColorChart.griffin: contains a sample of all the Griffin colors.Circle.griffin: contains a closed curve which approximates a circle.To run Griffin, you must have Griffin.run on your disk, along with Griffin.fonts or at least onestrike font (for the menus), and a current fonts.widths. To enter the illustrator, type:Griffin RETURNTo exit from Griffin, bug Quit' on the master menu. A menu will be displayed asking forconfirmation (Yes' or No').FontsFonts are chosen from a menu that lists all the fonts in Griffin.fonts. To add to this list, simplyload the desired strike fonts onto your disk and start Griffin. Griffin will use the information inthe strike font plus the information in fonts.widths to make new entries in Griffin.fonts. There iscurrently no way to delete fonts other than deleting Griffin.fonts and starting over.Griffin tries to make displayed and printed text strings look the same by using the information infonts.widths to position text on the screen. The positioning parameters are set when the font isentered into Griffin.fonts. Therefore, it is important that you generate Griffin.fonts using theversion of fonts.widths that matches your printer. In general, if printed captions are mispositioned,rebuilding Griffin.fonts with the correct version of fonts.widths should fix the problem. ]gpi c8q]rX -q7Br ]q]r -q7Br Yq]r-q 7Br SqF8 Ip Er[ Dg BZ A  =F <\G :(8%6(.3A1yE .MP ,Y*rq 'FrD % p rM &@$ L U D na 7* fJ Zd =Zg2Color GriffinThere is a version of Griffin which will run on a Dorado with a color monitor. Color Griffin maybe found on [Indigo]Color>Griffin.image. You can use the command file above to retrievethe auxillary files from [Indigo]Release>.ObjectsThe basic graphical unit in Griffin is the object. Single objects may be grouped in a cluster, whichbehaves as a single object for most operations. The basic unit to be printed or saved is theillustration, which may be composed of any number of objects.There are three types of object in Griffin: shapes, captions, and control objects. Shapes consist ofstraight and curved lines, either singly or linked end-to-end into more complex figures, and may beeither closed (end points linked) or open (end points not linked). Closed shapes may be filled witha solid color. Captions are composed of text typed from the keyboard, which may be rotated byany multiple of 90 degrees.Control objects that may appear on the Griffin screen include menus, control points, and the controlgrid. Control points are used in defining the geometry of shapes, and are placed and deleted withthe mouse. The grid is provided as an aid in placing objects and control points precisely.Every object has a geometry and a style. The geometry of shapes is defined by placing controlpoints and fitting lines or curves through them. For captions, the geometry consists of an anchorposition and a text string. Style attributes include such things as color, line thickness, font, etc.The style of an object can be changed without affecting the geometry, and vice versa.Objects have a definite order of overlap. A newly created object is always placed at the top;operations are available for explicitly changing and controlling the overlap order of the objects inan illustration. Filled shapes are opaque, obscuring those below them in the overlap order. Shapesthat are not filled are transparent, except on the border.MenusAll Griffin commands are entered by menu selection. The keyboard is used only for typingcaptions and file names. Menu items are selected by clicking down over the desired item on themenu with any of the three mouse buttons. Outside of the menus, the three mouse buttons havedifferent functions, described below under Mouse Operations'.Menus appear on top of the picture being drawn; they can be moved around to provide access toall parts of the picture. The master menu, always visible on the screen, controls the display of othermenus used for various specialized purposes. Each item on the master menu is a toggle that can beturned on and off by repeated clicking with the mouse. Turning one of these toggles on causes theassociated menu to appear on the screen; when the toggle is turned off, the menu vanishes. Someof the second-level menus in turn include toggles that control even more specialized submenus.Some menus, known as one-of-many menus, have the property that only one item on the menu maybe selected at a time. Selecting any item on such a menu automatically deselects the previouslyselected item.Gfr ap ^rO ](a [3 Up Qr+sr%sr P4C Ns r0 KFsr J,sr. H|srsr+ FsrF Et BIsr.srs @rX ?AD <srsr6 :"@ 9 a 7U 4^!sr, 2L 1UF /: )p %r N $aB "J !Y> .N s r< &Jsr F P Us nrsr P f   >YM23The following table summarizes the various menus available in Griffin and the toggles that controlthem.Menu Toggle On menuMaster menuAlways present - - - -Edit menuEdit'Master menu*Shape menuEdit'Master menu*Spline type menuSpline Type'Edit menuObject menuObjects'Master menuFile menuFiles'Master menuTransform menuTransform'Master menuOverlap menuOverlap'Master menuView menuView'Master menuStyle menuStyle'Master menu*Thickness menuShape Style'Style menu*Color control menuShape Style'Style menu*Line color menuColor Style'Style menu*Area color menuColor Style'Style menu*String rotation menuText Style'Style menu*Character rotation menuText Style'Style menu*Font menuText Style'Style menu*Anchoring menuText Style'Style menu*One-of-many menuUser MessagesUser messages (prompts, warnings, etc.) are displayed as a special menu containing the message ininverted video (white on black). Bugging this menu makes it disappear. It is always possible tocontinue running Griffin after the appearance of one of these messages.Gfr bU `]n$3g'ZC $ 3g'W$3g'U $3g'S<$ 3g'P $3g'N$3g'L5 $ 3g'I $3g'G$3g'E- $3g'B$ 3g'@~$ 3g'>&$ 3g';$ 3g'9w$ 3g'7$ 3g'4 $ 3g'2p$ 3g'/D *+t &,r T $.3 #$G !|=F4Mouse OperationsGriffin uses each of the three mouse buttons for two different operations, depending on whetheryou hold down the SHIFT key while pressing the button. The following table summarizes themouse operations:Mouse button:LeftMiddleRightWithout SHIFT keyMove objectPlace control pointSelect objectWith SHIFT keyCopy objectDelete control pointDeselect objectDraw-through--All in rectangleSelect/deselect (delete only) all in rectangleObjects affectedShapes--ShapesCaptionsCaptionsClustersClustersControl objects (move only)Selecting and Deselecting ObjectsMany Griffin operations apply to one or more objects selected in the illustration. To select anobject, bug it with the right mouse button; to deselect a selected object, bug it with the right buttonwhile holding down the SHIFT key. If the object is part of a cluster, the entire cluster is selected ordeselected.Drawing diagonally through a rectangle (button down, move, button up) selects/deselects all objectsentirely contained in the rectangle. If any object in a cluster would be selected/deselected in such adraw-through operation, the entire cluster is selected/deselected.Selection is indicated by a small square token displayed on each selected object. For shapes, theselection token is displayed at some point on the edge. For captions, it is displayed at the anchorpoint. If the object is completely obscured (either by overlying objects or by the selection tokenitself), the token appears as a slashed box. A selected cluster is indicated by a square token with asmall letter c' in it, displayed on the topmost object (in overlap order) of the cluster.Move and CopyAny Griffin object may be moved by pressing down the left mouse button over any point on theobject, moving the mouse, and releasing the button at the new location. (A menu must be movedby its frame, the grey border surrounding the text.) The object is repositioned so that the point onthe object that was under the down stroke of the mouse is moved to the location of the up stroke.If the object is part of a cluster, the entire cluster is moved as a unit. Holding down the SHIFT keyduring this operation causes a copy of the object (shape, cluster, or caption) to be placed at theindicated position, leaving the original object undisturbed. The copy is placed at the top of theoverlap order; if the original object was selected before the copy operation, the selection transfers tothe new copy.Placing and Deleting Control PointsControl points are displayed as small crosses. They are placed by clicking the middle mouse buttonGfr ap ]r4+ \TqrC Z'W $.q8]Ty ){8] R"  ){8]O $){8]NF){ 3g8]K.q8]Jj8]H8]GbE @t! ]?5and deleted by clicking the same button while holding down the SHIFT key. Drawing through arectangle with the shifted middle button deletes all control points in the rectangle. All controlpoints on the screen are ordered in the sequence in which they were placed. Any new controlpoint goes after all the previous ones, and there is no way to change the order. There is currentlyno good way to determine the order of the existing control points other than to plot a curvethrough them.Creating and Modifying ObjectsShapes (graphical objects) are created and modified with the commands on the edit and shapemenus, in conjunction with control points placed on the screen with the mouse. These menus areboth controlled by the Edit' toggle on the master menu. Other attributes of the object to becreated are specified on the various style menus (see Styles', below).Drawing ShapesTo create a graphical object, place a series of control points in order with the middle mouse button,make sure the desired style attributes have been selected, then bug Draw' or Close', for an open orclosed shape, respectively. The type of shape to be drawn (straight-line or curved) is specified withthe Line' or Curve' option on the shape menu. [For the aficionado, the menu item Spline Type' expands aone-of-many menu of various methods of curve fitting. These methods are explained in greater detail in the sectionCurve Fitting' at the end of this document.] The color control menu (see below) determines whether aclosed object will be filled, outlined, or both.For linked objects with more than one link, place the control points for each link separately, selectLine' or Curve' for that link, then bug Draw Link' for all but the last link. After placing thecontrol points for the last link, bug Draw' or Close'. Back Link' is used to back up one link whileediting.The special-purpose Box' command on the edit menu allows you to draw rectangles easily byplacing just two control points, representing the endpoints of the rectangle's diagonal.Creating CaptionsTo create a caption, place a control point, then type the caption. After the first character is typed,the control point will turn into a blinking caret. The backspace key backs up one character; thebackword'' key (BW on the Alto II keyboard, top-blank on the Alto I keyboard) erases the lastword of the caption; the DEL key erases the entire caption. Any mouse operation terminates thecaption.Captions are displayed on the screen using the information in the file Fonts.Widths. Each characteris positioned near as possible to where it would go on the printed page. Therefore, the caption willbe displayed such that the total length relative to other objects in the picture is correct when thepicture is printed. However, the character spacings on the display will look funny because of thedifference between the fonts used on the printer and the fonts used on the alto. The charactersshould look fine when printed.Gfr b?qr `<& _T ]40 \@ Z Tp PrEsrs Or-, M? L%s r Ft BrP Au:+ ?a >m2q2 = <7 ;,rsr! :'0 6+: 5xJ 3Q 2p /D= -X (t $r9. #$P !qr2 qrC  U 6/ S  b >"  ]=V6Modifying Shapes and CaptionsTo modify an object, select it, then bug Modify' on the edit menu. If more than one object isselected, the topmost selected object will be the one modified.For a shape object, Modify' erases the object (or the last link of a linked object) and leaves itscontrol points visible. The current shape and color styles (see below) are set to the style of theobject being modified. You may now add, delete, or move control points, just as though you weredrawing the object for the first time.When you modify a caption, a caret appears at its end, as though you had just typed it in. Thecurrent text styles (see below) are set to the style of the caption being modified. You can then editthe caption in the normal way. Manipulating ObjectsThe operations described in this section are used for object-level manipulations within anillustration. All of these operations appear on the object, view, and overlap menus, which arecontrolled, respectively, by the Objects', View', and Overlap' toggles on the master menu.Deleting ObjectsThe Delete' command on the object menu deletes all objects currently selected. The last deletioncan be canceled by bugging Undo'.Selecting/Deselecting the Entire IllustrationFor convenience, every object in the illustration can be selected or deselected by bugging SelectAll' or Deselect All' on the object menu. These operations apply only to objects on the currentview (see Alternate View', below).GridA control grid is available to aid in precise placement of objects and control points. The display ofthe grid is controlled by the Grid' toggle on the view menu. The grid is displayed as a pair ofhorizontal and vertical axes, each of which can be moved independently. Whenever the grid isvisible, all mouse operations (Move, Copy, Place and Delete control point), are rounded to thenearest grid point.Gfr at ]r1. \T? Y)^ WG V!#= T& Qq1. O'? Ni H|p D}r,. B4s rs r Au3* ;t 7rO 6" 0t- ,rZ *R )# #$t %rs rD K U L V m=P7Refreshing the DisplayRefresh' on the view menu erases and replots the display.ClustersA cluster is a group of objects (shapes and captions) that are moved, copied, transformed, selected,and deselected together. That is, any of these operations performed on one item in the cluster isautomatically applied to the entire cluster. A selected cluster is indicated by a single select token;however, every object in the cluster is considered selected.To create a cluster, select all the objects that are to be part of the cluster (possibly including otherclusters), then bug Cluster' on the object menu. The user message New cluster made'' willappear. To unmake a cluster, select it and bug Uncluster'. The user message Cluster unmade''will appear. There is only one level of clustering, so a cluster of clusters makes one large group.That is, Uncluster' applied to such a cluster results in a group of single objects, not a group ofclusters.Changing the Overlap OrderObjects have a definite order of overlap, whether or not they actually cover each other up. Objectsare displayed and printed in bottom-to-top order. To change the position of an object in theoverlap order, select the object and bug the desired item on the overlap menu: Top', Bottom',Up-One', or Down-One'. If more than one object is selected, they retain their relative positions asthey move. For example, if five objects are selected and you bug Top', the selected objects willbecome the top five objects.Alternate ViewGriffin allows you to work on two separate views within the same illustration. In effect, you havetwo separate pages to work on. The view you are currently working on is called the current view;the other is the alternate view. For example, you might create the background for a picture andplace it on the alternate view, keeping only the foreground visible on your working view. Thiswould speed up editing of the foreground by simplifying refresh operations. When the backgroundand foreground were both completed, you would merge them into a single illustration. As anotherexample, the alternate view might be used for selectively merging pieces of two different files. Thiscould be done by reading each file into a separate view, then transferring objects from one view tothe other.All operations work identically on both views. To change from one view to the other, bug Switch'on the view menu. This will erase the screen and display all objects on the other view. Controlobjects (menus, control points, and grid) are displayed in the same positions in either view.To transfer objects from one view to the other, select the objects to be transferred and bugTransfer' on the object menu. The selected objects are erased from the screen and transferred tothe alternate view. Bugging Merge' on the view menu causes all objects currently on the alternateview to be transferred to the current view and displayed on the screen.Only objects that are visible on the current view are included when an illustration is written out ona press file. All objects on both views are included when the illustration is saved on a Griffin file.Gfr at ]r: Wt Srsr M RhD PR O`< L5b JC I-O Gd F$D D >t :r[ 90L 7$< 6(*< 4 X 3  -3t )4r! sr3 '?s &,rsr@ $C #$7) !.sr !  Z  V  Y dY C H 1 U H )G $A yJ P 2>]%8Transforming ObjectsGriffin offers a variety of transformations that may be applied to an object. All transformationoperations appear on the transform menu, controlled by the Transform' toggle on the master menu.Only shape objects transform fully. For captions, only the anchor point is transformedTo transform one or more objects, select the objects to be transformed, place the transformationcontrol points (details below under the various transformations), and bug the appropriate item onthe transform menu. The selected object(s) are erased, transformed, and redisplayed. If Use Copy'is selected on the transform menu, the original object is left undisturbed and a copy is created,placed on top in the overlap order, transformed as specified, and displayed. If the requestedtransformation would flatten the object in such a way that its original shape could not be recovered(for example, scaling it by zero), a warning message is displayed and the transformation is notperformed.X or Y ScalingFor X or Y scaling (ScaleX', ScaleY'), two or three control points are required. The points areprojected onto the specified dimension (the other dimension is ignored). If three points are placed,the object is transformed so that the distance from the first to the second control point along thespecified dimension is scaled into the distance from the first to the third point. If only two pointsare placed, the overall size of the object in the specified dimension is scaled to the distance betweenthe control points in that dimension. The first control point is used as the origin for the scalingoperation.Full ScalingFor full scaling (Scale'), two or three points must placed. In effect, both X and Y scaling (seeabove) are done simultaneously with respect to these control points. For example, you can reducethe size of an object by a factor of 2 by placing the first two control points on a 45 degree diagonal,and the third on the same diagonal, midway between the first and the second. If only two controlpoints are placed, they define the new bounding box of the object. The first control point is usedas the origin for the scaling operation.RotationRotation (Rotate') requires two or three control points. The first point is the center of rotation. Ifthree points are placed, the object is rotated so that the direction from the first to the secondcontrol point is mapped into the direction from the first to the third point. If only two points areplaced, they represent an absolute angle relative to the horizontal.Full Mapping (Scaling and Rotation)For the full mapping transformation (Map'), two to six points may be placed. Two points specify asimple translation (move) to be applied to the selected object(s). Four points specify a mappingfrom the line defined by the first two points into the line defined by the third and fourth. Objectsare scaled and rotated, but not deformed by this mapping. Three points may be used as ashorthand for the four-point map, in which the two lines are defined by the first and second points,and the first and third. For six points, the triangle defined by the first three points is mapped intothe triangle defined by the second three. Five points are a shorthand for six points, with the twoGfr ap ]rsr- \Tsr3 ZW WG V!E TQ SQsr Q#; Pd N,3 M Gt Cr/3 BlH @D ?dP =X <\O : 5t 1rO 0;D .g -3<% +6- *+( %t !rM .3  N D mt# nrc H fT (0 ^H )> VN >](9triangles defined by points one-two-three and one-four-five.StylesEvery object in a Griffin illustration has a style that defines various attributes of the object'sappearance when displayed or printed. Styles are specified with the style menu, controlled by theStyle' toggle on the master menu. The Color Style', Shape Style', and Text Style' toggles on thestyle menu in turn control the display of specialized style submenus for setting the style attributes ofan object.The style submenus remember'' their settings, even when they are not currently displayed on thescreen. The state of all these menus together defines the current style, which is applied to anynewly created object. All objects carry all style attributesfor example, every shape object has afont style. It is only possible to operate on the entire style for an object, not just one attribute. Forinstance, there is no way to change the color of several captions in one operation without alsosetting them all to the same font. To read the style of an object, bug Indicate' on the style menu. The current style is set to the styleof the selected object, and all visible style submenus are updated accordingly. If more than oneobject is selected, the style of the topmost selected object becomes the current style.To change the style of an object, select the object, set the desired attributes on the style submenus,then bug Apply' on the style menu. All selected objects are given the current style, as defined bythe current settings of the style submenus.Shape StylesShape styles include line thickness and whether a closed object is filled, outlined, or both. They arespecified with the thickness menu and the color control menu, both controlled by the Shape Style'toggle on the style menu. The line thickness (given in Alto pixels, where one pixel=32 micas)applies to all lines and outlines. All lines have round endpoints. Outlined objects are larger thanunoutlined objects by half the thickness of the outline.Gfr b< \1p X2r-sr0 V@s r U*T S6s r$ R" Na Mr. s r KM Jjg H_ Gb# D7.: B] A.W >,: <9+ :+ 5t 1s r6% 0_s rsr% .E -V"C +8 *+==10Color StylesEvery Griffin object has two color attributes, one for the outline and another (applicable only toclosed shapes) for area fill. These attributes are specified with the line color and area color menus,both controlled by the Color Style' toggle on the style menu.Griffin provides a palette'' of colors that are intended to be generally useful for all types ofillustration. A color reference sheet is available on the file [Ibis]ColorChart.press. It isrecommended that you keep a hardcopy of this color chart near your workstation for referencewhile using Griffin. [There will be varations in the colors between Puffin and Pimlico printers, especially black,browns, and dark reds.] All colors except black and white display as half-tone grey patterns. Thesepatterns were chosen to give some indication of the brightness of the color, but are not unique.For example, red and green display as the same grey pattern.[Because of changes in the color chart since the first alpha-release, it is possible for a Griffin file to contain objects withcolor values that are not on the menu. These objects will display in a 50% grey pattern, and will continue to print inthe same colors as when they were created. Indicate' applied to such an object will set the color menu to black, so thecolor cannot be copied.]Text StylesText styles include font, anchoring position, and rotation. They are specified with the font,anchoring, string rotation, and character rotation menus, all of which are controlled by the TextStyle' toggle on the style menu. Because text display is based on the hardcopy widths of thecharacters, the spacing of characters on the screen may appear a bit strange. However, the overalllength of each caption is represented accurately, so that shapes and captions can be correctlyaligned. The font to be used for a caption is specified by selection on the font menu. This menu includesthe names of all the fonts on your disk. To add to this list, simply load the desired strike fontsonto your disk and start Griffin. Griffin will use the information in the strike font plus theinformation in fonts.widths to make new entries in Griffin.fonts. There is currently no way todelete fonts other than deleting Griffin.fonts and starting over.Captions may be anchored at the left, right, or center by bugging the appropriate option on theanchoring menu. The designated anchor point is positioned over the control point when thecaption is typed in. When a caption is selected, the select token appears at the anchor point.String rotation controls the direction in which the caption itself is orientedthat is, the direction inwhich characters are added as text is typed from the keyboard. The items 0 d', 90 d', 180 d', and270 d' on the string rotation menu represent normal (right), up, left, and down, respectively.Character rotation controls the direction in which the characters within the caption are oriented.The options on the character rotation menu have the same meanings as the corresponding items onthe string rotation menu. Character rotations may require rotating a font. This takes severalminutes (up to a significant part of an hour for very large fonts). Once the font is rotated, it isstored in the file Griffin.fonts, where it can be reused. Thus it is only time-consuming to use arotated font the first time.Of the 16 possible combinations of string and character rotation, only half are useful in practice.The 4 cases where the string rotation is the same as the character rotation, and the 4 cases wherethe string rotation equals the character direction plus 270 (producing a vertical column ofcharacters), produce readable text. The other 8 cases are not generally useful.G?fr at ]rN \T$#s rs Zr> W(: V!W T'5 SqE QrO P,4 N< KqX' JG k I r G Bt >s r1s =Srsr ;)4 :K[ 8D 7B 4N 2>% 1"= /\ .A *sr) )WZ 'E $sr$sr& #$a !4+ tsr sr /0 l$; C! dY  A" 1\ [ )P >Y)T11FilingAll filing operations are done with the file menu, controlled by the Files' toggle on the mastermenu. The file menu contains a list of file names, an empty slot, and the functions Press', Save',and Restore'. The list of file names includes all files on your disk with the extension .griffin'.Creating a Press FileTo make a press file of the current illustration, type the desired press file name (without anextension) into the empty slot on the file menu, or select one of the existing names on the menu;then bug Press'. The extension .press' is automatically appended to the name supplied, and apress file with that name is written containing the current illustration. This operation may takeseveral minutes. Pictures with many lines and outlined areas will take the longest time to format.The press file will contain only those objects that are visible on the current view when the file ismade. This does not include runtime objects (control points, menus, or grid), objects not on thecurrent view, or objects that are completely off the screen. Objects that are partially on the screenwill not print correctly in this version of Griffin.Saving a Griffin FileTo save the current illustration in editable form on a Griffin file, type the desired Griffin file name(without an extension) into the empty slot on the file menu, or select one of the existing names onthe menu; then bug Save'. The extension .griffin' is automatically appended to the name supplied,and a Griffin file with that name is written containing the current illustration. If a file of thespecified name already exists, a menu is displayed asking for confirmation (Yes' or No'), beforeoverwriting the file.The Griffin file will contain all objects in the current illustration when the file is made. This doesnot include runtime objects (control points, menus, or grid), but does include objects not on thecurrent view and objects that are completely off the screen. Only one illustration may be saved ineach Griffin file.Reading a Griffin FileTo read in an illustration from a Griffin file for further editing, select the name of the desired fileon the file menu; then bug Restore'. The extension .griffin' is automatically appended to thename selected, and the illustration stored on the Griffin file with that name is read in and displayedon the screen. Objects read from the Griffin file are added to (they do not replace) any objectsalready on the screen when the file is read.G?fr ap ]r(s r$ \T sr7# ZE Ut QrB P4R N)6 M,;' K$? H|7- FN EtX C4 >t :r>) 9T12 7U 6KU 4L 3C 0srF .Bsr -K + &st "srS O kP 6sr sr c, =MP12If Griffin Gets FullGriffin is a memory resident system. Even on the D-machines, it uses only as much memory as isavailable on an Alto. This means that there is a limit to the number of objects which can be in aGriffin picture. The number of objects depends on the type and complexity of the objects. As thesystem fills up, the response to mouse operations becomes slow. There seems to be a drasticslowdown just before the system becomes completely full. Once there is no more space to storeobjects the following message is displayed:Griffin is out of space. Save your file!It is strongly recommended that the illustration be filed right away, before any more operations areperformed. Once the illustration is safely filed, the picture can be edited, although no more objectscan be added. The error message will be displayed each time the system is unable to get enoughspace to perform an operation. In general, save your big files often. While every effort is made togive you a chance to save your work once Griffin fills up, it is not always possible. If Griffin BreaksWhen Griffin detects an error condition, it attempts to write a file GriffinError.Griffin' containingthe picture you were working on at the time the error occured. Griffin will then exit to the AltoExecutive and print the following message:// Griffin error. File GriffinError.Griffin writtenSome errors may make it impossible to write the file, in which case Griffin will attempt to exitgracefully to the Alto Executive with the following message:// Fatal Griffin error. No file could be writtenThere is always the possibility of something catastrophic happening, which could cause the systemto freeze up (cursor does not track the mouse) or even hit the dreaded boot lights. If this occurs,the boot button is your only recourse. Do not confuse some of Griffin's long pauses with fatalerrors. Working pauses are indicated by the busy cursor (that funny object is a griffin), which willstill track if you move the mouse. Long pauses are caused by such operations as writing files(several minutes, and you should hear the disk), generating press files (several minutes, plus thescreen may break up a bit), and rotating fonts (up to an hour for large fonts).All errors, comments, criticism, plaudits, etc., should be directed to Stone.PA. Please include apointer to GriffinError.Griffin if you have one, and a description of what you were doing when thesystem broke.Curve FittingThis section describes the various curve fitting methods available in Griffin. In general, decidingwhat method of curve fitting to use is a matter of personal preference. It is not necesary tounderstand all five methods to use the illustrator. The default fitting method corresponds to themenu item Natural: Arc Length', and is adequate for most pictures. This section tries to give somedescription and guidelines for using the various methods. It isn't really as hard as it sounds.Experimentation is strongly encouraged.There are five methods of curve fitting available in Griffin. These include two types of naturalG?fr ap ]rC \TS ZR YL< WD VD+RE) NFL LE! K> Q IU H6V BIp >Jr+; <?# ;A*84 5X 4:<11 ."? -3G +M *+,9 (G '#Y %O "sQ b k ~p r8, // w T $@ oR ' Ls  y>]13spline (arc length and unit length), which smoothly connect a set of control points; a non-interpolating (does not draw through the control points) spline called a B-spline; an interpolatingbut only first-order continuous (less smooth) curve called a Catmull-Rom curve; and a very differenttype of curve called a Bezier curve, which uses the control points as end points (on the curve) andtangent points (off the curve) in an alternating fashion. There is a figure on [Indigo]Release>SplineSampler.press which shows the five curve types. This figure must beprinted on a press printer.B-splines, Catmull-Rom curves, and Bezier curves are local curves. That is, a given section of thecurve is affected only by the control points near that section. As a result, these curves are moresymmetrical and more modifiable (since changes at one end don't affect the other end of a longcurve) than natural splines. Each section of the curve is completely defined by four control points.For the B-spline and Catmull-Rom curves, moving one control point will affect four sections of thecurve. For Bezier curves, movng one control point will affect only one or two sections of the curve.Natural splines and Catmull-Rom curves are defined by placing control points along the desiredcurve. The algorithm will draw a curve through the points. Think of these points as handles'' tocontrol the slant of the curve at the end conditions. (The Catmull-Rom curve does not go throughthe first and last control points; by placing double points at the beginning and the end, you canmake the curve continue out to the endpoints.) The two types of natural spline generate similar-looking curves, especially if the control points are evenly spaced. In general, the unit mesh versionwill give sharper turns at the control points. The Catmull-Rom curves, in comparison, look verysquare. However, because they are local curves, they may be easier to use for some shapes.The B-spline goes near all the control points but through none of them. It is defined by placingcontrol points near the desired path; the curve follows the direction of the points, but does not passthrough them. B-splines are local curves and are very smooth and symmetrical, but it is quite a bitharder to predict from the positions of the control points where the curve will fall. Placing thecontrol points in some regular pattern using the grid will produce very attractive curves for bordersor symmetrical shapes.Each section of a Bezier curve is defined by the end points plus two points off the curve (tangentpoints). The control points must be placed in the following order: end point, tangent point,tangent point, end point. The line from the first end point to the first tangent point is tangent tothe curve (describes the slope or slant) at the end point. Similarly, the line from the second tangentpoint to the second end point is tangent to the curve at the second end point. If more than fourcontrol points are placed, the first four define the first section of curve, the fourth point plus thenext three define the second section of curve, and so on. The sections are connected, but notsmoothly. To make a smooth connection between sections, it is necessary to line up the tangents ofthe two sections. That is, there must be three control points in a line at the join point. Beziercurves are useful for drawing a short section of curve when the tangents at the end conditions areimportant (for example, a curve that points horizontally from the side of a box into the side ofanother box). Bezier curves can also be used to make symmetrical or repeated shapes with sharpbreaks in them. Because Catmull-Rom curves and B-splines do not go through the first and last control points, thesecurves cannot be used in this version of Griffin to make objects with multiple links. Objects arealso restricted to using only one method of curve fitting for the entire object. Thus it is illegal tochange the curve-fitting method in the middle of a multiply-linked object.Griffin Menu SummaryThe following is a summary of all menus use in Griffin and their contentsMaster menualways present on screenG?fr bsrs rs r/sr `2s r _)sr ]s r? \ 9! ZF Y U5sr) TVM RF QN-8 O^ NFN K5) I31 Ha F># E 3. CY BF @~[ =Ssr8 ;sr)sr :K6. 8+7 7BG 5 21srs 1rQ /C" .T ,D *L ){K ' V &sQ $K #jA !Y b 7H b /U J pi rI $R L>\x14Edit: Toggle display of edit and shape menusObjects: Toggle display of object menuStyle: Toggle display of style menuFiles: Toggle display of file menuTransform: Toggle display of transform menuOverlap: Toggle display of overlap menuView: Toggle display of view menuQuit: Exit from system [displays confirmation menu]Edit menucontrolled by Edit' toggle on master menuDraw: Draw or complete open shapeClose: Draw or complete closed shapeDraw Link: Draw segment of linked objectModify: Edit object [erases object, leaving control points visible]Back Link: Edit last link [erases link, leaving control points visible]Box: Draw rectangle [requires 2 control points]Spline Type: Toggle display of spline type menuShape menu (one-of-many)controlled by Edit' toggle on master menuLine: Draw object with straight linesCurve: Draw object with spline curvesSpline type menu (one-of-many)controlled by Spline Type' toggle on edit menuNatural: Arc Length: Natural splines, arc length parameterized [default]Natural: Unit Mesh: Natural splines, unit mesh parameterized [same as Draw]Bezier Curve: 4 points determine a curve which goes through thefirst and fourth pointB-Spline: 4 points determine a curve which does not interpolate any point.Cannot be used in linked objects.Catmull-Rom Curves: 4 points determine a curve which goes through thesecond and third points. Cannot be used in linked objects.Object menucontrolled by Objects' toggle on master menuDelete: Deletes selected object(s)Undo: Cancel last deletionSelect All: Select all objectsDeselect All: Deselect all objectsCluster: Make selected objects into a clusterUncluster: Break selected objects out of clustersTransfer: Move selected object(s) to alternate viewFile menucontrolled by Files' toggle on master menuPress: Write press fileSave File: Write Griffin fileRestore: Read Griffin fileEmpty menu slot: [Used for supplying new file names]File name 1File name 2.. [Names of all .griffin' files on disk].File name nTransform menucontrolled by Transform' toggle on master menuMap: Map 1, 2, or 3 points into 1, 2, or 3 points.ScaleX: Scale in X dimensionScaleY: Scale in Y dimensionScale: Scale in both dimensionsG?frb-`'_$]#\,Z(Y"WsTVr4R"QN%O)NFs/Lrs-K>rsIr0FCE &C&@[N>@s=Sr*s ;r@:K8 A7B!5F4:;19/#.,*#){.'2&s4#G5! ?7s#r / 's'r >o3  g  7]o15Rotate: Rotate around a pointUse Copy: Apply transformation to copy [leaves original object undisturbed]Overlap menucontrolled by Overlap' toggle on master menuTop: Move to top of overlap orderBottom: Move to bottom of overlap orderUp One: Move up one position in overlap orderDown One: Move down one position in overlap orderView menucontrolled by View' toggle on master menuRefresh: Erase and repaint displayGrid: Toggle display of control gridMerge: Merge all objects in alternate view into current viewSwitch: Switch to alternate viewStyle menucontrolled by Style' toggle on master menuIndicate: Set current style to style of selected objectApply: Apply current style to selected objectColor Style: Toggle display of line and area color menusShape Style: Toggle display of thickness and color control menusText Style: Toggle display of font, anchoring, string rotation,and character rotation menusThickness menu (one-of-many)controlled by Shape Style' toggle on style menu1: Set line thickness to 1 Alto pixel2: Set line thickness to 2 Alto pixels3: Set line thickness to 3 Alto pixels4: Set line thickness to 4 Alto pixelsColor control menu (one-of-many)controlled by Shape Style' toggle on style menuFilled: Fill closed objects with current area colorOutlined: Outline closed objects with current line colorBoth: Outline and fill closed objects with current line and area colorsLine color menu (one-of-many)controlled by Color Style' toggle on style menuLines: [Inactive text]List of available color namesArea color menu (one-of-many)controlled by Color Style' toggle on style menuAreas: [Inactive text]List of available color namesFont menu (one-of-many)controlled by Text Style' toggle on style menuFont name 1Font name 2.. [Names of all fonts in Griffin.fonts].Font name nAnchoring menu (one-of-many)controlled by Text Style' toggle on style menuLeft: Anchor caption at leftCentered: Anchor caption at centerRight: Anchor caption at rightString rotation menu (one-of-many)controlled by Text Style' toggle on style menu0 d: Caption reads from left to right90 d: Caption reads from bottom to topG?frb`s$]nr:["Zf(X.W^2T34R#Q+%O=N#!J6Is8G.Fk9DACc@A>M=/&;':''8'5x.#342p90I-N,<s*r'N& s$r!YG Q Is'rA L # ^G  & V'l 7]16180 d: Caption reads from right to left270 d: Caption reads from top to bottomCharacter rotation menu (one-of-many)controlled by Text Style' toggle on style menu0 char d: Orient characters normally90 char d: Orient characters facing top of page180 char d: Orient characters upside-down270 char d: Orient characters facing bottom of pageG?frb(`(]nG [%Zf0X*W^4ZW9/3 TIMESROMAN  TIMESROMAN TIMESROMAN  TIMESROMAN  TIMESROMAN   $5) 2 ;=@ J P Y djprj/us) griffin.bravoStoneOctober 28, 1981 11:21 AM