4.3BSD/usr/contrib/icon/man/cat2/gpack.2




GPACK(2)              Icon Program Library               GPACK(2)



NNNNAAAAMMMMEEEE
     gpack - graphics package for the Chromatics CG 3999

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     bbbbcccckkkkggggrrrrnnnndddd((((ccccoooollllrrrr))))    set background color
     ____cccchhhhaaaarrrr(((())))          switch to character mode
     cccclllliiiipppp((((mmmmooooddddeeee))))       turn clip mode OOOONNNN/OOOOFFFFFFFF
     cccclllliiiippppppppeeeedddd((((oooobbbbjjjjeeeecccctttt))))  clip an object to window size (internal)
     ccccoooolllloooorrrr((((ccccoooollllrrrr))))      set foreground color
     ccccuuuurrrrccccoooollll((((ccccoooollllrrrr))))     set cursor color
     ddddrrrraaaawwww((((oooobbbbjjjjeeeecccctttt))))     display object
     eeeennnnaaaabbbblllleeee((((ccccoooollllrrrr))))     enable particular color guns
     eeeerrrraaaasssseeee(((())))          clear the screen
     ____ffffiiiillllllll(((())))          turn on fill mode
     ggggiiiinnnniiiitttt(((())))          initialize graphics package
     mmmmooooddddeeee((((nnnneeeewwwwmmmmooooddddeeee))))    set plot submode (internal)
     mmmmoooovvvvccccuuuurrrr((((xxxx,,,,yyyy))))      position cursor (internal)
     ____nnnnooooffffiiiillllllll(((())))        turn off fill mode
     ____nnnnoooorrrroooollllllll(((())))        turn off roll mode
     ____nnnnuuuummmmbbbbeeeerrrr((((nnnn))))       output number (nnnn) (internal)
     ____ppppllllooootttt(((())))          switch to plot mode
     ____ppppooooiiiinnnntttt((((xxxx,,,,yyyy))))      output point (xxxx,yyyy) (internal)
     ____rrrreeeessssttttoooorrrreeee(((())))       reset terminal windows
     ____rrrroooollllllll(((())))          turn on roll mode
     sssseeeettttssssccccaaaalllleeee((((xxxxmmmmiiiinnnn,,,,yyyymmmmiiiinnnn,,,,xxxxmmmmaaaaxxxx,,,,yyyymmmmaaaaxxxx,,,,ccccoooollllmmmmiiiinnnn,,,,rrrroooowwwwmmmmiiiinnnn,,,,ccccoooollllmmmmaaaaxxxx,,,,rrrroooowwwwmmmmaaaaxxxx))))
                      scaling
     ssssccccaaaalllleeee((((pppptttt))))        scale a point
     ____ssssccccaaaalllleeee((((mmmmooooddddeeee))))     turn OOOONNNN/OOOOFFFFFFFF scaling
     tttteeeexxxxtttt((((xxxx,,,,yyyy,,,,ssss))))      output string ssss at point (xxxx,yyyy)
     wwwwiiiinnnnddddoooowwww((((wwww))))        switch to window wwww (1 to 4)
     wwwwssssiiiizzzzeeee((((xxxxmmmmiiiinnnn,,,,yyyymmmmiiiinnnn,,,,xxxxmmmmaaaaxxxx,,,,yyyymmmmaaaaxxxx))))
                      set window size
     xxxxffffiiiitttt((((xxxx))))          scale x-coordinate (internal)
     ____xxxxyyyyddddeeeellll((((xxxxddddeeeellllttttaaaa,,,,yyyyddddeeeellllttttaaaa))))output incremental motion (internal)
     yyyyffffiiiitttt((((yyyy))))          scale y-coordinate (internal)

     _G_p_a_c_k is a package designed to interface to the Chromatics
     CG 3999 Color Graphics Terminal.  The user must be familiar
     with the Chromatics terminal and its capabilities.  _G_p_a_c_k
     maintains information on the state of each hardware window
     and avoids the transmission of redundant commands.  The fol-
     lowing objects, defined as records, are known to _g_p_a_c_k:

          ppppooooiiiinnnntttt((((xxxx,,,,yyyy))))
          ddddooootttt((((xxxx,,,,yyyy))))
          lllliiiinnnneeee((((aaaa,,,,bbbb))))
          bbbbooooxxxx((((aaaa,,,,bbbb))))
          cccciiiirrrrcccclllleeee((((cccceeeennnntttteeeerrrr,,,,rrrraaaaddddiiiiuuuussss))))
          aaaarrrrcccc((((cccceeeennnntttteeeerrrr,,,,rrrraaaaddddiiiiuuuussss,,,,ssssttttaaaarrrrtttt,,,,ssssttttoooopppp))))
          ppppooooiiiinnnnttttssss((((ppppttttssss))))      a collection of points.
          lllliiiinnnneeeessss((((ppppttttssss))))       a collection of points, joined by vectors
          ppppoooollllyyyyggggoooonnnn((((ppppttttssss))))     a collection of points, joined and closed by vectors



Version 5.9    The University of Arizona - 8/12/84              1






GPACK(2)              Icon Program Library               GPACK(2)



          iiiinnnnccccddddoooottttssss((((ssssttttaaaarrrrtttt,,,,mmmmoooottttiiiioooonnnnssss))))start point and list of motions
          mmmmoooottttiiiioooonnnn((((xxxxddddeeeellll,,,,yyyyddddeeeellll))))an incremental motion

     The procedure ddddrrrraaaawwww can display any of these objects, with or
     without scaling.  Additionally, ddddrrrraaaawwww accepts a co-expression
     that generates these objects.

     Two record types are used internally:

     wwwwiiiinnnndddd((((ppppmmmmooooddddeeee,,,,ssssmmmmooooddddeeee,,,,ccccmmmmooooddddeeee,,,,ffffmmmmooooddddeeee,,,,rrrrmmmmooooddddeeee,,,,ppppssssuuuubbbbmmmmooooddddeeee,,,,ffffcccc,,,,bbbbcccc,,,,lllloooowwwweeeerrrrlllleeeefffftttt,,,,uuuuppppppppeeeerrrrrrrriiiigggghhhhtttt))))
     ssssccccaaaalllliiiinnnngggg((((xxxxssssllllooooppppeeee,,,,xxxxiiiinnnntttteeeerrrr,,,,yyyyssssllllooooppppeeee,,,,yyyyiiiinnnntttteeeerrrr))))

     where

     ppppmmmmooooddddeeee is OOOONNNN if window is in plot mode.
     ssssmmmmooooddddeeee is OOOONNNN if scaling is active.
     ccccmmmmooooddddeeee is OOOONNNN if clipping is active.
     ffffmmmmooooddddeeee is OOOONNNN if fill is active.
     rrrrmmmmooooddddeeee is OOOONNNN if roll is active.
     ppppssssuuuubbbbmmmmooooddddeeee is the plot submode.
     ffffcccc is the foreground color.
     bbbbcccc is the background color.
     lllloooowwwweeeerrrrlllleeeefffftttt,,,, uuuuppppppppeeeerrrrrrrriiiigggghhhhtttt are the window bounds.
     xxxxssssllllooooppppeeee,,,, xxxxiiiinnnntttteeeerrrr are the x-coordinate scaling constants
     yyyyssssllllooooppppeeee,,,, yyyyiiiinnnntttteeeerrrr are the y-coordinate scaling constants

     The defaults for all windows are:

     wwwwiiiinnnndddd((((OOOOFFFFFFFF,,,,OOOOFFFFFFFF,,,,OOOOFFFFFFFF,,,,OOOOFFFFFFFF,,,,OOOONNNN,,,,"""""""",,,,NNNNOOOOCCCCOOOOLLLLOOOORRRR,,,,NNNNOOOOCCCCOOOOLLLLOOOORRRR,,,,ppppooooiiiinnnntttt((((0000,,,,0000)))),,,,ppppooooiiiinnnntttt((((XXXXMMMMAAAAXXXX,,,,YYYYMMMMAAAAXXXX))))))))
     ssssccccaaaalllliiiinnnngggg((((1111,,,,0000,,,,1111,,,,0000))))


     The following values are predefined globals, and should not
     be reassigned:
     MMMMOOOODDDDEEEE,,,, EEEESSSSCCCC      used internally
     OOOONNNN,,,, OOOOFFFFFFFF        mode settings
     XXXXMMMMAAAAXXXX,,,, YYYYMMMMAAAAXXXX     maximum screen addresses
     DDDDOOOOTTTT,,,,VVVVEEEECCCCTTTTOOOORRRR,,,,RRRREEEECCCCTTTTAAAANNNNGGGGLLLLEEEE,,,,CCCCIIIIRRRRCCCCLLLLEEEE,,,,AAAARRRRCCCC,,,,CCCCOOOONNNNCCCCVVVVEEEECCCCTTTT,,,,IIIINNNNCCCCDDDDOOOOTTTT
                    plot submodes
     BBBBLLLLAAAACCCCKKKK,,,,BBBBLLLLUUUUEEEE,,,,GGGGRRRREEEEEEEENNNN,,,,CCCCYYYYAAAANNNN,,,,RRRREEEEDDDD,,,,MMMMAAAAGGGGEEEENNNNTTTTAAAA,,,,YYYYEEEELLLLLLLLOOOOWWWW,,,,WWWWHHHHIIIITTTTEEEE,,,,BBBBLLLLIIIINNNNKKKK
                    colors

     The following globals are used internally:
     ____wwwwnnnnoooo           current window (1 to 4), initially 1
     wwwwiiiinnnnddddoooowwww         list of window attributes
     wwwwssssccccaaaalllleeee         list of window scaling factors

     The procedure _g_i_n_i_t() must be called to initialize global
     constants and set window attributes at the start of any pro-
     gram using _g_p_a_c_k.  Procedures that are marked `internal' are
     intended primarily for internal use by _g_p_a_c_k.  Some pro-
     cedures are generators that reverse their effects.



Version 5.9    The University of Arizona - 8/12/84              2






GPACK(2)              Icon Program Library               GPACK(2)



SSSSEEEEEEEE AAAALLLLSSSSOOOO
     worm(6)

DDDDEEEEFFFFIIIICCCCIIIIEEEENNNNCCCCIIIIEEEESSSS
     Object clipping has not been implemented.  rrrraaaaddddiiiiuuuussss is not
     scaled for cccciiiirrrrcccclllleeee and aaaarrrrcccc.

AAAAUUUUTTTTHHHHOOOORRRR
     Stephen B. Wampler














































Version 5.9    The University of Arizona - 8/12/84              3