DI-3000 is an integrated system of graphics software tools. DI-3000 is implemented as a library of FORTRAN-callable subroutines, written in ANSI Fortran for use with Fortran 77 applications. An application program calls DI-3000 subrouttines to generate graphics images on one or more graphics dipslay devices.
Although you can
compile your DI-3000 programs when working on any terminal, you must be on an X
terminal or working in an xterm window to run the
programs.  
DI-3000 is licensed for all of the University's Solaris systems.
DI-3000 is available on Strauss. This document requires that you are working on an X terminal or an xterm window.
To use DI-3000, you must first set several UNIX environment variables. These settings may adversely interact with settings needed for other UNIX applications. The instructions below provide a strategy for avoiding these interactions.
You start a new shell before you use DI-3000, modify the environment, run DI-3000, and exit the shell before working with other software. You can start a new shell either by opening a new window on an X terminal or by issuing the UNIX csh command. These instructions assume that you are using the C shell (csh), which is the default for University of Delaware users.
csh
setenv PVI_ROOT /opt/lib/pvi setenv PATH ${PATH}:/opt/lib/pvi/bin setenv LD_LIBRARY_PATH /opt/X11R5/lib:/opt/lib:${PVI_ROOT}/lib:/opt/SUNWspro/lib setenv PVI_DEV_1 x11 setenv PVI_LINK dynamic
di3000 -o filename filename.f
filename
cshor by opening a new window on the X terminal.
PROGRAM POLAR C C ***** This is an example program in Chapter 3 of the DI-3000 User's C ***** Guide. It demonstrates the conversion routines using JURTOW, C ***** JUPOCA, and JXPOLR. It produces a four quadrant polar axis C ***** with cosine data displayed. C INTEGER J, NUMPTS REAL TWOPI, ANGINC, WMIN, WMAX REAL RADIUS(100), THETA(100), XDAT(100), YDAT(100) REAL WCXDAT(100), WCYDAT(100) REAL RWXRNG(2), RWYRNG(2), WCRNG(2), RNGRNG(2) C DATA NUMPTS /100/ C C ***** Initialize DI-3000 and device 1, and select device 1. C CALL JBEGIN CALL JDINIT (1) CALL JDEVON (1) C C ***** Define square window with convenient dimensions. C CALL JWINDO (-1200.0, 1200.0, -1200.0, 1200.0) C C ***** Define polyline attribute table index 1 as a solid, thin, C ***** green line. Define polyline attribute table index 2 as a C ***** dotted, thin, yellow line. Define polyline attribute table C ***** index 3 as a dashed, thin, red line. C CALL JSTBPL (1, 0, 0, 2, 0) CALL JSTBPL (2, 2, 0, 3, 0) CALL JSTBPL (3, 1, 0, 1, 0) C C ***** Calculate angle increment for 100 points to be generated. C TWOPI = 2.0 * 3.141592654 ANGINC = TWOPI / FLOAT(NUMPTS) C C ***** Loop to generate 100 polar points as RADIUS/THETA pairs. C DO 1000 J=1, NUMPTS THETA(J) = J * ANGINC RADIUS(J) = COS (2.0 * THETA(J)) 01000 CONTINUE C C ***** Convert polar data points into Cartesian data points. C CALL JUPOCA (RADIUS, THETA, NUMPTS, XDAT, YDAT) C C ***** Use JUFRNG to set the minimum and maximum Cartesian data C ***** values. Set the world coordinate boundaries, and convert C ***** the X and Y Cartesian data values into their world coordinate C ***** equivalents. C CALL JUFRNG (XDAT, NUMPTS, 0, RWXRNG, WMIN, WMAX) CALL JUFRNG (YDAT, NUMPTS, 0, RWYRNG, WMIN, WMAX) WCRNG(1) = -1000.0 WCRNG(2) = 1000.0 CALL JURTOW (RWXRNG, WCRNG, XDAT, NUMPTS, 0, WCXDAT) CALL JURTOW (RWYRNG, WCRNG, YDAT, NUMPTS, 0, WCYDAT) C C ***** Define ring range and horizontal radial axis world C ***** coordinate endpoints. C RNGRNG(1) = 0.0 RNGRNG(2) = 1.0 WCRNG(1) = 0.0 WCRNG(2) = 1000.0 C C ***** Open temporary segment, define and display polar axes, C ***** set current polyline attributes to polyline attribute C ***** table index 3, move to first data point, and plot data C ***** as a polyline. C CALL JOPEN CALL JXPOLR (WCRNG, 0.0, RNGRNG, 0.2, 4, 2, 0, 1, 2) CALL JSCATT (1, 3) CALL JMOVE (WCXDAT(1), WCYDAT(1)) CALL JPOLY (WCXDAT, WCYDAT, NUMPTS) CALL JCLOSE C C ***** Wait for user response. C CALL JPAUSE(1) C C ***** Terminate device and DI-3000. C CALL JDEVOF (1) CALL JDEND (1) CALL JEND STOP END
di3000 -o example example.f
example
The command really is "di3000". However, you must be on Strauss to use it. In addition, you must set up your working environment for DI-3000 before typing the di3000 command. See the section Setting the DI-3000 Working Environment for details.
You have not set up your working environment completely for DI-3000, see section Setting the DI-3000 Working Environment.
If you need help quickly, call the University of Delaware's IT Help Center at 831-6000 between 8 a.m. and 5 p.m. Monday through Friday. Or you can submit a question via a web request form or e-mail.