Commit ac5bf535 authored by agebhard's avatar agebhard
Browse files

Changes for R 2.14.x

parent 1bb6e43a
Package: akima Package: akima
Version: 0.5-5 Version: 0.5-6
Date: 2010-01-14 Date: 2012-01-06
Title: Interpolation of irregularly spaced data Title: Interpolation of irregularly spaced data
Author: Fortran code by H. Akima Author: Fortran code by H. Akima
R port by Albrecht Gebhardt <albrecht.gebhardt@uni-klu.ac.at> R port by Albrecht Gebhardt <albrecht.gebhardt@uni-klu.ac.at>
aspline function by Thomas Petzoldt <petzoldt@rcs.urz.tu-dresden.de> aspline function by Thomas Petzoldt <thomas.petzoldt@tu-dresden.de>
enhancements and corrections by Martin Maechler <maechler@stat.math.ethz.ch> enhancements and corrections by Martin Maechler <maechler@stat.math.ethz.ch>
Maintainer: Albrecht Gebhardt <albrecht.gebhardt@uni-klu.ac.at> Maintainer: Albrecht Gebhardt <albrecht.gebhardt@uni-klu.ac.at>
Description: Linear or cubic spline interpolation for irregular gridded data Description: Linear or cubic spline interpolation for irregular gridded data
......
useDynLib(akima)
export(aspline,interp,interpp,interp.old,interp.new)
.First.lib <- function(lib, pkg) {
if(getRversion()<="0.62")
stop("This version for R 0.62 or later")
library.dynam("akima", pkg, lib)
}
akima Waveform Distortion Data for Bivariate
Interpolation
"akima" <-
list(x = c(11.16, 24.2, 12.85, 19.85, 10.35, 24.65, 19.72, 15.91,
0, 20.87, 6.71, 3.45, 19.99, 14.26, 10.28, 4.51, 17.43, 22.8,
0, 7.58, 16.7, 6.08, 1.99, 25, 14.9, 3.22, 0, 9.66, 2.56, 5.22,
11.77, 17.25, 15.1, 25, 12.13, 25, 22.33, 11.52, 14.59, 15.2,
7.54, 5.23, 17.32, 2.14, 0.51, 22.69, 25, 5.47, 21.67, 3.31), y = c(1.24,
16.23, 3.06, 10.72, 4.11, 2.4, 1.39, 7.74, 20, 20, 6.26, 12.78,
4.62, 17.87, 15.16, 20, 3.46, 12.39, 4.48, 1.98, 19.65, 4.58,
5.6, 11.87, 3.12, 16.78, 0, 20, 3.02, 14.66, 10.47, 19.57, 17.19,
3.87, 10.79, 0, 6.21, 8.53, 8.71, 0, 10.69, 10.72, 13.78, 15.03,
8.37, 19.63, 20, 17.13, 14.36, 0.13), z = c(22.15, 2.83, 22.11,
7.97, 22.33, 10.25, 16.83, 15.3, 34.6, 7.54, 30.97, 41.24, 14.72,
10.74, 21.59, 15.61, 18.6, 5.47, 61.77, 29.87, 6.31, 35.74, 51.81,
4.4, 21.7, 39.93, 58.2, 4.73, 50.55, 40.36, 13.62, 6.43, 12.57,
8.74, 13.71, 12, 10.25, 15.74, 14.81, 21.6, 19.31, 26.5, 12.11,
53.1, 49.43, 3.25, 0.6, 28.63, 5.52, 44.08))
File added
...@@ -164,9 +164,10 @@ image (akima.smooth, main = "interp(<akima data>, *) on finer grid") ...@@ -164,9 +164,10 @@ image (akima.smooth, main = "interp(<akima data>, *) on finer grid")
contour(akima.smooth, add = TRUE, col = "thistle") contour(akima.smooth, add = TRUE, col = "thistle")
points(akima, pch = 3, cex = 2, col = "blue") points(akima, pch = 3, cex = 2, col = "blue")
# use triangulation package to show underlying triangulation: # use triangulation package to show underlying triangulation:
\dontrun{
if(library(tripack, logical.return=TRUE)) if(library(tripack, logical.return=TRUE))
plot(tri.mesh(akima), add=TRUE, lty="dashed") plot(tri.mesh(akima), add=TRUE, lty="dashed")
}
# use only 15 points (interpolation only within convex hull!) # use only 15 points (interpolation only within convex hull!)
akima.part <- with(akima, interp(x[1:15], y[1:15], z[1:15])) akima.part <- with(akima, interp(x[1:15], y[1:15], z[1:15]))
image(akima.part) image(akima.part)
......
...@@ -144,16 +144,16 @@ ...@@ -144,16 +144,16 @@
IER = 0 IER = 0
RETURN RETURN
* Error exit * Error exit
20 WRITE (*,FMT=9000) MD,NDP 20 CONTINUE WRITE (*,FMT=9000) MD,NDP
IER = 1 IER = 1
RETURN RETURN
30 WRITE (*,FMT=9010) MD,NDP,NDPPV 30 CONTINUE WRITE (*,FMT=9010) MD,NDP,NDPPV
IER = 2 IER = 2
RETURN RETURN
40 WRITE (*,FMT=9020) MD,NDP,NIP 40 CONTINUE WRITE (*,FMT=9020) MD,NDP,NIP
IER = 3 IER = 3
RETURN RETURN
50 WRITE (*,FMT=9030) 50 CONTINUE WRITE (*,FMT=9030)
IER = 9 IER = 9
RETURN RETURN
* Format statement for error message * Format statement for error message
...@@ -324,19 +324,19 @@ ...@@ -324,19 +324,19 @@
IER = 0 IER = 0
RETURN RETURN
* Error exit * Error exit
40 WRITE (*,FMT=9000) MD,NDP 40 CONTINUE WRITE (*,FMT=9000) MD,NDP
IER = 1 IER = 1
RETURN RETURN
50 WRITE (*,FMT=9010) MD,NDP,NDPPV 50 CONTINUE WRITE (*,FMT=9010) MD,NDP,NDPPV
IER = 2 IER = 2
RETURN RETURN
60 WRITE (*,FMT=9020) MD,NDP,NXI,NYI 60 CONTINUE WRITE (*,FMT=9020) MD,NDP,NXI,NYI
IER = 3 IER = 3
RETURN RETURN
70 WRITE (*,FMT=9030) MD,NDP,NXI,NYI 70 CONTINUE WRITE (*,FMT=9030) MD,NDP,NXI,NYI
IER = 4 IER = 4
RETURN RETURN
80 WRITE (*,FMT=9040) 80 CONTINUE WRITE (*,FMT=9040)
IER = 9 IER = 9
RETURN RETURN
* Format statement for error message * Format statement for error message
...@@ -445,22 +445,22 @@ ...@@ -445,22 +445,22 @@
* Error exit * Error exit
10 IF (IERTM.EQ.-1) THEN 10 IF (IERTM.EQ.-1) THEN
IERT = 1 IERT = 1
WRITE (*,FMT=9000) NDP CONTINUE WRITE (*,FMT=9000) NDP
ELSE IF (IERTM.EQ.-2) THEN ELSE IF (IERTM.EQ.-2) THEN
IERT = 2 IERT = 2
WRITE (*,FMT=9010) CONTINUE WRITE (*,FMT=9010)
ELSE ELSE
IERT = 3 IERT = 3
IP1 = IERTM IP1 = IERTM
WRITE (*,FMT=9020) NDP,IP1,XD(IP1),YD(IP1) CONTINUE WRITE (*,FMT=9020) NDP,IP1,XD(IP1),YD(IP1)
END IF END IF
RETURN RETURN
20 IF (IERTL.EQ.1) THEN 20 IF (IERTL.EQ.1) THEN
IERT = 4 IERT = 4
WRITE (*,FMT=9030) NDP CONTINUE WRITE (*,FMT=9030) NDP
ELSE IF (IERTL.EQ.2) THEN ELSE IF (IERTL.EQ.2) THEN
IERT = 5 IERT = 5
WRITE (*,FMT=9040) CONTINUE WRITE (*,FMT=9040)
END IF END IF
RETURN RETURN
* Format statements * Format statements
......
...@@ -137,7 +137,7 @@ C INTERPOLATES THE ZI VALUES. (FOR MD=1,2,3) ...@@ -137,7 +137,7 @@ C INTERPOLATES THE ZI VALUES. (FOR MD=1,2,3)
81 CONTINUE 81 CONTINUE
RETURN RETURN
C ERROR EXIT C ERROR EXIT
90 WRITE (LUN,2090) MD0,NCP0,NDP0,NIP0 90 CONTINUE WRITE (LUN,2090) MD0,NCP0,NDP0,NIP0
RETURN RETURN
C FORMAT STATEMENT FOR ERROR MESSAGE C FORMAT STATEMENT FOR ERROR MESSAGE
2090 FORMAT(1X/41H *** IMPROPER INPUT PARAMETER VALUE(S)./ 2090 FORMAT(1X/41H *** IMPROPER INPUT PARAMETER VALUE(S)./
......
...@@ -101,10 +101,10 @@ C - REPLACES THE LOCAL ARRAY FOR THE OUTPUT ARRAY. ...@@ -101,10 +101,10 @@ C - REPLACES THE LOCAL ARRAY FOR THE OUTPUT ARRAY.
59 CONTINUE 59 CONTINUE
RETURN RETURN
C ERROR EXIT C ERROR EXIT
90 WRITE (LUN,2090) 90 CONTINUE WRITE (LUN,2090)
GO TO 92 GO TO 92
91 WRITE (LUN,2091) 91 CONTINUE WRITE (LUN,2091)
92 WRITE (LUN,2092) NDP0,NCP0 92 CONTINUE WRITE (LUN,2092) NDP0,NCP0
IPC(1)=0 IPC(1)=0
RETURN RETURN
C FORMAT STATEMENTS FOR ERROR MESSAGES C FORMAT STATEMENTS FOR ERROR MESSAGES
......
...@@ -176,7 +176,7 @@ C INTERPOLATES THE ZI VALUES. (FOR MD=1,2,3) ...@@ -176,7 +176,7 @@ C INTERPOLATES THE ZI VALUES. (FOR MD=1,2,3)
89 CONTINUE 89 CONTINUE
RETURN RETURN
C ERROR EXIT C ERROR EXIT
90 WRITE (LUN,2090) MD0,NCP0,NDP0,NXI0,NYI0 90 CONTINUE WRITE (LUN,2090) MD0,NCP0,NDP0,NXI0,NYI0
RETURN RETURN
C FORMAT STATEMENT FOR ERROR MESSAGE C FORMAT STATEMENT FOR ERROR MESSAGE
2090 FORMAT(1X/41H *** IMPROPER INPUT PARAMETER VALUE(S)./ 2090 FORMAT(1X/41H *** IMPROPER INPUT PARAMETER VALUE(S)./
......
...@@ -355,12 +355,12 @@ C ARE LISTED COUNTER-CLOCKWISE. ...@@ -355,12 +355,12 @@ C ARE LISTED COUNTER-CLOCKWISE.
NL=NL0 NL=NL0
RETURN RETURN
C ERROR EXIT C ERROR EXIT
90 WRITE (LUN,2090) NDP0 90 CONTINUE WRITE (LUN,2090) NDP0
GO TO 93 GO TO 93
91 WRITE (LUN,2091) NDP0,IP1,IP2,X1,Y1 91 CONTINUE WRITE (LUN,2091) NDP0,IP1,IP2,X1,Y1
GO TO 93 GO TO 93
92 WRITE (LUN,2092) NDP0 92 CONTINUE WRITE (LUN,2092) NDP0
93 WRITE (LUN,2093) 93 CONTINUE WRITE (LUN,2093)
NT=0 NT=0
RETURN RETURN
C FORMAT STATEMENTS C FORMAT STATEMENTS
......
...@@ -1609,7 +1609,7 @@ C ...@@ -1609,7 +1609,7 @@ C
C Error flag returned by OPTIM. C Error flag returned by OPTIM.
C C
25 IER = 5 25 IER = 5
WRITE (*,100) NIT, IERR CONTINUE WRITE (*,100) NIT, IERR
RETURN RETURN
100 FORMAT (//5X,'*** Error in OPTIM: NIT = ',I4, 100 FORMAT (//5X,'*** Error in OPTIM: NIT = ',I4,
. ', IER = ',I1,' ***'/) . ', IER = ',I1,' ***'/)
...@@ -2105,7 +2105,7 @@ C Invalid triangulation data structure or collinear nodes ...@@ -2105,7 +2105,7 @@ C Invalid triangulation data structure or collinear nodes
C on convex hull boundary. C on convex hull boundary.
C C
33 IER = 3 33 IER = 3
WRITE (*,130) IN1, IN2 CONTINUE WRITE (*,130) IN1, IN2
130 FORMAT (//5X,'*** Error in EDGE: Invalid triangula', 130 FORMAT (//5X,'*** Error in EDGE: Invalid triangula',
. 'tion or null triangles on boundary'/ . 'tion or null triangles on boundary'/
. 9X,'IN1 =',I4,', IN2=',I4/) . 9X,'IN1 =',I4,', IN2=',I4/)
...@@ -2114,7 +2114,7 @@ C ...@@ -2114,7 +2114,7 @@ C
C Error flag returned by OPTIM. C Error flag returned by OPTIM.
C C
34 IER = 4 34 IER = 4
WRITE (*,140) NIT, IERR CONTINUE WRITE (*,140) NIT, IERR
140 FORMAT (//5X,'*** Error in OPTIM: NIT = ',I4, 140 FORMAT (//5X,'*** Error in OPTIM: NIT = ',I4,
. ', IER = ',I1,' ***'/) . ', IER = ',I1,' ***'/)
RETURN RETURN
...@@ -4423,7 +4423,7 @@ C ...@@ -4423,7 +4423,7 @@ C
C C
C Print a heading and test for invalid input. C Print a heading and test for invalid input.
C C
WRITE (LUN,100) CONTINUE WRITE (LUN,100)
NL = 1 NL = 1
IF (N .LT. 3 .OR. N .GT. NMAX .OR. IF (N .LT. 3 .OR. N .GT. NMAX .OR.
. (NROW .NE. 6 .AND. NROW .NE. 9) .OR. . (NROW .NE. 6 .AND. NROW .NE. 9) .OR.
...@@ -4431,21 +4431,21 @@ C ...@@ -4431,21 +4431,21 @@ C
C C
C Print an error message and bypass the loops. C Print an error message and bypass the loops.
C C
WRITE (LUN,110) N, NROW, NT CONTINUE WRITE (LUN,110) N, NROW, NT
GO TO 3 GO TO 3
ENDIF ENDIF
IF (PRNTX) THEN IF (PRNTX) THEN
C C
C Print X and Y. C Print X and Y.
C C
WRITE (LUN,101) CONTINUE WRITE (LUN,101)
NL = 6 NL = 6
DO 1 I = 1,N DO 1 I = 1,N
IF (NL .GE. NLMAX) THEN IF (NL .GE. NLMAX) THEN
WRITE (LUN,106) CONTINUE WRITE (LUN,106)
NL = 0 NL = 0
ENDIF ENDIF
WRITE (LUN,102) I, X(I), Y(I) CONTINUE WRITE (LUN,102) I, X(I), Y(I)
NL = NL + 1 NL = NL + 1
1 CONTINUE 1 CONTINUE
ENDIF ENDIF
...@@ -4453,21 +4453,21 @@ C ...@@ -4453,21 +4453,21 @@ C
C Print the triangulation LTRI. C Print the triangulation LTRI.
C C
IF (NL .GT. NLMAX/2) THEN IF (NL .GT. NLMAX/2) THEN
WRITE (LUN,106) CONTINUE WRITE (LUN,106)
NL = 0 NL = 0
ENDIF ENDIF
IF (NROW .EQ. 6) THEN IF (NROW .EQ. 6) THEN
WRITE (LUN,103) CONTINUE WRITE (LUN,103)
ELSE ELSE
WRITE (LUN,104) CONTINUE WRITE (LUN,104)
ENDIF ENDIF
NL = NL + 5 NL = NL + 5
DO 2 K = 1,NT DO 2 K = 1,NT
IF (NL .GE. NLMAX) THEN IF (NL .GE. NLMAX) THEN
WRITE (LUN,106) CONTINUE WRITE (LUN,106)
NL = 0 NL = 0
ENDIF ENDIF
WRITE (LUN,105) K, (LTRI(I,K), I = 1,NROW) CONTINUE WRITE (LUN,105) K, (LTRI(I,K), I = 1,NROW)
NL = NL + 1 NL = NL + 1
2 CONTINUE 2 CONTINUE
C C
...@@ -4476,13 +4476,13 @@ C triangles). ...@@ -4476,13 +4476,13 @@ C triangles).
C C
NB = 2*N - NT - 2 NB = 2*N - NT - 2
NA = NT + N - 1 NA = NT + N - 1
IF (NL .GT. NLMAX-6) WRITE (LUN,106) IF (NL .GT. NLMAX-6) CONTINUE WRITE (LUN,106)
WRITE (LUN,107) NB, NA, NT CONTINUE WRITE (LUN,107) NB, NA, NT
C C
C Print NCC and LCT. C Print NCC and LCT.
C C
3 WRITE (LUN,108) NCC 3 CONTINUE WRITE (LUN,108) NCC
IF (NCC .GT. 0) WRITE (LUN,109) (LCT(I), I = 1,NCC) IF (NCC .GT. 0) CONTINUE WRITE (LUN,109) (LCT(I), I = 1,NCC)
RETURN RETURN
C C
C Print formats: C Print formats:
...@@ -5561,7 +5561,7 @@ C ...@@ -5561,7 +5561,7 @@ C
C C
C Output header comments. C Output header comments.
C C
WRITE (LUN,100,ERR=13) IPX1, IPY1, IPX2, IPY2 CONTINUE WRITE (LUN,100,ERR=13) IPX1, IPY1, IPX2, IPY2
100 FORMAT ('%!PS-Adobe-3.0 EPSF-3.0'/ 100 FORMAT ('%!PS-Adobe-3.0 EPSF-3.0'/
. '%%BoundingBox:',4I4/ . '%%BoundingBox:',4I4/
. '%%Title: Triangulation'/ . '%%Title: Triangulation'/
...@@ -5583,13 +5583,13 @@ C Set the line thickness to 2 points, and draw the ...@@ -5583,13 +5583,13 @@ C Set the line thickness to 2 points, and draw the
C viewport boundary. C viewport boundary.
C C
T = 2.0 T = 2.0
WRITE (LUN,110,ERR=13) T CONTINUE WRITE (LUN,110,ERR=13) T
WRITE (LUN,120,ERR=13) IPX1, IPY1 CONTINUE WRITE (LUN,120,ERR=13) IPX1, IPY1
WRITE (LUN,130,ERR=13) IPX1, IPY2 CONTINUE WRITE (LUN,130,ERR=13) IPX1, IPY2
WRITE (LUN,130,ERR=13) IPX2, IPY2 CONTINUE WRITE (LUN,130,ERR=13) IPX2, IPY2
WRITE (LUN,130,ERR=13) IPX2, IPY1 CONTINUE WRITE (LUN,130,ERR=13) IPX2, IPY1
WRITE (LUN,140,ERR=13) CONTINUE WRITE (LUN,140,ERR=13)
WRITE (LUN,150,ERR=13) CONTINUE WRITE (LUN,150,ERR=13)
110 FORMAT (F12.6,' setlinewidth') 110 FORMAT (F12.6,' setlinewidth')
120 FORMAT (2I4,' moveto') 120 FORMAT (2I4,' moveto')
130 FORMAT (2I4,' lineto') 130 FORMAT (2I4,' lineto')
...@@ -5602,7 +5602,7 @@ C ...@@ -5602,7 +5602,7 @@ C
SFY = DBLE(IH)/DY SFY = DBLE(IH)/DY
TX = IPX1 - SFX*WX1 TX = IPX1 - SFX*WX1
TY = IPY1 - SFY*WY1 TY = IPY1 - SFY*WY1
WRITE (LUN,160,ERR=13) TX, TY, SFX, SFY CONTINUE WRITE (LUN,160,ERR=13) TX, TY, SFX, SFY
160 FORMAT (2F12.6,' translate'/ 160 FORMAT (2F12.6,' translate'/
. 2F12.6,' scale') . 2F12.6,' scale')
C C
...@@ -5611,17 +5611,17 @@ C changed to reflect the new scaling which is applied to ...@@ -5611,17 +5611,17 @@ C changed to reflect the new scaling which is applied to
C all subsequent output. Set it to 1.0 point. C all subsequent output. Set it to 1.0 point.
C C
T = 2.0/(SFX+SFY) T = 2.0/(SFX+SFY)
WRITE (LUN,110,ERR=13) T CONTINUE WRITE (LUN,110,ERR=13) T
C C
C Save the current graphics state, and set the clip path to C Save the current graphics state, and set the clip path to
C the boundary of the window. C the boundary of the window.
C C
WRITE (LUN,170,ERR=13) CONTINUE WRITE (LUN,170,ERR=13)
WRITE (LUN,180,ERR=13) WX1, WY1 CONTINUE WRITE (LUN,180,ERR=13) WX1, WY1
WRITE (LUN,190,ERR=13) WX2, WY1 CONTINUE WRITE (LUN,190,ERR=13) WX2, WY1
WRITE (LUN,190,ERR=13) WX2, WY2 CONTINUE WRITE (LUN,190,ERR=13) WX2, WY2
WRITE (LUN,190,ERR=13) WX1, WY2 CONTINUE WRITE (LUN,190,ERR=13) WX1, WY2
WRITE (LUN,200,ERR=13) CONTINUE WRITE (LUN,200,ERR=13)
170 FORMAT ('gsave') 170 FORMAT ('gsave')
180 FORMAT (2F12.6,' moveto') 180 FORMAT (2F12.6,' moveto')
190 FORMAT (2F12.6,' lineto') 190 FORMAT (2F12.6,' lineto')
...@@ -5645,7 +5645,7 @@ C ...@@ -5645,7 +5645,7 @@ C
C C
C Add the edge to the path. C Add the edge to the path.
C C
WRITE (LUN,210,ERR=13) X0, Y0, X(N1), Y(N1) CONTINUE WRITE (LUN,210,ERR=13) X0, Y0, X(N1), Y(N1)
210 FORMAT (2F12.6,' moveto',2F12.6,' lineto') 210 FORMAT (2F12.6,' moveto',2F12.6,' lineto')
ENDIF ENDIF
IF (LP .NE. LPL) GO TO 2 IF (LP .NE. LPL) GO TO 2
...@@ -5702,7 +5702,7 @@ C (PASS1=FALSE and CNSTR=TRUE); i.e., CNSTR and PASS1 ...@@ -5702,7 +5702,7 @@ C (PASS1=FALSE and CNSTR=TRUE); i.e., CNSTR and PASS1
C have opposite values. C have opposite values.
C C
IF (CNSTR .NEQV. PASS1) IF (CNSTR .NEQV. PASS1)
. WRITE (LUN,210,ERR=13) X0, Y0, X(N1), Y(N1) . CONTINUE WRITE (LUN,210,ERR=13) X0, Y0, X(N1), Y(N1)
ENDIF ENDIF
IF (N1 .EQ. N0BAK) CNSTR = .FALSE. IF (N1 .EQ. N0BAK) CNSTR = .FALSE.
C C
...@@ -5720,9 +5720,9 @@ C are applied to everything, the dash length must be ...@@ -5720,9 +5720,9 @@ C are applied to everything, the dash length must be
C specified in world coordinates. C specified in world coordinates.
C C
PASS1 = .FALSE. PASS1 = .FALSE.
WRITE (LUN,150,ERR=13) CONTINUE WRITE (LUN,150,ERR=13)
T = DASHL*2.0/(SFX+SFY) T = DASHL*2.0/(SFX+SFY)
WRITE (LUN,220,ERR=13) T CONTINUE WRITE (LUN,220,ERR=13) T
220 FORMAT ('[',F12.6,'] 0 setdash') 220 FORMAT ('[',F12.6,'] 0 setdash')
GO TO 4 GO TO 4
ENDIF ENDIF
...@@ -5730,8 +5730,8 @@ C ...@@ -5730,8 +5730,8 @@ C
C Paint the path and restore the saved graphics state (with C Paint the path and restore the saved graphics state (with
C no clip path). C no clip path).
C C
WRITE (LUN,150,ERR=13) CONTINUE WRITE (LUN,150,ERR=13)
WRITE (LUN,230,ERR=13) CONTINUE WRITE (LUN,230,ERR=13)
230 FORMAT ('grestore') 230 FORMAT ('grestore')
IF (NUMBR) THEN IF (NUMBR) THEN
C C
...@@ -5740,7 +5740,7 @@ C Convert FSIZN from points to world coordinates, and ...@@ -5740,7 +5740,7 @@ C Convert FSIZN from points to world coordinates, and
C output the commands to select a font and scale it. C output the commands to select a font and scale it.
C C
T = FSIZN*2.0/(SFX+SFY) T = FSIZN*2.0/(SFX+SFY)
WRITE (LUN,240,ERR=13) T CONTINUE WRITE (LUN,240,ERR=13) T
240 FORMAT ('/Helvetica findfont'/ 240 FORMAT ('/Helvetica findfont'/
. F12.6,' scalefont setfont') . F12.6,' scalefont setfont')
C C
...@@ -5756,8 +5756,8 @@ C Move to (X0,Y0), and draw the label N0. The first char- ...@@ -5756,8 +5756,8 @@ C Move to (X0,Y0), and draw the label N0. The first char-
C acter will have its lower left corner about one C acter will have its lower left corner about one
C character width to the right of the nodal position. C character width to the right of the nodal position.
C C
WRITE (LUN,180,ERR=13) X0, Y0 CONTINUE WRITE (LUN,180,ERR=13) X0, Y0
WRITE (LUN,250,ERR=13) N0 CONTINUE WRITE (LUN,250,ERR=13) N0
250 FORMAT ('(',I3,') show') 250 FORMAT ('(',I3,') show')
9 CONTINUE 9 CONTINUE
ENDIF ENDIF
...@@ -5766,15 +5766,15 @@ C Convert FSIZT from points to world coordinates, and output ...@@ -5766,15 +5766,15 @@ C Convert FSIZT from points to world coordinates, and output
C the commands to select a font and scale it. C the commands to select a font and scale it.
C C
T = FSIZT*2.0/(SFX+SFY) T = FSIZT*2.0/(SFX+SFY)
WRITE (LUN,240,ERR=13) T CONTINUE WRITE (LUN,240,ERR=13) T
C C
C Display TITLE centered above the plot: C Display TITLE centered above the plot:
C C
Y0 = WY2 + 3.0*T Y0 = WY2 + 3.0*T
WRITE (LUN,260,ERR=13) TITLE, (WX1+WX2)/2.0, Y0