MODIFICATIONS TO RFC #177
This RFC is intended to modifiy the proposal for a device
independent graphical display description discussed in RFC #177. Thanks
are due to Stan Mantiply of Ames for his ideas. The main changes are in
the defini- tion of coordinate areas to avoid one problem encountered
with the old definition and to provide more flexibility. Terms used are
those defined in RFC #177.
The problem encountered in the previous proposal was that the areas
of the NGS (network standard graphics screen), which were supposed to be
absolute boundaries, could be crossed when a list was executed within
that space. Scaling of lists was also awkwardly done with specific
commands in the network standard graphic display list (NGDL).
Coordinates will still be defined with 16 bit unsigned normalized
fractions. This will leave the resolution of the picture up to the de-
vice which eventually receives the NGDL. The values will not now be
tied to the NGS or an area of the screen, but will be fractional
displace- ments from the lower left corner of the screen, an area, or an
image space.
Areas will still be rectangular and will be allowed to overlap, but
not contain another area completely. The attributes of an area are: its
16 bit integer name, by which it may be manipulated, two (x,y) pairs
which will define its lower left and upper right corners with respect to
the NGS. No list executed in an area may cross its boundaries. Within
an area may be any number of image spaces which are dynamically defined
with the execution of a list and define its relationship to the contain-
ing area.
The list item types 7 and 8 shall be changed from EXECUTE LIST
(Name,x,y) and COPY LIST (Name,x,y) to EXECUTE LIST
(Name,(Xl,Yl),(Xr,Yr)) and COPY LIST (Name,(Xl,Yl),(Xr,Yr))
respectively. The coordinate pairs (Xl,Yl) and (Xr,Yr) define the image
area of that list as displacements from the lower left corner of the
containing area. If the list executes other lists within it, their
image areas are defined as displacements from the image area of the list
containing the execute command. Thus each list can be scaled
differently each time it is executed and may even be distorted if the
image area defined has different ratios of X and Y lengths. Lists
executed within other lists will have the same relationship to their
containing lists regardless of that lists's rela- tionship to the NGS
area. Since the initial image area is defined rela- tive to the NGSD
area, no overlaps can occur.