1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
FUNCTION CONLCM(X,Y,XD,YD,ZD,NDP,WK,IWK,LOC)
C
C +-----------------------------------------------------------------+
C | |
C | Copyright (C) 1986 by UCAR |
C | University Corporation for Atmospheric Research |
C | All Rights Reserved |
C | |
C | NCARGRAPHICS Version 1.00 |
C | |
C +-----------------------------------------------------------------+
C
C
C
C COMPUTE A Z VALUE FOR A GIVEN X,Y VALUE
C NOTE THAT X,Y MUST BE INSIDE THE CONVEX HULL OF THE INPUT DATA
C INORDER FOR THIS FUNCTION TO WORK.
C
C INPUT
C X-X COORDINATE OF REQUESTED POINT
C Y-Y COORDINATE OF REQUESTED POINT
C WK-LIST OF COEFICENTS FOR LINEAR INTERPOLATION FUNCTIONS
C LOCATED BY A = WK((TRI-1)*3+1)
C B = WK((TRI-2)*3+1)
C C = WK((TRI-3)*3+1)
C
C OUTPUT
C LOC-TRIANGLE NUMBER OF REQUESTED POINT
C Z VALUE AS FUNCTION RESULT
C
DIMENSION WK(1),IWK(1),XD(1),YD(1),ZD(1)
C
COMMON /CONR10/ NT ,NL ,NTNL ,JWIPT ,
1 JWIWL ,JWIWP ,JWIPL ,IPR ,
2 ITPV
C
SAVE
C
C LOCATE THE TRIANGLE
C
CALL CONLOC(NDP,XD,YD,NT,IWK(JWIPT),NL,IWK(JWIPL),X,Y,LOC,
1 IWK(JWIWL),WK)
C
C IF OUTSIDE CONVEX HULL THEN DON'T COMPUTE A VALUE
C
IF (LOC.GT.NT) RETURN
C
C GET THE VECTOR 1 VALUES FOR THE TRIANGLE
C
IVEC = (LOC-1)*3 + JWIPT
IV = IWK(IVEC)
X1 = X - XD(IV)
Y1 = Y - YD(IV)
Z1 = ZD(IV)
C
C COMPUT THE Z VALUE
C
IPOINT = (LOC-1)*3 + IPR
C
Z = (WK(IPOINT)*X1+WK(IPOINT+1)*Y1)/WK(IPOINT+2) + Z1
C
CONLCM = Z
C
RETURN
END
|