AXIS, GSYMBL, etc. (Obsolete)
axis | scale, line |
csymbl | symbol, number |
gsymbl, chtype, pchar, pnorm, psubsc, psupsc, pshift
AXIS
NAME
axis - Draw a coordinate axis
SYNOPSIS
call axis(xp, yp, text, ltx, axlen, angle, firstv, deltav)
xp, yp [float] Coordinates (in cm) of Start point
text [char] Label string for Axis Name
ltx [int] string length (must not be 0)
If positive, the Label is written on counter-clockwise side
of the axis. Otherwise on clockwise side.
axlen [float] Length (in cm) of Axis (no less than 2cm)
angle [float] Axis direction (in degrees counter-clockwise from +X)
firstv [float] Initial value of graduation
deltav [float] Scaling for 1cm increment of axis
(The value 0. is treated as 1.0/cm.)
EXAMPLE
dimension p(2,12)
do 10 i=1,10
p(1,i) = float(i-1)
p(2,i) = sqrt(p(1,i))
10 continue
call scale(p(1,1), 10., 10, 2)
call scale(p(2,1), 10., 10, 2)
call psopn('axis.ps', 'a4p')
call plots(2., 2.)
call axis(1., 1., 'Axis-X', -6, 10., 0., p(1,11), p(1,12))
call axis(1., 1., 'Y=sqrt(X)', 9, 10., 90., p(2,11), p(2,12))
call line(p(1,1), p(2,1), 10, 2, 1, 4)
call plote
call pscls
stop
end
SCALE, LINE
NAME
scale - Automatic scaling for given array data
line - Draw array data
SYNOPSIS
call scale(va, axlen, npt, inc)
va [float] Coordinate data array (or its 1st element location)
axlen [float] Length (in cm) of Axis (no less than 2cm)
npt [int] Number of data pointsino less than 2)
inc [int] Interval of each data in the array (must be positive)
Initial value (firstv) and scaling (deltav) are given in the
elements 'va(npt*inc + 1)' and 'va(npt*inc + inc + 1)', provided
the 1st data element is va(1). The array must have enough size.
call line(xa, ya, npt, inc, ltype, mark)
xa, ya [float] Coordinate data arrays (or its 1st element location)
npt [int] Number of data pointsimust be positive)
inc [int] Interval of each data in the array (must be positive)
ltype [int] If ltype>=0, data points are connected by solid line.
If ltype<>0, marks are drawn on each |ltype| points.
mark [int] Center-symbol code number specifying the mark.
Before calling this routine, Initial value and scaling for both
arrays 'xa' and 'ya' must be established, by calling 'scale' or
otherwise. [The relative positions of them from the 1st element
are (npt*inc) and (npt*inc + inc).]
CSYMBL
NAME
csymbl - Draw center-symbol
SYNOPSIS
call csymbl(xx, yy, size, ic, angle, mode)
xx, yy [float] Coordinates (in cm) of the center of the symbol to draw
mode [int] If even, draw line to (xx,yy),
If odd, move to (xx,yy) without drawing.
size [float] Size (in cm) of center-symbol
ics [int] Center-symbol code number (0 - 39) to draw.
If ics>40 or ics<0, no symbol is drawn but the pen is moved
according to xx,yy,mode values.
angle [float] Rotation angle (in degrees) to draw center-symbol
Center-SYMBOL Strokes
SYMBOL, NUMBER
NAME
symbol - Draw a symbol string (using 'gsymbl' routine)
number - Draw a number string (using 'gsymbl' routine)
SYNOPSIS
call symbol(xp, yp, high, text, ang, nc)
call number(xp, yp, high, fv, ang, ndec)
xp, yp [float] Coordinates (in cm) to start to draw string
If xp=yp=999., start from temporal pen location, and
if either xp or yp is 999., the value of temporal pen
location is used for the corresponding coordiante.
high [float] Height (in cm) of character size
ang [float] Direction angle to draw text (in degrees from +X axis)
text [char] Text string to draw (or center-symbol code)
nc [int] Length (number of bytes) of text string
If positive, length (number of bytes) of text string,
otherwise, the 1st element of 'text' is regarded as the
center-symbol code to draw. If nc<=-2, draw line to (xp,yp).
fv [float] Numerical value to draw number
(Integer digits must not exceed 21 including minus sign.)
ndec [int] Number of digits after decimal point to draw
If negative, decimal point is not drawn, and the [|ndec| - 1]
lower digits of integer part are not drawn if ndec<=-2.
(If ndec>9 or ndec<-9, it is regarded as ndec=9 or ndec=-9.)
GSYMBL, CHTYPE, PCHAR, PNORM, PSUBSC, PSUPSC, PSHIFT
NAME
gsymbl - Draw a character string of right angle style
(which causes redefinition of 'chtype')
chtype - Define style of character string
pchar - Draw a character string with the predefined style
pnorm / psubsc / psupsc
- Force character Normal / Subscript / Superscript mode
pshift - Assign shift function codes
Here, the valid character codes are limited to Alphabets (26 capital and
26 small letters), Numerals (10 letters), SPACE, and 32 Special letters
bellow [95 letters in total].
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
SYNOPSIS
call gsymbl(xx, yy, high, bcd, angle, nc)
call chtype(angle, slope, high, ratio)
call pchar (bcd, nc, xx, yy, kk)
bcd [char] Character string to draw
nc [int] Number of characters to draw (including shift codes)
xx, yy [float] Coordinates (in cm) of base point to draw string
kk [int] If kk=0, xx and yy are neglected, and start drawing from the
temporal pen location.
high [float] Height (in cm) of character size (h)
angle [float] Direction angle (in degrees) to draw text (a)
slope [float] Inclination (in degrees) of character (s)
ratio [float] Horizontal exaggeration ratio (r)
call pnorm
call psubsc
call psupsc
call pshift(cs)
cs [char] Two character codes to be assigned for shift functions,
start/end of subscript and start/end of superscript.
If the code is other than 95 valid code above or it is
a SPACE code, the corresponding shift function is disabled.
GSYMBL Strokes and EXAMPLES