h49608
s 00005/00004/00049
d D 1.3 83/03/30 22:44:48 mjb 3 2
c changed clipping
e
s 00008/00007/00045
d D 1.2 83/02/02 19:43:18 tes 2 1
c added integer to byte packing and unpacking
e
s 00052/00000/00000
d D 1.1 83/01/29 16:36:22 tes 1 0
c date and time created 83/01/29 16:36:22 by tes
e
u
tes
mjb
U
t
T
I 1
subroutine dsptxt (anobuf)
########################################################################
#                                                                      #
#          THIS MATERIAL IS CONFIDENTIAL AND IS FURNISHED UNDER        #
#          A WRITTEN LICENSE AGREEMENT.  IT MAY NOT BE USED,           #
#          COPIED OR DISCLOSED TO OTHERS EXCEPT IN ACCORDANCE          #
#          WITH THE TERMS OF THAT AGREEMENT.                           #
#                                                                      #
#          COPYRIGHT (C) 1982 GRAPHIC SOFTWARE SYSTEMS INC.            #
#          ALL RIGHTS RESERVED.                                        #
#                                                                      #
#     Function: Display whatever annotation text is currently defined  #
#                                                                      #
#     Input Parameters:                                                #
#            anobuf - anotation buffer                                 #
#                                                                      #
#     Output Parameters:                                               #
#            None                                                      #
#                                                                      #
#     Routines Called:                                                 #
#            None                                                      #
#                                                                      #
########################################################################
SHORTINT anobuf(1)
D 3
real scale, size, x, y
E 3
I 3
real xscale, yscale, size, x, y
E 3
integer i, j, k, string(80)
D 2
integer font, color
E 2
I 2
integer font, color, unpk2b
E 2

D 3
data scale /.0038146972 /   # 1.25/327.68 
E 3
I 3
data xscale /.00376767/      # 100/81/327.68 
data yscale /.00386298/      # 100/79/327.68
E 3

i = 1
while (anobuf(i) != NUL) {
D 2
   x = scale*anobuf(i+1)
   y = scale*(anobuf(i+2) - 6882)  # 6882 is the value of the annotation menu
E 2
I 2
D 3
   x = scale*unpk2b (anobuf(i+TEXTxITEMxX))
E 3
I 3
   x = xscale*unpk2b (anobuf(i+TEXTxITEMxX))
E 3
   # 6882 is the value of the annotation menu
D 3
   y = scale*(unpk2b (anobuf(i+TEXTxITEMxY)) - 6882)
E 3
I 3
   y = yscale*(unpk2b (anobuf(i+TEXTxITEMxY)) - 6882)
E 3
E 2
				   #   lower seperator line height (y value)
D 2
   font = anobuf(i+3)
   color = anobuf(i+4)
   size = anobuf(i+5)
E 2
I 2
   font = anobuf(i+TEXTxITEMxFONT)
   color = anobuf(i+TEXTxITEMxCOLOR)
   size = anobuf(i+TEXTxITEMxSIZE)
E 2
   call titlat (font, size, color, 0.0, 1)
D 2
   j = i + 6
E 2
I 2
   j = i + TEXTxITEMxSTRING
E 2
   k = 0
   while (anobuf(j) != NUL){
      k = k + 1
      string(k) = anobuf(j)
      j = j + 1
      }
   call title (x, y, k, string)
   i = i + anobuf(i)
   }

return
end
E 1
