Design: 04.02.05.02/P11

This is an abstract, language-independent design. Grim details may be found in the corresponding source code. You may return to the documentation for the module containing this program design, or to the entire hierarchical table of topics covered by the PVT.


PROGRAM 11: Interior bundle index

CHARACTERISTICS: ynny

OPERATOR SCRIPT:

DEFINED INTERIOR INDICES: All interiors but one are identical
(drawn with the same attribues).  Identify the interior that is
different.

UNDEFINED INTERIOR INDICES: A circle is drawn with several
rectangular interiors beneath it.  Normally, all of these will
have the same attributes as the circle. Count up and report the
number of rectangles which match the circle in interior style,
interior style index (if applicable), and color.

DESIGN:

set all ASFs to BUNDLED, except edge flag
set edge flag off to distinguish between hollow and empty styles
set pattern size to .03,.03

<inquire workstation state table lengths> to determine maximum
   number of entries in interior table
szbt   = maximum size of bundle table

<inquire interior facilities> to determine
   altsty = alternative interior style to hollow

*** *** ***   interior index   *** *** ***

TEST: #SR 3 4 5 6 7
      "A defined interior index should cause the addressed
       entry in the bundle table to be used when rendering an
       interior."

bundis = number of bundles to be displayed = min(8, szbt)
initialize all of bundis to: interior style HOLLOW,
                             interior style index 1
                             color index 1

bundif = randomly selected bundle from bundis
set bundif = interior style       = altsty
             interior style index = 2
             color      = 2

alternate between fill area and fill area set
Display and label the interior for each bundle in bundis

OPQA/DEFINED INTERIOR INDICES: which interior is different?
pass/fail depending on (interior with attributes from bundle #bundif
                        selected)

TEST: #SR 3 4 5 6 8
      "An undefined interior index should cause bundle number
       1 in the interior bundle table to be used when rendering
       an interior."

set index #1 in bundle table to interior style       = altsty
                                interior style index = 3
                                interior color       = 3

u1,u2,u3 = 3 undefined, positive indices - all greater than
  maximum defined index in bundle table (szbt)
explct = number of explicit interiors using bundle #1 = random integer
   from 0 to 4

draw circle with bundle index 1

display interleaved:
  three interiors using bundle index u1,u2,u3,
  explct interiors using bundle index 1

OPQA/UNDEFINED INTERIOR INDICES: How many of the rectangular
  interiors have the same attributes as the circle?
pass/fail depending on (response = 3+explct)

END PROGRAM 11