home *** CD-ROM | disk | FTP | other *** search
- SUBROUTINE CURVE(X,Y,NPTS,ISYMNO,SYMSIZ,NPBSYM)
- IMPLICIT NONE
- REAL*4 X(NPTS), Y(NPTS)
- C
- C THIS SUBROUTINE TRACES THE LINE FROM X(1),Y(1) TO
- C X(NPTS),Y(NPTS) WITH APPROPIATE CLIPPING.
- C IT THEN ADDS THE DESIRED SYMBOL (ISYMNO) TO THE PLOT SPACED
- C "NPBSYM" POINTS APART.
- C
- REAL*4 AREA(4),VX,VY
- INTEGER I,IOLDLT
- C
- INCLUDE DIGLIB$KOM:GCLTYP.PRM
- INCLUDE DIGLIB$KOM:PLTSIZ.PRM
- C
- CALL GSSCLP(XVSTRT,XVSTRT+XVLEN,YVSTRT,YVSTRT+YVLEN,AREA)
- CALL SCALE(X(1),Y(1),VX,VY)
- CALL GSMOVE(VX,VY)
- IF (NPTS .LE. 1) GO TO 110
- 10 DO 100 I=2,NPTS
- CALL SCALE(X(I),Y(I),VX,VY)
- CALL GSDRAW(VX,VY)
- 100 CONTINUE
- C
- C NOW ADD SYMBOLS IF DESIRED
- C
- 110 CONTINUE
- IF (ISYMNO .LE. 0) GO TO 800
- C
- C SAVE LINE TYPE, AND DO SYMBOLS IN SOLID LINES
- C
- IOLDLT = ILNTYP
- ILNTYP = 1
- DO 200 I=1, NPTS, NPBSYM
- CALL SCALE(X(I),Y(I),VX,VY)
- CALL GSMOVE(VX,VY)
- CALL SYMBOL(ISYMNO,SYMSIZ)
- 200 CONTINUE
- C
- C RESTORE LINE TYPE
- C
- ILNTYP = IOLDLT
- 800 CONTINUE
- CALL GSRCLP(AREA)
- RETURN
- END
-