DESCRIPTION: This module tests the bundled entries and other workstation facilities for interior. These entries control the appearance of fill area and fill area set when they are under bundled (as opposed to individual) control. SEMANTIC REQUIREMENTS: *** *** *** *** Interior index inquiry *** *** *** ***#F 303
SR1. If current element is interior index then <inquire current element type and size> returns the element type as interior index and the appropriate element size.
#F 304
SR2. If current element is interior index then <inquire current element content> returns the appropriate data for interior index.
*** *** *** Interior attribute traversal binding *** *** ***#F 28
SR3. Upon traversal of a "fill area" or "fill area 3" element, the current interior index in the PTSL is bound to the resulting primitive.
#F 28
SR4. Upon traversal of a "fill area set" or "fill area set 3" element, the current interior index in the PTSL is bound to the resulting primitive.
*** *** *** Interior index: element creation *** *** ***#F 28
SR5. <Set interior index> creates a "set interior index" element (in the open structure), whose associated value is taken from the function's parameter.
*** *** Interior index: effect during traversal *** ***#F 28
SR6. Upon traversal of a "set interior index" element, the current interior index entry in the PHIGS traversal state list (PTSL) is set to the element's associated value.
#F 28
SR7. When a fill area or fill area set is displayed, if its bound interior index is defined on the workstation, then the indicated bundle is the source for the bundled aspects of that interior.
#F 28
SR8. When a fill area or fill area set is displayed, if its bound interior index is undefined on the workstation, then bundle number 1 in the interior bundle table is the source for the bundled aspects of that interior.
*** *** *** Interior index: network traversal *** *** ***#F
SR9. At the start of a top-level traversal of a structure network (not a sub-traversal caused by execute structure), the current interior index of the PTSL is set to 1.
#F 113
SR10. As part of the PTSL, the current interior index is saved (but not changed) by execute structure and then, upon completion of the sub-traversal of the invoked network, restored to the saved value.
*** *** *** Interior Representation *** *** ***#F 66
SR11. <Set interior representation> causes an entry to be defined.
#F 66
SR12. <Set interior representation> sets the interior bundle's interior style, interior style index, and interior colour index.
#F 228
SR13. <Inquire list of interior indices> returns the list of defined interior indices.
#F 228 229
SR14. <Inquire interior representation> works for all defined entries.
#F 229
SR15. <Inquire interior representation> returns the interior bundle's interior style, interior style index, and interior colour index, as set when type of returned values specified as SET.
#F 229
SR16. <Inquire interior representation> returns the interior bundle's interior style, interior style index, and interior colour index, as realized when type of returned values specified as REALIZED.
#F 228 229
SR17. <Inquire interior representation> returns the representation for bundle number 1, if type of returned values is REALIZED, and bundle index is undefined.
*** *** *** Maximum size of bundle table *** *** ***#F 285
SR18. <Inquire workstation state table lengths> returns the maximum size of interior bundle table.
#F 66 285
SR19. There are at least 20 settable entries available in the interior bundle table.
*** *** *** Predefined bundle facilities *** *** ***#F 270
SR20. <Inquire interior facilities> returns the number of predefined interior bundle entries.
#F 271
SR21. <Inquire predefined interior representation> returns the interior style, interior style index, and interior colour index for a predefined interior bundle.
#F 270 271
SR22. All workstation types have at least 5 predefined interior bundles.
#F 271
SR23. No two of the first 5 predefined interior bundles have identical sets of attributes.
#F 271
SR24. The n predefined interior bundles in the Workstation Description Table (WDT) are indexed as 1-n.
#F 228 229 271 3
SR25. Immediately after <open workstation>, for each WDT predefined interior entry there exists a Workstation State List (WSL) interior entry with the same attributes, including the same interior index.
#F 228 229 270 3
SR26. Immediately after <open workstation>, the interior bundle table contains nothing but the entries initialized from the WDT predefined interior bundle table.
*** *** *** Validity of predefined bundles *** *** ***#F 270 271
SR27. Each predefined interior bundle has an interior style within the list of available interior styles.
#F 271 274
SR28. Each predefined interior bundle with PATTERN interior style has an interior style index within range of the predefined pattern indices.
#F 270 271
SR29. Each predefined interior bundle with HATCH interior style has an interior style index within range of the predefined hatch indices.
#F 271 277
SR30. Each predefined interior bundle has a color index within range of the predefined color indices.
*** *** *** interior style support *** *** ***#F 66 229 270 271
SR31. The only valid values in the list of available interior styles are: HOLLOW, SOLID, PATTERN, HATCH, and EMPTY.
#F 270
SR32. The list of available interior styles returned by <inquire interior facilities> must contain HOLLOW and EMPTY.
#F 66 270
SR33. All the interior styles in the list of available interior styles are valid and realizable for the workstation.
#F 270 274
SR34. If PATTERN interior style is supported on the workstation, there must be at least 1 predefined pattern index.
#F 28 62 66
SR35. When a fill area or fill area set is displayed, if its interior style ASF is bundled, then its interior style aspect is taken from the interior bundle determined by the interior index.
#F
SR36. When available on the workstation to which posted, interior styles appear as hollow, solid, pattern, hatch, and empty, in accordance with the intuitive description implied by the name of each style.
*** *** interior style index support *** ***#F 66
SR37. Except for pattern index, any interior style index, whether or not defined for that workstation, may be specified for an interior bundle when invoking <set interior representation>.
#F 66
SR38. Any positive pattern index, whether or not defined for that workstation, may be specified for an interior bundle when invoking <set interior representation>.
#F 28 62 66
SR39. When a fill area or fill area set is displayed, if its interior style index ASF is bundled, then its interior style index aspect is taken from the interior bundle determined by interior index.
#F 66 229
SR40. For PATTERN and HATCH interior styles, when a fill area or fill area set is displayed, if its interior style index is defined on the workstation, then the interior style index is realized as itself.
#F 66 229
SR41. For PATTERN and HATCH interior styles, when a fill area or fill area set is displayed, if its interior style index is undefined on the workstation and interior style index #1 is available, then it is realized as index #1.
#C Pattern index #1 should always be available; see SRs in 04.02.05.04. Hatch index #1 may or may not be supported. If not, then the effect of requesting an unavailable hatch style (either #1 or some other unsupported style) is workstation dependent. *** *** *** hatch index support *** *** ***#F 270
SR42. For workstations supporting HATCH interior style, at least 3 hatch styles must be available.
#F 270
SR43. If HATCH interior style is not available, the number of available hatch styles returned by <inquire interior facilities> is 0.
#F 270
SR44. For HATCH interior style, the absolute value of the number of available hatch styles types returned from <inquire interior facilities> indicates the length of the list of available hatch styles.
#F 270
SR45. For HATCH interior style, if the number of available hatch styles types is positive, the list of available hatch styles contains any implementation dependent types.
#F 270
SR46. For HATCH interior style, if the number of available hatch styles is negative, the list of available hatch styles does not contain any implementation dependent types.
#F 270
SR47. For HATCH interior style, positive hatch styles are registered; non-positive hatch styles are implementation dependent.
#F
SR48. When available on the workstation to which posted, hatch styles greater than 0 appear as specified in the ISO register.
#F
SR49. When available on the workstation to which posted, hatch styles less than 1 appear as specified in the implementor documentation.
*** *** interior color index support *** ***#F 66
SR50. Any non-negative interior color index, whether or not defined for that workstation, may be specified for an interior bundle when invoking <set interior representation>.
#F 28 62 66
SR51. When a fill area or fill area set is displayed, if its interior color index ASF is bundled, then its interior color index is taken from the interior bundle determined by the interior index.
#F 229 235
SR52. When a fill area or fill area set is displayed, if its interior color index is available on the workstation, then the interior color index is realized as itself.
#F 229 235
SR53. When a fill area or fill area set is displayed, if its interior color index is undefined, then the interior color index is realized as color index 1.
LOCAL DICTIONARY:
Functions --- 003: popwk <open workstation> 028: psii <set interior index> 062: psiasf <set individual asf> 066: psir <set interior representation> 113: pexst <execute structure> 228: pqeii <inquire list of interior indices> 229: pqir <inquire interior representation> 235: pqeci <inquire list of colour indices> 270: pqif <inquire interior facilities> 271: pqpir <inquire predefined interior representation> 274: pqpaf <inquire pattern facilities> 277: pqcf <inquire colour facilities> 285: pqwksl <inquire workstation state table lengths> 303: pqcets <inquire current element type and size> 304: pqceco <inquire current element content> Data Structures --- 2 ... phigs_description_table 2.14 ... default_interior_attributes 2.14.1 ... default_interior_index 3 ... phigs_traversal_state_list 3.5 ... current_interior_attributes 3.5.1 ... current_interior_index 3.5.5 ... current_interior_style_asf 3.5.6 ... current_interior_style_index_asf 3.5.7 ... current_interior_colour_index_asf 5 ... workstation_state_list 5.12 ... interior_entry 5.12.1 ... number_of_interior_bundle_table_entries 5.12.2 ... interior_bundle_table 5.12.2.1 ... interior_index 5.12.2.2 ... interior_style 5.12.2.3 ... interior_style_index 5.12.2.4 ... interior_colour_index 5.14 ... pattern_entry 5.14.2 ... pattern_table 5.14.2.1 ... pattern_index 5.15 ... colour_entry 5.15.3 ... colour_table 6 ... workstation_description_table 6.14 ... interior_entry 6.14.1 ... interior_facilities 6.14.1.1 ... number_of_available_interior_styles 6.14.1.2 ... list_of_available_interior_styles 6.14.1.2.1 ... interior_style 6.14.1.3 ... number_of_available_hatch_styles 6.14.1.4 ... list_of_available_hatch_styles 6.14.1.5 ... number_of_predefined_interior_indices 6.14.2 ... predefined_interior_bundle_table 6.14.2.1 ... interior_style 6.14.2.2 ... interior_style_index 6.14.2.3 ... interior_colour_index 6.16 ... pattern_entry 6.16.1 ... pattern_facilities 6.16.1.1 ... number_of_predefined_pattern_indices 6.17 ... colour_entry 6.17.2 ... colour_facilities 6.17.2.4 ... number_of_predefined_colour_indices 6.21 ... maximum_table_lengths 6.21.4 ... maximum_number_of_interior_bundle_table_entries 7 ... structure_state_list 7.3 ... list_of_structure_elements 7.3.1 ... graphical_primitives 7.3.1.9 ... fill_area_3 7.3.1.10 ... fill_area 7.3.1.11 ... fill_area_set_3 7.3.1.12 ... fill_area_set 7.3.2 ... primitive_attributes 7.3.2.1 ... bundle_index_attributes 7.3.2.1.4 ... interior_index SEMANTIC CROSS-REFERENCES: 04.02.05.04/SR13 04.02.05.04/SR14 LOCAL SUBROUTINES: DISINB selects SAMP predefined bundles at random from the interior bundle table which are distinct in all their attributes. If there are not SAMP completely distinct bundles, DISINB tries to maximize the number of different attributes. DRWINT draws a set of rectangles where the actual interiors are drawn using the specified bundle values, and a set of expected interiors are drawn using the attribute values returned by <inquire predefined interior representation>. It draws the expected interior incorrectly at the specified position.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.
You may inspect either the design or code for this program.