12 KT 1980. VI. 3 Het Fortran- intenpolatieprogramma: PROGRAM IPOLA(TAPE1tTAPE4) DATA AFSINP /0.1/ ITOT=I=J=0 AFST=XN=YN=0. NNR=1 READ d f 20NR XAf YA WRITE4 f 20NR f XA f YA 20 FORMAT(I5f5Xf2F10.3) 100 CONTINUE READ d f 20NR f XB f YB IF EOFd NE0GOTO 10 AFST=SGRT<XB-XA**2YB-YA)**2) IF(AFST.LTAFSINP)G0T030 ITOT=AFST/AFSINP+1 XAS=XB-XA)/ITOT YAS=(YB-YA)/ITOT DO 40 J=1fIT0T NNR'=NNR+1 XN=XA+XAS*J YN=YA+YAS*J 40 WRITE 4 f 20NNR f XN f YN G0T090 30 NNR=NNR+1 WRITE4 f 20NNR f XD f YD 90 XA=XB YA=YB G0T0100 10 CONTINUE END Het Fortranprogramma ZWAPU (zwaartepunt) PROGRAM ZWAPUTAPElfTAPE6) DIMENSION X300)fY(300 DATA IC /10/ JC=IC/2 NNR=0 READ1f 20N f X 1fY<1) WRITE<6f20)NfX<1)fY(1) 60 CONTINUE DO 10 I=2fIC READ1f 20)NfX(I)fY(I) IF EOF1NE0GOT0 40 10 CONTINUE XA=X<1 YA=Y1 XB=X JC YB=YJC XC=X(IC) YC=YIC XZ=XA+XB+XC/3 YZ=(YA+YB+YC)/3. NNR-NNR+1 WRITE6 f 20NNR f XZ f YZ X(1)=XC Y(1>=YC GOTO 60 20 FORMAT(I5f5Xf2F10.3) 40 CONTINUE END Het Fortranprogramma GLYD (glijdend gemiddelde): PROGRAM GLYDTAPElfTAPE2) DIMENSION XX(10)fYY(IO) DATA M /10/ NR=1 XT0T=YT0T=0. 1=0 L=M-1 READ1f 20IRf Xf Y WRITE2 f 20NR fXfY 40 1=1+1 IFd.GT.M)GOTO10 READ<1f20)IRfXX<IfYY(I) XTOT=XTOT+XX<I YTOT=YTOT+YY<I G0T040 10 1=0 NR=NR+1 XN=XTOT/M YN=YTOT/M WRITE 2 f 20NR f XN f YN XT0T=0. YT0T=0. DO 30 K=1f L XX(K=XXK+l YY K)=YY(K+l XTOT=XTOT+XX(K 30 YTOT=YTOT+YY<K) READ1f 20IR f XXMf YYM IF(EOFd) NE0)GOTO 50 XTOT=XTOT+XX(M) YTOT=YTOT+YY(M) GOTO 10 50 NR=NR+1 WRITE 2 f 20NR fXX(L)fYY(L) 20 FORMAT15 f 5X f 2F103 END Het Fortranprogramma MAXLO (maximale loodlijn): PROGRAM MAXLOTAPElfTAPE7) DIMENSION X300fY(300f AFST300 DATA IR /5/ N= I 1 READ1f 20NR f X1f Y1 WRITE 7 f 20NR f X 1fY(1) 20 FORMAT15 f 5X f 2F103 100 VAF=BAF=0 IA=IB=JB=0 10 CONTINUE 1 1 1 IF(I.GT.IR)GOTO40 READ1f 20NR f XIf Y I IFEOF1NE0GOTO 200 G0T010 40 1 1 AN=<X(IR)-X(l)) BN=(Y(IR)-Y(l)) IFANEO0>AN=0.0000001 IF BNEQ 0)BN=0.0000001 RCA=YIR-Y1AN RCB=XIR-X 1BN DO 30 J=2fIR CN=RCB-RCA IFCNEQ0)CN=0.0000001 XN=(-RCB*X(J)-Y(J)+Y(l)-RCA*X(l))/CN YN=Y1+RCA* XN-X1 JB=Yd )-YN+RCA#(XN-Xd IF(JB.LT.0GOT050 AFSTJ=SGRT(XN-X(J)**2+YN-YJ)**2) IFAFSTJGTVAFIA=J G0T030 50 AFST J=SQRT XN-XJ**2+YN-YJ**2 IFAFSTJGT BAFIB=J 30 IF(IA.EQ.O)G0T060 IFdB.EQ.O)G0T070 IFdB.LT. 1A)G0T080 N=N+1 WRITE7 f 20)NfX(IA)fY(IA) 60 N=N+1 WRITE 7 f 20)Nf X(IB)fY(IB) G0T090 80 N=N+1 WR'I TE 7 f 20 )NfX(IB) fY(IB) 70 N=N+1 WRITE(7f20)NfX(IA)fY<IA) 90 X1=XIR Yd =Y< IR) G0T0100 200 N=N+1 WRITE<7f20)NfX(I-I)fY(I-I) END Het Fortranprogramma ALPHA: PROGRAM ALPHATAPElfTAPE3) IMPLICIT DOUBLE PRECISION(D) DIMENSION DX300f DY300 DATA IC /3/ DC0SI=0.707106781 CC=IC/2 JC=IFIXCC+O5 NR=1 READ(1f 20N f DX(1f DY(1 DDX=DX<1) DDY=DY 1 WRITE3f 20)NfDX1fDY(1 20 FORMAT 15f5Xf2F103 50 CONTINUE DO 10 I=2fIC READ(1f 20N f DX If DYI 10 IF(EOFd) .NE.O. )GOTO 100 DLAB=DXJC-DX <1**2+DYJC-DY(1**2 DLAC= <DX<IC)-DX1**2+(DY(IC)-DY(l)**2) DLBC=<(DX(IC)-DX(JC))**2+<DY(IC)-DY<JC))**2) IFDLACEQ0ORDLABEQ.0)GOTO 30 DCOSIB=DLAC**2+DLAB**2-DLBC**22*DLAC*DLAB IFDCOSIB.GTDCOSIORDCOSIBEQ-1GOTO 30 DO 40 J=2fIC NR=NR+1 40 WRITE(3f20)NRfDX(J)fDY<J) DXd )=DX( IC) DY 1)=DY(IC) GOTO 50 30 NR=NR+1 WRITE(3f20)NRfDX(IC)fDY(IC) DXd )=DX( IC) DY d=DY(IC) GOTO 50 NR=NR+1 100 WRITE3 f 20NR f DDX f DDY END

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

Kartografisch Tijdschrift | 1980 | | pagina 14