Professional Documents
Culture Documents
EhEEE//EEEliE
UNCLASSIFIED 81 MAY 86 DTNSRDCiCMLD-6-1i F/G 9/2 ML
llIlEEEEEEEEEEE
IIIIIIlIIIIlIIII.fl
EEEEElllEEEEllE
lllllllEllEE
'IU2__
.. 82.
~~l
a. k 13 .2
Ail5 I L
Jill'
11.25~ki ____
illy.4
Davi W.Taylor NvlShip Research and Development Center
H- Bethesda, MID 20084-5000
0) GUIDE TO USING
>4 DISPLAY INTEGRATED SOFTWARE
SYSTEM AND PLOTTING LANGUAGE (DISSPLA)
.4-
'V
l~a..I
COMMANDER 00
I
TECHNICAL DIRECTOR 01
STRUCTURES DEPARTMENT 17 l
COMPUTATION, MATHEMATICS
& LOGISTICS DEPARTMENT 18
CENTRAL INSTRUMENTATION
DEPARTMENT 29
.,MNIM
,,, " , .- , '
M.ai
iTIFCLASSIFICATION OF THIS PAC~E l1 9 ,. Y j#
REPORT DOCUMENTATION PAGE
Is REPORT SECURITY CLASSIFICATION 1b. RESTRICTIVE MARKINGS
Unclassified
Za SECURITY CLASSIFICATION AUTHORITY 3 DISTRIBUTIONJ/AVAILABILITY OF REPORT
_____________________________ Approved for Public Release:
2b DECLASSIFICATION1/ OWNGRADING SCHEDULE Distribution Unlimited
4 PERFORMING ORGANIZATION REPORT NUJMBER(S) S MONITORING ORGANIZATION REPORT NUMBER(S)
CMLD-86-18
6c ADDRESS (City, State, and ZIP Code) 7b. ADDRESS (City, State, and ZIP Code)
Bethesda, MD 20084-5000
8a NAME OF FUNDING /SPONSORING 8b. OFFICE SYMBOL 9. PROCUREMENT INSTRUMENT IDENTIFICATION NUMBER
ORGANIZATION OIf applicable)
17 COSATI CODES 18. SUBJECT TERMS (Continue on reverse if necessary and identity by block number)
FILD GRUP SUB-GROUP C,$ er DISSPLA CALLOMP
FIEL
GROP V PRoes S Tektronix Plotting
19 ABSTRACT 1Graphics NSB
19 ABTRACT(Continue on reverse if necessary and idetntify by block number)
This document contains a brief discussion and examples using
Display Integrated Software System and Plotting Language (DISSPLA)
at Central Computer Facility.
DO FORM 1473, 84 MAR 83 APR edition may be used until exhsausted SECURITY CLASSIFICATION OF THIS PAGE
All other editions art obsolete
-w -p 'I
Table of Contents
Introduction................................................. 1
Conventions.................................................. 1
Devices..................................................... 2
Illegal Unit Numbers...................................... 3
Example 1................................................. 5
The Level Structure ......................................... 10
Example 2................................................ 13
Interpolation ............................................... 28
Example 7............................................. 31
Example 8............................................. 35
Post-Processor.............................................. 36
Example 9........................................... 37
3-Dimensional Plotting...................................... 38
Example 10............................................... 41
Example 11............................................... 45
Example 12............................................... 47
Character Sets.............................................. 53
Example 15 ............................................... 55
Instruction Alphabet........................................ 56
Example 16 ............................................... 59
A( i)
. - , . ** V"%
-1- DISSPLA
Introduction
Conventions
ARGUMENTS:
X, IX, LX - Refer to the X-axis
Y, IY, LY - Refer to the Y-axis
I, J, K, M. N - Integer Values
All Others - Real Values
L - String of text
RAY - Array of values
NOTATION:
Accession For
NTIS GRA&I
DTIC TAB
Unannounced EZ]
(2
Justification
By
_Distribution/ . .. .E~t
AvsiLability Codes
Avail and/or
'
71 Special
A-I
-2- DISSPLA
Devices
-5
-3- DISSPLA
0
DEC Terminals:
ioptin - I ( VT125 )
- 2 ( VKIO0 )
- 3 (VT240, VT241 )
- 4 ( DEC PRO 350 )
CALCOMP:
META FILE:
CALL COMPRS
$ fortran myfile
$ dislink myfile
Other Libraries (y or n): n
$ run myfile
PLOTTING COMMENCING
...................
I-TEK 40xx, 2-CALCOMP 1051, 3-TEK 41xx, 4-REGIS (VT240), 5-PRINTER PLOT
Exaple I
2-
a I
0 1 1 S-1~k -
40 50 6. .0 90 1
!"'I 1. . 1 .0
-6- DISSPLA
PROGRAM EXAMPLE1
DIMENSION X(lO), Y(1O)
DATA Y /1, 2, 3, 4, 5, 6, 7, 8, 9, 10/
DATA X /1, 2, 3, 4, 5, 6, 7, 8, 9, 1o/
CALL COMPRS
CALL BGNPL (0)
CALL HEIGHT (0.2)
CALL TITLE ("THIS IS A SIMPLE GRAPH", 22, "X-AXIS", 6
"V-AXIS", 6, 6., 8.)
CALL GRAF (0., 1., 10., 0., 1., 10.)
CALL CURVE (X, Y. 10, 1)
CALL ENDPL (0) {Double quotes are }
CALL DONEP {required on CYBERs}
END
COMMAND-CONNECT,OUTPUT
COMMAND-ATTACH,INFILE,MYPLOT, ID-CAKB
AT CY- 001 SN-SYSSET
COMMAND-ATTACH,DISSPLA
PFN IS DISSPLA
AT CY- 006 SN-SYSSET1
COMMAND-REOUEST,TAPEI0,*PF
COMMAND-ATTACH,NSRDC
PFN IS NSRDC
AT CY- 105 SN-SYSSET1
COMMAND-LIBRARY,DISSPLA,NSRDC
COMMAND-FTN5,i-INFILE,L=O
56100 CM STORAGE USED.
0.020 CP SECONDS COMPILATION TIME.
COMMAND-LGO
PLOTTING COMMENCING
o...................
.....
DISSPLA VERSION 8.2 .....
NO. OF FIRST PLOT 0
COMMAND-RETURNDISSPLANSRDC
COMMAND-ATTACH,DISPOST
PFN IS DISPOST
AT CY= 007 SN=SYSSET1
COMMAND-LIBRARY,DISPOST
COMMAND-POP936
.PROC,PLOT IT.
ATTACH, INFl LE ,MYPLOT, ID-CAKB.
ATTACH,DISSPLA.
REQUEST,PLF ILE,*PF.
ATTACH, NSRDC.
LI BRARYDISSPLA,NSRDC.
FTN5, I-INF ILE,L-O.
LGO.
CATALOG,PLFILE, ID-CAKB.
RETURN,D ISSPLA.NSRDC.
ATTACH,DISPOST.
LIBRARY,DISPOST.
TEK300.
REVERT.
To execute type:
COMMAND-ATTACH,PLOT IT,IDinxxxx
COMMAND-PLOTIT
Level Structure
The axis system cannot be drawn until the sub-plot area and
physical origin are defined. Similarly, curves cannot be drawn
until the axis system is established. Thus, DISSPLA has a level
structure to ensure that all necessary information is present
during the construction of a plot. An error message is printed if
a routine is called at the wrong level.
CALL DEVICE 0 1
6&1
-11- DISSPLA
PROGRAM EXAMPLE2
CALL FRAME
CALL FRAME
END
Example 2
A-k
38 hSISUL~1T4BLPOe
isVern 1 IP
3-ter
-lieD DISSPLA
Once the subplot area has been defined, the next step is to
define the axis system. Below are some of the major routines,
refer to the User's Manual for a more complete description.
I.
-16- DISSPLA
Example
3m 3*
TM Is8sLupxLO TMS18SLOP=OT2
* 3m t " t 3m
IA
______--V a
2"
-18- DISSPLA
To draw a curve:
To thicken curves:
To select a marker:
4'
-19- DISSPLA
This example reads data points into two arrays, then plots
the curve. This object must be drawn to scale, so PAGE is set to
23" X 11". AREA2D then sets the plot size to 20" X 8" (from
within TITLE). SETDEV directs error messages and summary
messages to unit # 3 (FOROO3.DAT on the VAXcluster; TAPE# on the
CYBERs), so that they will not appear on the screen and a
hardcopy is kept. INTAXS will print only the integer values along
the axes, and YAXANG will write the values along the Y axis
horizontally. GRAF sets up the scale of the axes, the X axis will
run from 0 to 20 by steps of 1, the Y axis will run from -4 to +4
by steps of 1. CURVE is then called twice, once to plot the upper
portion, and the second time to plot the lower portion.
i-
-20- DISSPLA
PROGRAM EXAMPLE4
CALL INTAXS
DO 20 1-1,10000
20 CONTINUE
DO 30 1-1,10000
Examele 4
4 4 WI 8 U 2
X*Mhe
-22- DISSPLA
To draw a legend:
1/
-23- DISSPLA
0
To get the length of messages:
PROGRAM EXAMPLE5
DIMENSION IPAX(10000),Y0O),Z(1O)
OPEN(1 ,FILE-'JETDATA' ,STATUS-'OLD')
CALL COMPIRS
CALL BGNPL (0)
CALL SETDEV (2, 2)
CALL SETCLR ('BLUE')
CALL PAGE (12.0, 11.0)
CALL SWISSB
CALL INTAXS
CALL YAKANG (0.)
CALL SHDCHR (90., 1, .002, 1)
CALL TITLE ('IMPACT WINDOW, 100, 'Z - IMPACTS', 100,
'- IMPACTS', 100, 9., 7.)
CALL GRAF (-200., 20., 200., -200., 20., 200.)
CALL SETCLR ('RED')
CALL LINES ('.0000 - .0625$', IPAK, 1)
CALL LINES ('.0625 - .1220$', IPAK, 2)
CALL LINES ('.1250 - .2500$', IPAK, 3)
CALL LINES ('.2500 - .5000$', IPAK, 4)
CALL LINES ('.5000 - .7500$', IPAK, 5)
CALL LINES ('.7500 - 1.000$', IPAK, 6)
CALL LINES ('1.000 - 2.000$1, IPAK, 7)
CALL LINES ('2.000 - 3.000$', IPAK, 8)
CALL LINES ('3-000 - 4.000$', IPAK, 9)
CALL LIKES C' > 4.000$1. (PAK, 10)
CALL MYLEGN ('DEPTH IN INCHES$', 100)
XR - XLEGND (IPAK, 10) + .3
YR - YLEGND (IPAK, 10) + .3
CALL BLREC (7.-.3, 6.-.3, XR+.3, YR+.3, .02)
DO 20 1-1,500
READ(1,'(70X,F5.2,2XF9.2,2X.F9.2)',END-32)DEP,Y(1),Z(l)
IF((DEP.GE.0.0 ) .AND. (DEP.LT.0.0625)) CALL MARKER(1)
IF((DEP.GE.0.0625) .AND. (DEP.LT.0.1250)) CALL MARKER(2
IF((DEP.GE.0.1250) .AND. (DEP.LT.O.2500)) CALL MARKER(3
IF((DEP.GE.0.25 ) .AND. (DEP.LT.0.5000)) CALL MARKER(4)
IF((DEP.GE.O.5 ) .AND. (DEP.LT.O.750 ))CALL MARKER(5)
IF((DEP.GE.O.75 ) .AND. (OEP-LT.LO ) CALL MARKER(6)
IF((DEP.GE.1.0 ) .AND. (DEP.LT.2.0 ))CALL MARKER(7
IF((DEP.GE.2.0 ) .AND. (DEP.LT.3.0 ))CALL MARKER (8)
IF((DEP.GE.3.O ) .AND. (DEP.LT.4.O ) CALL MARKER(9)
IF((DEP.GE.4.0) ) CALL MARKER(10)
CALL LEGLIN
CALL CURVE (Y. Z. 1, -1)
20 CONTINUE
32 CALL RESET ('BLNKS')
CALL LEGEND (IPAK, 10, 7., 6.)
CALL ENOPL (0)
CALL DONEPL
END
-25- DISSPLA
Example
* Wsee. -sea
IMPACT WINDOW ofU.42 - 11
-
v.5000 .75"0
2441 xin.7590 - L
led1 a -1160- LM65
1S6~ .606 - 11.
166] X800 -4.110
>-4.4104
136 xUUU
0 x x
x~ o
4 1
Z IMPACT
-26- DI1SSPLA
PROGRAM EXAMPLE6
DIMENSION X(50),Y(50),IPAK(1000)
OPEN (1,FILE-'DAT',STATUS-'OLD')
CALL COMPRS
CALL BGNPL (0)
CALL SETCLR ('BLUE')
CALL HEIGHT (.2)
CALL PAGE (12.0, 11.0)
CALL INTAXS
CALL YAXANG (0.)
CALL TITLE ('FUNCTIONS', 100, 'X -AXISS'. 100,
*'Y - AXIS$'. 100. 9., 7.)
CALL SETCLR ('GREEN')
CALL GRAF (-., 1., 3., -4.., 1., 10.)
CALL SETCLR ('GREEN')
CALL LINES ('INPUT POINTS$'. IPAK, 1)
CALL LINES (' DEGREE 1 $', IPAK, 2)
CALL LINES C' DEGREE 2 $', IPAK, 3)
CALL LINES C' DEGREE 3 V', IPAK. 4)
CALL LINES (' DEGREE 4 $', IPAK. 5)
CALL LINES (' DEGREE 5 $', IPAK, 6)
CALL LINES (' DEGREE 6 V'. IPAK. 7)
CALL MYLEGN ('POLY DEGREES', 100)
XR - XLEGND (IPAK, 7) +.3
YR - YLEGND (IPAK, 7) + .3I
CALL BLREC (7--.3, 6--.3, XR+.3, YR4.3, .02)
DO 10 1-1,13
RE AD (I,*)X(1), Y(1)
10 CONTINUE
CALL SPCMOD
CALL LEGLIN
CALL CURVE (X,Y, 13, 1)
DO 30 J-1.6
DO 20 1-1,4.9
READ(01,*) X(1) ,Y(1)
20 CONTINUE
CALL SPCMOD
CALL LEGLIN
CALL CURVE (X,Y, 49, 1)
30 CONTINUE
32 CALL BLMOVE (XR+.9. 0.)
CALL LEGEND (IPAK, 7, 7., 6.)
CALL ENDPL (0)
CALL DONEPL
END
SUBROUTINE MYSPEC (J)
IF (J .EQ. 1 ) CALL SETCLR ('RED')
IF (J .EQ. 2 ) CALL SETCLR ('MAGENTA')
IF (J .EQ. 3 ) CALL SETCLR ('BLUE')
IF (J .EQ. 4 ) CALL SETCLR ('CYAN')
IF WJ EQ. 5 ) CALL SETCLR ('YELLOW')
RETURN
END
0-27- DISSPLA
Example 6
POLY DEGREE
FUNCTION
FUNCTIN
-: t Po~nts
0 6eree I
a De-gree 2
] x Degree4
IDegree 5
v Degree 6
7
AAL'
-3-2-
x - Axis
-28- DISSPLA
Interpolation
PROGRAM EXAMPLE7
DIMENSION X(13),Y(13),RATRAY(6)
DATA X/-3.,-2.5,-2.,-1.5,-1.,-. ,o., .5,1..1.5,2.,2.5,3./
5
DATA Y/-1 .,4.5,-3. .6.,-2. .3.
,-3.,8. -2.,5. ,-1 .5.3
DATA RATRAY /5.., 2., 2.. 2., 7., 2.1
CALL COMPRS
CALL BGNPL (0)
CALL HEIGHT (1.)
CALL SCMPLX
CALL PAGE (24.0, 18.0)
00 30 J-1,6
CALL PHYSOR (0., FLOAT(J-])*3.)
CALL AREA2D (15., 3.)
CALL SETCLR ('GREEN')
CALL GRAF (-., 1.- 3., -4.. 2., 10.)
CALL FRAME
CALL MESSAG ('5,100, 15., 0.19)
IF ( J.EQ.1 ) THEN
CALL LINEAR
CALL SETCLR ('RED')
CALL MESSAG ('LINEARS', 100, 16., 1.)
ELSE IF (J.EQ.2 ) THEN
CALL POLY3
CALL SETCLR ('BLUE')
CALL MESSAG ('POLY3$1. 100, 16., 1.)S
CALL DOT
ELSE IF (J.EQ.3 ) THEN
CALL STEP
CALL SETCLR ('YELLOW')
CALL MESSAG ('STEPS, 100, 16., 1.)
CALL DASH
ELSE IF( J.EQ.4 ) THEN
CALL SPLINE
CALL SETCLR ('MAGENTA')
CALL MESSAG ('SPLINES', 100, 16., 1.)
CALL CHNDOT
ELSE IF (J.EQ.5 ) THEN
CALL BARS (1.)
CALL SETCLR ('CYAN')
CALL MESSAG ('BARS$', 100, 16., 1.)
CALL CHNDSH
ELSE IF (J.EQ.6 ) THEN
CALL POLY5
CALL SETCLR ('YELLOW')
CALL MESSAG ('POLY5S', 100, 16., 1.)
CALL MRSCOD (2., 6, RATRAY)
END IF
CALL CURVE (X,Y, 13, 1I)
CALL ENDGR (0)
30 CONTINUE
CALL ENOPL (0)
CALL DONEPL
END
-31- 9 1SSPLA
Exauple 2
~/'POLY5
II F j j 7]H BARS-
SPLINE
TPOLY3
LIEA
on /m qulL.ull
-32- DISSPLA
.9.
( -S
-33- DISSPLA
I I
-34- DISSPLA
PROGRAM EXAMPLE8
OPEN (1,F ILE-'TUBEI.DAT' ,STATUS-'OLD')
OPEN (2,F ILE-'TUBE2.DAT' ,STATUS-'OLD')
CALL COMPRS IF((TH.GT.o) .AND. (TH.LE.9o)) THEN
CALL SETDEV (9, 9) IF(THNEW.LT.O) THNEW--THNEW
CALL BGNPL (1) ENDIF
CALL PAGE (11., it.) IF((TH.GT.1BO).AND.(TH.LE.270))THEN
CALL SETCLR ('BLUE') ANG -2.
CALL TITLE(' ',1,'RADIUS',6,1H ,1,10.5,10.5) X1 Rl*COSDCTH-TH1-ANG*(9O.))
CALL POLAR (3-14159/180.,.25,5.25,5.25) Y1 R1*SIND(TH-THI-ANG*(9o.))
CALL HEIGHT (.2) IF((TH.GT.180).AND.(TH.LE.270))THEN
CALL SETCLR ('GREEN') IF ((X1.LT.O.).AND.(v1.LT.O.)) THEN
CALL GRID (1,1) Y1 - -YJ
DO 105,K-1,2 X1 - -XI
IF(K.EQ.1) THEN ENOIF
CALL SETCLR ('RED') -XNEW - X - X1
READ0(,' (5x,18x.I3) ')INUM YNEW - Y - Y1
CALL RLMESS (' TUBE - ',8,6o.,1.3) RNEW - SQRT((XNEW**2)+(YNEW**2))
CALL INTHO (INUM,'ABUT','ABUT') THNEW - ATAND(YNEW/XNEw)
CALL RLMESS (' TUBE - ',8,135.,l.6) lF(TH.GT.180).AND.(TH.LE270)) THEN
CALL INTNO (INUM.'ABUT','ABUT') IFkTHNEW.GT.0) THNEW - THNEW+180.
CALL RLMESS (' TUBE - ',8.220.,1.6) ENDIF
CALL INTNO (INUM,'ABUT','ABUT') ENDIF
CALL RLMESS (' TUBE - ',8,310.,1.35) CALL RLVEC(TH,R,THNEW,RNEW,1201)
CALL INTN90 (INUM,'ABUT','ABUT') 50 CONTINUE
ENDIF 105 CONTINUE
IF(K.EQ.2) THEN 999 CONTINUE
CALL SETCLR ('BLUE') CALL ENDPL(0)
READ(2,'(5x,18X,13)')iNUMi CLOSE(9.STATUS-'DELETE')
CALL RLMESS (' TUBE - ',8,50.,1.3) CALL DONEPL
CALL INTNO (INUM,'ABUT','ABUT') END
CALL RLMESS (' TUBE - ',8,14o.,i.5)
CALL INTNO (INUM,'ABUT'.'ABUT')
CALL RLMESS I['TUBE - ',8.220..1.8)
CALL INTNO (INUM,'ABUT','ABUT')
CALL RLMESS C' TUBE - ',8,290.,1.3)
CALL INTHO (INUM,'ABUT','ABUT')
END IF
00 50 1-1,2500
IF(K.EQ.1) READ(111END-105)TH,R1,THI
IF(K.EQ.2) READ (2,11 ,END-999)TH,R1 ,TH1
IF (K.EQ.1) R -1.25
IF (K.EQ.2) R -. 75
x - R * COSD(TH)
Y - R * SIND(TH)
xi RI * COSO (180. +TH-THI)
=l Rl * SIND(1BO. + TH -THI)
XNEW = X +XI
YNEW - Y + Y1
RNEW - SQRT((XNEW**2)+(YNEW**2))
THNEW - ATAND(YNEW/XNEW)
0 1SSPLA
Lxpe8-35-
- UB I TUB --
Post-Processor
NOTE: The graph cannot be changed (i.e., viewpoint), you can only
work with the plot as it existsl
L 1A
S. ' '
S. " r *" , " ' ' ' . " " " " " . . " . . .- "" . . - " " -
EX.DJ. fSSPLA
00
TUBEI
-38- DISSPLA
J-Dimensional Plotting
To draw a curve:
0
-4.0-
DISSPLA 6
PROGRAM EXAMPLE 10
DIMENSION X(500), Y(500), Z(500), ZX(250)
CALL COMPRS
CALL BGNPL (0) Z (2*ICOUNT+1) -Z (1)
CALL PAGE (14., 11.) X(2*ICOUNT+1).X (1)
CALL HEIGHT (.3) Y(2*ICOUNT+])mY (1)
CALL INTAXS CALL CURV30 (X, Y, Z.
CALL ZAXANG (90.) .2 * ICOUNT+1,O)
0O 100 IRUNS-1,4 10 CONTINUE
CALL SETCLR ('BLUE') CALL ENDGR (0)
If (IRUNS.EQ.1) THEN 100 CONTINUE
CALL PHYSOR (.5, .5) CALL ENDPL (0)
CALL AREA2D) (6., 5.) CALL DONEPL
CALL VUABS (3., -30., 3.) END
ELSE IF (IRUNS.EQ.2) THEN
CALL PHYSOR (.5, 5.5)
CALL AREA2D) (6., 5.)
CALL VUABS (1.5, 1.5, 30.)
ELSE IF (IRUNS.EQ.3) THEN
CALL PHYSOR (7.5, .5)
CALL AREA2D) (6., 5.)
CALL VUABS (30., 30., 30.)
ELSE IF (IRUNS.EQ.4) THEN
CALL PHYSOR (7. 5.5)
CALL AREA2D (6., 5.)
CALL VUABS (-30., -30., -30.)
END IF
CALL AXES30 ('x', 1, 'V', I- '1', 1, 3., 3., 3.)
CALL GRAF3D) (-3., 15., 30., -30., 15., 30., -30., 15., 30.)
DO 10 1-1,60
ICOUNT -1
DO 20 J-1,60
ZZ - FLOAT (1-30)
YY - FLOAT WJ-30)
XX - (((ZZ**2/16)-(vY**2/4)) + 1 )*4
IF(XX.GE.0) THEN
X(ICOUNT) - SQRT(XX)
Y(ICOUNT) - YY
ZOCOUNT) - ZZ
ZX (ICOUNT) - -SQRT (XX)
ICOUNT - ICOUNT+1
END IF
20 CONTINUE
COUNT - ICOUNT-1
CALL SETCLR ('GREEN')
DO 500 IX-1,ICOUNT
Z(ICOUNT+IX) -Z(ICOUNT+1-IX)
X(ICOUNT+IX) -ZX(ICOUNT+1-IX)
Y(ICOUNT+IX) -Y(ICOUNT+1-IX)
500 CONTINUE
D ISSPLA
Examp~le 10
K) -
030
-1 0 15 30
-42- DISSPLA
NOTE: When defining the viewpoint, you must draw the object from
the outside looking in. DISSPLA will print an error message if
you are within the work box (i.e., looking from the inside out).
Ai
"'1
.......................
A ~ .*%~ .. '. *P 14
-43- DISSPLA
PROGRAM4 EXA14PLEII
EXTERNAL PYRR, PYRRi
CALL COMPRS
CALL BGNPL (0)
THETA - 0
PHI - -18o.
CALL PAGE (35. 30.)
DO 20 1-1,5
DO 30 J-1,3
CALL SETCLR ('BLUE'
CALL PHYSOR (FLOAT(I-1)*(35.5/5.), FLOAT(J)*10-10)
CALL AREA2D (35.5/5., 30./3.)
CALL FRAME
CALL BLSUR
CALL AXES3D (0, 0, 0, 0, 0, 0, 5., 5., 5.)
CALL VUANGL (PHI, THETA, 20.)
CALL GRAF3D (-1000., 500., 1000., -1000., 500., 1000., -1000.,
500.,1000.)
CALL SETCLR ('CYAN')
CALL SURFUN (PYRR, 1, 100., 1, 100., WORK)
CALL SETCLR ('RED')
CALL SURFUN (PYRRI. 1, 100., 1, 100., WORK)
CALL ENDGR (0)
IF ( J.EQ.2) THEN Au
THETA - 90.- 1*10.
ELSE
PHI - PHI + 90.
END IF
30 CONTINUE
PHI m -180.
THETA m I * 10.
20 CONTINUE
CALL ENDPL (0)
CALL DONEPL.
END
FUNCTION PYRR(X,Y)
PYRR - SQRT (ABS ((3*Y**2-16*X)/12))
RETURN
END
Example 11
-LI - p.-
-1.6-DISSPLA
PROGRAM~ EXAMPLE12
EXTERNAL PYRR
CALL COMPRS
CALL INTAXS
CALL GRAF3D) (-2., 1., 2., -2., 1., 2., 0., 1.. 2.)
CALL DONEPL
END
FUNCTION PYRR(X,Y)
RETURN
END
-47 DISSPLA
Exampla 12
IN
2b
-48- DISSPLA
Graffiti Plots
U w
-50- DISSPLA
PROGRAM EXAMPLE13
CALL TK41 (4105)
CALL BGNPL (0)
CALL PAGE (14., 11.)
CALL SETCLR ('BLUE')
CALL PHYSOR (.5, .5)
CALL HEIGHT (.25)
CALL INTAXS
CALL AREA2D (13., 10.)
CALL SETCLR ('RED')
CALL FRAME
CALL AXES3D ('X - AXIS',8,'Y - AXIS',B,'Z - AXIS',8,5.,5.,5.)
CALL VUABS (-10., -10., 10.)
CALL GRAF3D (-150.,50.,150.,-150.,50.,150.,-150.,50.,150.)
CALL GRFITI (0., 5., 0., 5., 5., 0., 2., 5., 2.)
CALL AREA2D (5., 5.)
CALL GRAF (-150., 10., 150., -150., 10., 150.)
CALL SETCLR ('GREEN')
CALL MESSAG ('THIS IS THES', 100, 1., 2.5)
CALL MESSAG ('Z - X PLANES', 100, 1., 2.)
CALL BLREC (.7, 1.7, 3., 1.5, .08)
K- CALL GRID (1, 1)
CALL END3GR (0)
CALL GRFITI (5., 5., 0., 5., 0., 0., 5., 2., 2.)
CALL AREA2D (5., 5.)
CALL GRAF (-150.,10.,150.,-150.,10.,150.)
CALL SETCLR ('YELLOW')
CALL MESSAG ('THIS IS THES', 100, 1., 2.5)
CALL MESSAG ('Y - Z PLANES', 100, 1., 2.)
* CALL BLREC (.7, 1.7, 3., 1.5, .08)
CALL GRID (1, 1)
CALL END3GR (0)
CALL GRFITI (0., 0., 0., 5., 0., 0., 0., 5., 0.)
CALL AREA2D (5., 5.)
CALL GRAF (-150.,10.,150.,-150.,0.,150.)
CALL SETCLR ('BLUE')
CALL MESSAG ('THIS IS THES', 100, 1., 2.5)
CALL MESSAG ('X - Y PLANES', 100, 1., 2.)
CALL BLREC (.7, 1.7, 3., 1.5, .08)
CALL GRID (1, 1)
CALL END3GR (0)
CALL SETCLR ('CYAN')
CALL BOX3D
CALL ENDPL (0)
CALL DONEPL
END
-51- VISSPLA
so5
-52- DISSPLA
Extople 14
Character Sets
Example #15 shows how to use several alphabets, and how to change
from one to another. The user must call MXIALF with the alphabet
chosen and a character to represent it. At this point, any time
you write out text, this character causes DISSPLA to switch to
the alphabet it represents. In each call to MESSAG, these special
characters are not printed but the words appear in different
alphabets. Each string must end in the BASALF to use the "S"
string counter feature.
-54- DISSPLA
PROGRAM EXAMPLE15
CALL COMPRS
CALL SETDEV (1, 1)
CALL BGNPL (0)
CALL TRIPLX
CALL BASALF ('STANDARD')
CALL MX1ALF ('STANDARD', '+')
CALL MX2ALF ('L/CGREEK', '1')
CALL MX3ALF ('RUSSIAN', '')
CALL MX4ALF ('SCRIPT', '8')
CALL MX5ALF ('GREEK', '$')
CALL MX6ALF ('ITALIC', 'I')
CALL SETEND (';', 1)
CALL HEIGHT (.5)
CALL PAGE (16., 8.5)
CALL PHYSOR (0., 0.)
CALL AREA2D (16., 8.5)
CALL SETCLR ('BLUE')
CALL MESSAG ('THIS IS AN IEXAMPLE+ USING DIFFERENT;', 100,
*5, 7.5)
CALL MESSAG ('ALPHABETS, SIT IS QUITE EASY ITO USE AND+;',
100, .5,6.5)
CALL MESSAG ('THE IALPHABET CAN +BE CHANGED &AT ANY TIME+;',
100, .5, 5.5)
CALL MESSAG ('NOTICE ITHAT EACH STRING &ENDS IN THE +BASALF;',
100, .5,4.5)
CALL SETCLR ('RED')
CALL MESSAG ('SOME MORE EXAMPLES:;', 100, 2., 3.5)
CALL MESSAG ('RUSSIAN -/RUSSIAN+ L/GREEK -#ABCDEF+;',
100, .5, 2.5)
CALL MESSAG ('GREEK - $ABCDEFGH +ITALIC -IITALIC+;',
100, .5, 1.5)
CALL SETCLR ('BLUE')
CALL MESSAG ('THE ISTRINGS+ ARE PLACED IN INCHES FROM ORIGIN;',
100, .1, .5)
999 CALL ENDPL (0)
CALL DONEPL
CLOSE(1,STATUS-'DELETE')
STOP
END
-55- DISSPLA
Example
*
-56- DISSPLA
Instruction Alphabet
0 - Default 8 - FUTURA
1- CARTOG 9 - SERIF
2 - SIMPLX 10 - FASHON
3- SCMPLX 11 - LOGOI
4 - COMPLX 12 - SWISSL
5 - DUPLX 13 - SWISSM
6 - TRIPLX 14 - SWISSB
7 - GOTHIC
pP
-57- DISSPLA
0 - STANDARD 7 - L/CGREEK
1 - L/CSTD 8 - RUSSIAN
2 - ITALIC 9 - L/CRUSSIAN
3 - L/CITALIC 10 - SPECIAL
4 - SCRIPT 11 - MATHEMATIC
5 - L/CSCRIPT 12 - HEBREW
6 - GREEK 13 - ALFBET
N
-58- DISSPLA
PROGRAM EXAMPLE16
CALL TK41 (4105)
CALL SETDEV (1, 1)
CALL 8GNPL (0)
CALL MIXALF ('INSTRIJ')
CALL HEIGHT (.2)
CALL PAGE (11., 8.5)
CALL PHYSOR (0., 0.)
CALL AREA2D (11. 8.5)
CALL SETCLR ('GREEN')
CALL MESSAG ('(H2F6MOC) THIS IS AN(Y.5) EXAMPLE(YO.)S,
*100,2.,7.0)
CALL MESSAG ('(H2F7MO)OF THE (F6PlH3) INSTRUCTION(H2U1) (P2)
* ALPHABET(D2)$', 100, 1., 6.)
CALL MESSAG ('(H2F6m1OC)E (MO)- MATHEMATICS - (M1O)ES',
* 100, 2., 5.)
CALL SETCLR ('RED')
CALL MESSAG 0'(MOF6H2P 1)L IM(GIL I 5H1M411) L R L T (MO) 0(H3)
* (Mll) (P2E.2)S (1121MO12.501 - 1 (G2LXE4.5S3)N
* (EXMl1H2S3)2$', 100, 1., 3.0)
CALL MESSAG ('(F6H31JP3) I(G3L2.5M6H1)L(L2.7H.5m0) 1
* (H1L2.5Ml0F6)8 (MO)Y(L2.7H.7)I (L2.5m1OH1)9
* (G3LXE3.5H1m6S7)L(E3.3H.5M0)2(E3.5M10H1)8(MiO)Y
* (E3.3H.5) I(E3.5H1M1O)9S', 100, 'ABUT', 'ABUT')
CALL MESSAG ('(F6EXMOH2)F(M11)8(MO)X ,Y(L.5HIF6)1I(S2)$',0
* 100, 'ABUT', 'ABUT')
CALL MESSAG ('(LXH2M11F6)9(MO) DX(M11H2) 3(ml1) R(MOL.5HI)I
* (LXH2)YS', 100, 'ABUT', 'ABUT')
999 CALL DONEPI
CLOSE (1,STATUS-'DELETE')
STOP
END
Example 16
This Is an example
(ftijc instruction alphabet
* PT MATHEMATICS= T
Copies:
12 Director
Defense Technical Information Center (OTIC)
Cameron Station
Alexandria, Virginia 23314
Center Distribution
Copies: