]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/server/dist/share/proj/testvarious
Adding pkg-precompiled tileserver-mapnik to avoid npm install
[simantics/district.git] / org.simantics.maps.server / server / dist / share / proj / testvarious
1 :
2 # Script to do some testing of various transformation that do not depend
3 # on datum files.
4 #
5 #
6 NAD_DIR=`dirname $0`
7 EXE=$1
8
9 usage()
10 {
11     echo "Usage: ${0} <path to 'cs2cs' program>"
12     echo
13     exit 1
14 }
15
16 if test -z "${EXE}"; then
17     EXE=../src/cs2cs
18 fi
19
20 if test ! -x ${EXE}; then
21     echo "*** ERROR: Can not find '${EXE}' program!"
22     exit 1
23 fi
24
25 # Would be great to have a universale way of selecting a locale with
26 # a decimal separator that is not '.'
27 if command locale >/dev/null 2>/dev/null; then
28     if test `locale -a | grep fr_FR.utf8`; then
29         echo "Using locale with comma as decimal separator"
30         export LC_ALL=fr_FR.UTF-8
31         export PROJ_USE_ENV_LOCALE=1
32     fi
33 fi
34
35 echo "============================================"
36 echo "Running ${0} using ${EXE}:"
37 echo "============================================"
38
39 OUT=tv_out
40 #EXE=../src/cs2cs
41 #
42 echo "doing tests into file ${OUT}, please wait"
43 rm -f ${OUT}
44 #
45 echo "##############################################################" >> ${OUT}
46 echo Test raw ellipse to raw ellipse >> ${OUT}
47 #
48 $EXE +proj=latlong +ellps=clrk66 \
49  +to +proj=latlong +ellps=bessel \
50  -E >>${OUT} <<EOF
51 79d58'00.000"W 37d02'00.000"N 0.0
52 79d58'00.000"W 36d58'00.000"N 0.0
53 EOF
54 #
55 echo "##############################################################" >> ${OUT}
56 echo Test NAD27 to raw ellipse >> ${OUT}
57 #
58 $EXE +proj=latlong +datum=NAD27 \
59  +to +proj=latlong +ellps=bessel \
60  -E >>${OUT} <<EOF
61 79d00'00.000"W 35d00'00.000"N 0.0
62 EOF
63 #
64 echo "##############################################################" >> ${OUT}
65 echo Between two 3parameter approximations on same ellipsoid >> ${OUT}
66 #
67 $EXE +proj=latlong +ellps=bessel +towgs84=5,0,0 \
68  +to +proj=latlong +ellps=bessel +towgs84=1,0,0 \
69  -E >>${OUT} <<EOF
70 0d00'00.000"W 0d00'00.000"N 0.0
71 79d00'00.000"W 45d00'00.000"N 0.0
72 EOF
73 #
74 echo "##############################################################" >> ${OUT}
75 echo 3param to raw ellipsoid on same ellipsoid >> ${OUT}
76 #
77 $EXE +proj=latlong +ellps=bessel +towgs84=5,0,0 \
78  +to +proj=latlong +ellps=bessel  \
79  -E >>${OUT} <<EOF
80 0d00'00.000"W 0d00'00.000"N 0.0
81 79d00'00.000"W 45d00'00.000"N 0.0
82 EOF
83 #
84 echo "##############################################################" >> ${OUT}
85 echo Test simple prime meridian handling. >> ${OUT}
86 #
87 $EXE +proj=latlong +datum=WGS84 +pm=greenwich  \
88  +to +proj=latlong +datum=WGS84 +pm=1 \
89  -E >>${OUT} <<EOF
90 0d00'00.000"W 0d00'00.000"N 0.0
91 79d00'00.000"W 45d00'00.000"N 0.0
92 EOF
93 #
94 echo "##############################################################" >> ${OUT}
95 echo Test support for the lon_wrap switch. >> ${OUT}
96 #
97 $EXE +proj=latlong +datum=WGS84  \
98  +to +proj=latlong +datum=WGS84 +lon_wrap=180 \
99  -E >>${OUT} <<EOF
100 1d00'00.000"W 10d00'00.000"N 0.0
101 0d00'00.000"W 10d00'00.000"N 0.0
102 0d00'00.000"E 10d00'00.000"N 0.0
103 1d00'00.000"E 45d00'00.000"N 0.0
104 179d00'00.000"E 45d00'00.000"N 0.0
105 181d00'00.000"E 45d00'00.000"N 0.0
106 350d00'00.000"E 45d00'00.000"N 0.0
107 370d00'00.000"E 45d00'00.000"N 0.0
108 EOF
109 #
110 echo "##############################################################" >> ${OUT}
111 echo Test simple prime meridian handling within a projection. >> ${OUT}
112 #
113 $EXE +proj=utm +zone=11 +datum=WGS84 +pm=3 \
114  +to +proj=latlong +datum=WGS84 +pm=1w \
115  -E >>${OUT} <<EOF
116 500000 3000000
117 EOF
118 echo "##############################################################" >> ${OUT}
119 echo Test geocentric x/y/z generation. >> ${OUT}
120 #
121 $EXE +proj=latlong +datum=WGS84  \
122  +to +proj=geocent +datum=WGS84  \
123  -E >>${OUT} <<EOF
124 0d00'00.001"W 0d00'00.001"N 0.0
125 0d00'00.001"W 0d00'00.001"N 10.0
126 79d00'00.000"W 45d00'00.000"N 0.0
127 45d00'00.000"W 89d59'59.990"N 0.0
128 EOF
129 #
130 echo "##############################################################" >> ${OUT}
131 echo Test geocentric x/y/z consumption. >> ${OUT}
132 #
133 $EXE +proj=geocent +datum=WGS84  \
134  +to +proj=latlong +datum=WGS84  \
135  -E >>${OUT} <<EOF
136 6378137.00      -0.00 0.00
137 6378147.00      -0.00 0.00
138 861996.98       -4434590.01 4487348.41
139 0.00    -0.00 6356752.31
140 EOF
141 #
142 #echo "#############################################################" >> ${OUT}
143 #echo Test conversion between geocentric latlong and geodetic latlong >> ${OUT}
144 #
145 # The +geoc flag does not currently work with pj_transform() so this is
146 # disabled.
147 #
148 #$EXE +proj=latlong +datum=WGS84 +geoc \
149 # +to +proj=latlong +datum=WGS84  \
150 # -E >>${OUT} <<EOF
151 #0d00'00.000"W 0d00'00.000"N 0.0
152 #79d00'00.000"W 45d00'00.000"N 0.0
153 #12d00'00.000"W 45d00'00.000"N 0.0
154 #0d00'00.000"W 90d00'00.000"N 0.0
155 #EOF
156 #
157 echo "##############################################################" >> ${OUT}
158 echo "Test stere projection (re: win32 ticket 12)" >> ${OUT}
159 #
160 $EXE +proj=latlong +datum=WGS84 \
161  +to +proj=stere +lat_0=90 +lon_0=0 +lat_ts=70 +datum=WGS84 \
162  -E >>${OUT} <<EOF
163 105 40
164 EOF
165 #
166 echo "##############################################################" >> ${OUT}
167 echo "Test stere without lat_ts (#147)" >> ${OUT}
168 #
169 $EXE +proj=latlong +datum=WGS84 \
170  +to +proj=stere +lat_0=40 +lon_0=10  +datum=WGS84 \
171  -E >>${OUT} <<EOF
172 20 45
173 EOF
174 #
175 echo "##############################################################" >> ${OUT}
176 echo "Test sts projection (re: ticket 12)" >> ${OUT}
177 #
178 $EXE +proj=latlong +ellps=WGS84 \
179  +to +proj=kav5 +ellps=WGS84 +units=m \
180  -E >>${OUT} <<EOF
181 4.897000 52.371000
182 EOF
183 $EXE +proj=kav5 +ellps=WGS84 +units=m \
184  +to +proj=latlong +ellps=WGS84 \
185  -E >>${OUT} <<EOF
186 383646.088858 5997047.888175
187 EOF
188 #
189 echo "##############################################################" >> ${OUT}
190 echo "Test RSO Borneo projection (re: ticket 62)" >> ${OUT}
191 #
192 $EXE +proj=latlong +a=6377298.556 +rf=300.8017 \
193  +to +proj=omerc +a=6377298.556 +rf=300.8017 +lat_0=4 +lonc=115 \
194                  +alpha=53d18\'56.9537 +gamma=53d7\'48.3685  +k_0=0.99984 \
195                  +x_0=590476.87 +y_0=442857.65 \
196  -E >>${OUT} <<EOF
197 116d2'11.12630 5d54'19.90183
198 EOF
199 echo "##############################################################" >> ${OUT}
200 echo "Test extended transverse mercator (#97)" >> ${OUT}
201 #
202 $EXE +proj=etmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
203  +to +proj=latlong +datum=WGS84 \
204  -E >>${OUT} <<EOF
205 10000 20000
206 500000 2000000
207 1000000 2000000
208 2000000 2000000
209 4000000 2000000
210 EOF
211 #
212 echo "##############################################################" >> ${OUT}
213 echo "Test extended transverse mercator inverse (#97)" >> ${OUT}
214 #
215 $EXE +proj=latlong +datum=WGS84 \
216  +to +proj=etmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
217  -E >>${OUT} <<EOF
218 0dN 0.000
219 15d22'16.108"W  17d52'53.478"N 0.000
220 10d40'55.532"W  17d42'48.526"N 0.000
221 1d32'21.33"W    17d3'47.233"N 0.000
222 15d4'42.357"E   14d48'56.372"N 0.000
223 EOF
224 #
225 echo "##############################################################" >> ${OUT}
226 echo "Test transverse mercator (#97)" >> ${OUT}
227 #
228 $EXE +proj=tmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
229  +to +proj=latlong +datum=WGS84 \
230  -E >>${OUT} <<EOF
231 10000 20000
232 500000 2000000
233 1000000 2000000
234 2000000 2000000
235 4000000 2000000
236 EOF
237 #
238 echo "##############################################################" >> ${OUT}
239 echo "Test transverse mercator inverse (#97)" >> ${OUT}
240 #
241 $EXE +proj=latlong +datum=WGS84 \
242  +to +proj=tmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000 \
243  -E >>${OUT} <<EOF
244 0dN 0.000
245 15d22'16.108"W  17d52'53.478"N 0.000
246 10d40'55.532"W  17d42'48.526"N 0.000
247 1d32'21.33"W    17d3'47.233"N 0.000
248 15d4'42.357"E   14d48'56.372"N 0.000
249 EOF
250 #
251 echo "##############################################################" >> ${OUT}
252 echo "Test robinson projection (#113)" >> ${OUT}
253 #
254 $EXE +proj=latlong +datum=WGS84 \
255  +to +proj=robin +datum=WGS84 \
256  -E >>${OUT} <<EOF
257 -30 40
258 -35 45
259 20 40
260 EOF
261 $EXE +proj=robin +datum=WGS84 \
262  +to +proj=latlong +datum=WGS84 \
263  -E >>${OUT} <<EOF
264 -2612095.95     4276351.58 0.00
265 -2963455.42     4805073.65 0.00
266 1741397.30      4276351.58 0.00
267 EOF
268 echo "##############################################################" >> ${OUT}
269 echo "Test hammer projection (pull request #329)" >> ${OUT}
270 $EXE +proj=latlong +datum=WGS84 \
271  +to +proj=hammer  +datum=WGS84 \
272  -E >>${OUT} <<EOF
273 -30 40
274 -35 45
275 20 40
276 EOF
277 $EXE +proj=hammer  +datum=WGS84 \
278  +to +proj=latlong +datum=WGS84 \
279  -E >>${OUT} <<EOF
280 -2711575.08     4395506.62 0.00
281 -2964412.70     4929091.33 0.00
282 1811748.54      4377349.50 0.00
283 EOF
284 echo "##############################################################" >> ${OUT}
285 echo "Test healpix forward projection on sphere" >> ${OUT}
286 $EXE +proj=latlong +a=1 +lon_0=0 \
287  +to +proj=healpix +a=1 +lon_0=0  -f '%.'5'f' \
288  -E >>${OUT} <<EOF
289 0 41.81031
290 -90 0
291 EOF
292 $EXE +proj=latlong +R=5 \
293  +to +proj=healpix +R=5 -f '%.'5'f' \
294  -E >>${OUT} <<EOF
295 0 0
296 0 41.810314895778596
297 0 -41.810314895778596
298 90.0 0
299 -90.0 0
300 -180 0
301 -180 90.0
302 -180 -90.0
303 0 60.0
304 0 -60.0
305 EOF
306 echo "Test healpix forward projection on ellipsoid" >> ${OUT}
307 $EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
308  +to +proj=healpix +a=1 +lon_0=0 +ellps=WGS84 -f '%.'5'f' \
309  -E >>${OUT} <<EOF
310 0 41.937853904844985
311 -90 0
312 EOF
313 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
314  +to +proj=healpix +a=5 +e=0.8 +r_a=4.3220011711888882 -f '%.'5'f' \
315  -E >>${OUT} <<EOF
316 0 0
317 0 41.810314895778596
318 0 -41.810314895778596
319 90.0 0
320 -90.0 0
321 -180 0
322 -180 90.0
323 -180 -90.0
324 0 60.0
325 0 -60.0
326 EOF
327 echo "Test healpix inverse projection on ellipsoid" >> ${OUT}
328 $EXE +proj=latlong +a=1 +lon_0=0 +ellps=WGS84 \
329  +to +proj=healpix +a=1 +lon_0=0 +ellps=WGS84 -f '%.'5'f' -I\
330  -E >>${OUT} <<EOF
331 0 0.7853981633974483
332 -1.5707963267948966 0
333 EOF
334 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
335  +to +proj=healpix +a=5 +e=0.8 +r_a=4.3220011711888882 -f '%.'5'f' -I\
336  -E >>${OUT} <<EOF
337 0.0 0.0
338 0.0 2.0547874222147415
339 0.0 -2.0547874222147415
340 6.788983564106746 0.0
341 -6.788983564106746 0.0
342 -13.577967128213492 0.0
343 -10.183475346160119 6.788983564106746
344 -10.183475346160119 -6.788983564106746
345 0.0 3.351278550178025
346 0.0 -3.351278550178025
347 EOF
348
349 echo "##############################################################" >> ${OUT}
350 echo "Test rHEALPix forward projection on sphere north=0 south=0" >> ${OUT}
351 $EXE +proj=latlong +R=5 \
352  +to +proj=rhealpix +R=5 +north_square=0 +south_square=0 -f '%.'5'f' \
353   -E >>${OUT} <<EOF
354 -180 30.0
355 -180 -25.714285714285715
356 0 0
357 60.0 41.809314895778598
358 EOF
359
360 echo "##############################################################" >> ${OUT}
361 echo "Test rHEALPix forward projection on sphere north=1 south=1" >> ${OUT}
362 $EXE +proj=latlong +R=5 \
363  +to +proj=rhealpix +R=5 +north_square=1 +south_square=1 -f '%.'5'f' \
364   -E >>${OUT} <<EOF
365 -180 30.0
366 -180 -25.714285714285715
367 0 0
368 60.0 41.809314895778598
369 EOF
370
371 echo "##############################################################" >> ${OUT}
372 echo "Test rHEALPix inverse projection on sphere north=0 south=0" >> ${OUT}
373 $EXE +proj=latlong +R=5 \
374  +to +proj=rhealpix +R=5 +north_square=0 +south_square=0 -f '%.'5'f' -I\
375   -E >>${OUT} <<EOF
376 0.0 0.0
377 0.0 3.9269908169872414
378 0.0 -3.9269908169872414
379 7.853981633974483 0.0
380 -7.853981633974483 0.0
381 EOF
382
383 echo "##############################################################" >> ${OUT}
384 echo "Test rHEALPix inverse projection on sphere north=1 south=1" >> ${OUT}
385 $EXE +proj=latlong +R=5 \
386  +to +proj=rhealpix +R=5 +north_square=1 +south_square=1 -f '%.'5'f' -I\
387   -E >>${OUT} <<EOF
388 0.0 0.0
389 0.0 3.9269908169872414
390 0.0 -3.9269908169872414
391 7.853981633974483 0.0
392 -7.853981633974483 0.0
393 EOF
394
395 echo "##############################################################" >> ${OUT}
396 echo "Test rHEALPix forward projection on ellipsoid north=0 south=0" >> ${OUT}
397 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
398  +to +proj=rhealpix +a=5 +e=0.8 +r_a=4.3220011711888882 +north_square=0 +south_square=0 -f '%.'5'f' \
399   -E >>${OUT} <<EOF
400 0 0
401 0 41.810314895778596
402 0 -41.810314895778596
403 90.0 0
404 -90.0 0
405 EOF
406
407 echo "##############################################################" >> ${OUT}
408 echo "Test rHEALPix forward projection on ellipsoid north=1 south=1" >> ${OUT}
409 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
410  +to +proj=rhealpix +a=5 +e=0.8 +r_a=4.3220011711888882 +north_square=1 +south_square=1 -f '%.'5'f' \
411   -E >>${OUT} <<EOF
412 0 0
413 0 41.810314895778596
414 0 -41.810314895778596
415 90.0 0
416 -90.0 0
417 EOF
418
419 echo "##############################################################" >> ${OUT}
420 echo "Test rHEALPix inverse projection on ellipsoid north=0 south=0" >> ${OUT}
421 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
422  +to +proj=rhealpix +a=5 -I +e=0.8 +r_a=4.3220011711888882 +north_square=0 +south_square=0 -f '%.'5'f'\
423   -E >>${OUT} <<EOF
424 0.0 0.0
425 0.0 2.0547874222147415
426 0.0 -2.0547874222147415
427 6.788983564106746 0.0
428 -6.788983564106746 0.0
429 EOF
430
431 echo "##############################################################" >> ${OUT}
432 echo "Test rHEALPix inverse projection on ellipsoid north=1 south=1" >> ${OUT}
433 $EXE +proj=latlong +a=5 +e=0.8 +r_a=4.3220011711888882\
434  +to +proj=rhealpix +a=5 -I +e=0.8 +r_a=4.3220011711888882 +north_square=1 +south_square=1 -f '%.'5'f'\
435  -E >>${OUT} <<EOF
436 0.0 0.0
437 0.0 2.0547874222147415
438 0.0 -2.0547874222147415
439 6.788983564106746 0.0
440 -6.788983564106746 0.0
441 EOF
442
443 echo "##############################################################" >> ${OUT}
444 echo "Test geos projection" >> ${OUT}
445 echo "Test geos on a sphere" >> ${OUT}
446 $EXE +proj=latlong +ellps=sphere \
447  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere -E >>${OUT} <<EOF
448 16d11'8" 58d35'31"
449 -43d11'47" -22d54'30"
450 18d25'26" -33d55'31"
451 47d58'42" 29d22'11"
452 EOF
453 echo "Test geos on a ellipsoid" >> ${OUT}
454 $EXE +proj=latlong +ellps=sphere \
455  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 -E >>${OUT} <<EOF
456 16d11'8" 58d35'31"
457 -43d11'47" -22d54'30"
458 18d25'26" -33d55'31"
459 47d58'42" 29d22'11"
460 EOF
461 echo "Test inv geos on a sphere" >> ${OUT}
462 $EXE +proj=latlong +ellps=sphere \
463  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere -I -E >>${OUT} <<EOF
464 849736.77 4960015.43
465 -3780930.93 -2326595.36
466 1608689.65 -3412115.56
467 3825202.59 2885980.79
468 EOF
469 echo "Test inv geos on a ellipsoid" >> ${OUT}
470 $EXE +proj=latlong +ellps=sphere \
471  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 -I -E >>${OUT} <<EOF
472 852862.53 4945122.70
473 -3787026.57 -2314765.32
474 1612331.00 -3397031.37
475 3832522.65 2872185.29
476 EOF
477 echo "Test geos on a sphere with alternate sweep" >> ${OUT}
478 $EXE +proj=latlong +ellps=sphere \
479  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere +sweep=x -E >>${OUT} <<EOF
480 16d11'8" 58d35'31"
481 -43d11'47" -22d54'30"
482 18d25'26" -33d55'31"
483 47d58'42" 29d22'11"
484 EOF
485 echo "Test geos on a ellipsoid with alternate sweep" >> ${OUT}
486 $EXE +proj=latlong +ellps=sphere \
487  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 +sweep=x -E >>${OUT} <<EOF
488 16d11'8" 58d35'31"
489 -43d11'47" -22d54'30"
490 18d25'26" -33d55'31"
491 47d58'42" 29d22'11"
492 EOF
493 echo "Test inv geos on a sphere with alternate sweep" >> ${OUT}
494 $EXE +proj=latlong +ellps=sphere \
495  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=sphere +sweep=x -I -E >>${OUT} <<EOF
496 841586.28 4961396.21
497 -3772913.22 -2339604.71
498 1601377.77 -3415545.15
499 3812722.89 2902474.62
500 EOF
501 echo "Test inv geos on a ellipsoid with alternate sweep" >> ${OUT}
502 $EXE +proj=latlong +ellps=sphere \
503  +to +proj=geos +h=35785831.0 +lon_0=0 +ellps=WGS84 +sweep=x -I -E >>${OUT} <<EOF
504 844731.03 4946509.59
505 -3779077.27 -2327750.87
506 1605067.15 -3400461.47
507 3820138.08 2888664.15
508 EOF
509 #
510 echo "##############################################################" >> ${OUT}
511 echo "Test the Natural Earth Projection" >> ${OUT}
512 $EXE +proj=latlong +a=1 +lon_0=0 \
513  +to +proj=natearth +a=6371008.7714 +b=6371008.7714 -f '%.'7'f' \
514  -E >>${OUT} <<EOF
515 0.0 0.0 0 0.0 0.0
516 0.0 22.5 0 0.0 2525419.569383768
517 0.0 45.0 0 0.0 5052537.389973222
518 0.0 67.5 0 0.0 7400065.6562573705
519 0.0 90.0 0 0.0 9062062.394736718
520 45.0 0.0 0 4356790.016612169 0.0
521 45.0 22.5 0 4253309.544984069 2525419.569383768
522 45.0 45.0 0 3924521.5829515466 5052537.389973222
523 45.0 67.5 0 3354937.47115583 7400065.6562573705
524 45.0 90.0 0 2397978.2448443635 9062062.394736718
525 90.0 0.0 0 8713580.033224339 0.0
526 90.0 22.5 0 8506619.089968137 2525419.569383768
527 90.0 45.0 0 7849043.165903093 5052537.389973222
528 90.0 67.5 0 6709874.94231166 7400065.6562573705
529 90.0 90.0 0 4795956.489688727 9062062.394736718
530 135.0 0.0 0 1.3070370049836507E7 0.0
531 135.0 22.5 0 1.2759928634952208E7 2525419.569383768
532 135.0 45.0 0 1.177356474885464E7 5052537.389973222
533 135.0 67.5 0 1.0064812413467491E7 7400065.6562573705
534 135.0 90.0 0 7193934.734533091 9062062.394736718
535 180.0 0.0 0 1.7427160066448677E7 0.0
536 180.0 22.5 0 1.7013238179936275E7 2525419.569383768
537 180.0 45.0 0 1.5698086331806187E7 5052537.389973222
538 180.0 67.5 0 1.341974988462332E7 7400065.6562573705
539 180.0 90.0 0 9591912.979377454 9062062.394736718
540 EOF
541 echo "##############################################################" >> ${OUT}
542 echo "Test the Natural Earth II Projection" >> ${OUT}
543 $EXE +proj=latlong +a=1 +lon_0=0 \
544  +to +proj=natearth2 +a=6371008.7714 +b=6371008.7714 -f '%.'7'f' \
545  -E >>${OUT} <<EOF
546 0.0 0.0 0 0.00000000 0.00000000
547 0.0 22.5 0 0.00000000 2531453.57080958
548 0.0 45.0 0 0.00000000 5051471.50086845
549 0.0 67.5 0 0.00000000 7395411.22478983
550 0.0 90.0 0 0.00000000 9073776.52662810
551 45.0 0.0 0 4239151.18200719 0.00000000
552 45.0 22.5 0 4138348.61904244 2531453.57080958
553 45.0 45.0 0 3830621.33880773 5051471.50086845
554 45.0 67.5 0 3158326.32836996 7395411.22478983
555 45.0 90.0 0 957973.37034235 9073776.52662810
556 90.0 0.0 0 8478302.36401439 0.00000000
557 90.0 22.5 0 8276697.23808488 2531453.57080958
558 90.0 45.0 0 7661242.67761547 5051471.50086845
559 90.0 67.5 0 6316652.65673992 7395411.22478983
560 90.0 90.0 0 1915946.74068470 9073776.52662810
561 135.0 0.0 0 12717453.54602160 0.00000000
562 135.0 22.5 0 12415045.85712730 2531453.57080958
563 135.0 45.0 0 11491864.01642320 5051471.50086845
564 135.0 67.5 0 9474978.98510988 7395411.22478983
565 135.0 90.0 0 2873920.11102705 9073776.52662810
566 180.0 0.0 0 16956604.72802880 0.00000000
567 180.0 22.5 0 16553394.47616980 2531453.57080958
568 180.0 45.0 0 15322485.35523090 5051471.50086845
569 180.0 67.5 0 12633305.31347990 7395411.22478983
570 180.0 90.0 0 3831893.48136940 9073776.52662810
571 EOF
572 echo "##############################################################" >> ${OUT}
573 echo "Test the Compact Miller projection" >> ${OUT}
574 $EXE +proj=latlong +a=1 +lon_0=0 \
575  +to +proj=comill +a=6371008.7714 +b=6371008.7714 -f '%.'7'f' \
576  -E >>${OUT} <<EOF
577 0.0 0.0 0 0.0 0.0
578 0.0 22.5 0 0.0 2537439.6610749415
579 0.0 45.0 0 0.0 5391682.432264133
580 0.0 67.5 0 0.0 8661480.510260897
581 0.0 90.0 0 0.0 12009484.264916677
582 45.0 0.0 0 5003778.588046594 0.0
583 45.0 22.5 0 5003778.588046594 2537439.6610749415
584 45.0 45.0 0 5003778.588046594 5391682.432264133
585 45.0 67.5 0 5003778.588046594 8661480.510260897
586 45.0 90.0 0 5003778.588046594 12009484.264916677
587 90.0 0.0 0 10007557.176093187 0.0
588 90.0 22.5 0 10007557.176093187 2537439.6610749415
589 90.0 45.0 0 10007557.176093187 5391682.432264133
590 90.0 67.5 0 10007557.176093187 8661480.510260897
591 90.0 90.0 0 10007557.176093187 12009484.264916677
592 135.0 0.0 0 15011335.76413978 0.0
593 135.0 22.5 0 15011335.76413978 2537439.6610749415
594 135.0 45.0 0 15011335.76413978 5391682.432264133
595 135.0 67.5 0 15011335.76413978 8661480.510260897
596 135.0 90.0 0 15011335.76413978 12009484.264916677
597 180.0 0.0 0 20015114.352186374 0.0
598 180.0 22.5 0 20015114.352186374 2537439.6610749415
599 180.0 45.0 0 20015114.352186374 5391682.432264133
600 180.0 67.5 0 20015114.352186374 8661480.510260897
601 180.0 90.0 0 20015114.352186374 12009484.264916677
602 EOF
603 echo "##############################################################" >> ${OUT}
604 echo "Test pconic (#148)" >> ${OUT}
605 #
606 $EXE +proj=latlong +datum=WGS84 \
607  +to +proj=pconic  +units=m +lat_1=20n +lat_2=60n +lon_0=60W +datum=WGS84 \
608  -E >>${OUT} <<EOF
609 -70.4 -23.65
610 EOF
611 $EXE +proj=pconic  +units=m +lat_1=20n +lat_2=60n +lon_0=60W +datum=WGS84 \
612  +to +proj=latlong +datum=WGS84 \
613  -E >>${OUT} <<EOF
614 -2240096.40 -6940342.15
615 EOF
616 echo "##############################################################" >> ${OUT}
617 echo "Test laea" >> ${OUT}
618 #
619 $EXE -f '%.12f' \
620      +proj=laea +lat_0=45 +lon_0=-100 +units=m +datum=WGS84 +no_defs \
621  +to +proj=latlong +datum=WGS84 \
622  -E >>${OUT} <<EOF
623 -6086629.0 4488761.0
624 EOF
625 echo "##############################################################" >> ${OUT}
626 echo "Test forward calcofi projection" >> ${OUT}
627 $EXE +proj=latlong +ellps=clrk66 \
628  +to +proj=calcofi +ellps=clrk66 \
629  -E >>${OUT} <<EOF
630 120d40'42.273"W 38d56'50.766"N
631 121d9'W 34d9'N
632 123d59'56.066"W 30d25'4.617"N
633 EOF
634 echo "Test inverse calcofi projection" >> ${OUT}
635 $EXE +proj=calcofi +ellps=clrk66 \
636  +to +proj=longlat +ellps=clrk66 \
637  -E >>${OUT} <<EOF
638 60 20
639 80 60
640 90 120
641 EOF
642 echo "##############################################################" >> ${OUT}
643 echo "Check inverse error handling with ob_tran (#225)" >> ${OUT}
644 $EXE +proj=ob_tran \
645     +o_proj=moll +o_lon_p=LON_POLE +o_lat_p=LAT_POLE +lon_0=180 +ellps=WGS84 \
646  -E >>${OUT} <<EOF
647 300000 400000
648 20000000 30000000
649 EOF
650 echo "Test inverse handling" >> ${OUT}
651 $EXE -I +proj=ob_tran \
652     +o_proj=moll +o_lon_p=LON_POLE +o_lat_p=LAT_POLE +lon_0=180 +ellps=WGS84 \
653  -E >>${OUT} <<EOF
654 10 20
655 EOF
656 echo "##############################################################" >> ${OUT}
657 echo "Test MGI datum gives expected results (#207)" >> ${OUT}
658 #
659 $EXE -f '%.7f' \
660      +proj=latlong +datum=WGS84 \
661  +to +init=epsg:31284 \
662  -E >>${OUT} <<EOF
663 16.33 48.20
664 EOF
665 echo "##############################################################" >> ${OUT}
666 echo "Test omerc sensitivity with locations 90d from origin(#114)" >> ${OUT}
667 #
668 $EXE -f '%.8f' \
669      +proj=latlong +ellps=WGS84 \
670  +to +proj=omerc +ellps=WGS84 +lon_1=62.581150 +lat_1=74.856102 \
671                  +lon_2=53.942810 +lat_2=74.905884 +units=km +no_rot +no_defs \
672  -E >>${OUT} <<EOF
673 56.958381652832 72.8798
674 56.9584 72.8798
675 EOF
676 echo "##############################################################" >> ${OUT}
677 echo "Test omerc differences between poles (#190)" >> ${OUT}
678 # First, north pole.
679 $EXE -f '%.3f' \
680      +proj=latlong +ellps=WGS84 \
681  +to +proj=omerc +ellps=WGS84 +datum=WGS84 +no_rot \
682                  +lon_1=-27 +lat_1=70 +lon_2=-38 +lat_2=80 +lat_0=70 \
683  -E >>${OUT} <<EOF
684 -27 70
685 -27 80
686 -27 89.9
687 163 89.9
688 163 80
689 EOF
690 # Again, for the south pole.
691 $EXE -f '%.3f' \
692      +proj=latlong +ellps=WGS84 \
693  +to +proj=omerc +ellps=WGS84 +datum=WGS84 +no_rot \
694                  +lon_1=-27 +lat_1=-70 +lon_2=-38 +lat_2=-80 +lat_0=-70 \
695  -E >>${OUT} <<EOF
696 -27 -70
697 -27 -80
698 -27 -89.9
699 163 -89.9
700 163 -80
701 EOF
702 echo "##############################################################" >> ${OUT}
703 echo "Test qsc" >> ${OUT}
704 #
705 $EXE -f '%.7f' \
706      +proj=latlong +datum=WGS84 \
707  +to +proj=qsc +datum=WGS84 +no_defs \
708  -E >>${OUT} <<EOF
709 13 -10
710 EOF
711 $EXE -f '%.13f' \
712      +proj=qsc +datum=WGS84 +no_defs \
713  +to +proj=latlong +datum=WGS84 \
714  -E >>${OUT} <<EOF
715 2073986.94908809568733  -1680858.27222427958623
716 EOF
717 echo "##############################################################" >> ${OUT}
718 echo "Test bug 229" >> ${OUT}
719 #
720 $EXE -f '%.13f' \
721      +init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0 \
722  +to +proj=latlong +datum=WGS84 +no_defs \
723  -E >>${OUT} <<EOF
724 13 -10
725 EOF
726 echo "##############################################################" >> ${OUT}
727 echo "Test bug 229 (2)" >> ${OUT}
728 #
729 $EXE -f '%.13f' \
730      +init=epsg:4326 +to +init=epsg:4326 \
731  -E >>${OUT} <<EOF
732 13 -10
733 EOF
734 echo "##############################################################" >> ${OUT}
735 echo "Test bug 244 " >> ${OUT}
736 #
737 $EXE -f '%.8f' \
738      +init=epsg:4326 \
739      +to +proj=aeqd +lon_0=130.0 +lat_0=40.0 +a=6378137 +b=6378137 +units=m +no_defs \
740  -E >>${OUT} <<EOF
741 -140.100000 -87.000000
742 EOF
743 echo "##############################################################" >> ${OUT}
744 echo "Test bug 244 (2)" >> ${OUT}
745 #
746 $EXE -f '%.11f' \
747      +proj=aeqd +lon_0=130.0 +lat_0=40.0 +a=6378137 +b=6378137 +units=m +no_defs \
748      +to +init=epsg:4326 \
749  -E >>${OUT} <<EOF
750 987122.418330284 -14429896.539530909
751 EOF
752 echo "##############################################################" >> ${OUT}
753 echo "Test bug 245 (use +datum=carthage)" >> ${OUT}
754 #
755 $EXE -f '%.7f' \
756      +proj=longlat +datum=WGS84 +no_defs +to +proj=utm +zone=32 +datum=carthage +no_defs \
757  -E >>${OUT} <<EOF
758 10 34
759 EOF
760 echo "##############################################################" >> ${OUT}
761 echo "Test bug 245 (use expansion of +datum=carthage)" >> ${OUT}
762 #
763 $EXE -f '%.7f' \
764      +proj=longlat +datum=WGS84 +no_defs +to +proj=utm +zone=32 +a=6378249.2 +b=6356515 +towgs84=-263.0,6.0,431.0 +no_defs \
765  -E >>${OUT} <<EOF
766 10 34
767 EOF
768 echo  "##############################################################" >> ${OUT}
769 echo  "Test SCH forward projection" >> ${OUT}
770 #
771 $EXE -f '%.7f' \
772     +proj=latlong +datum=WGS84 +to +proj=sch +datum=WGS84 +plat_0=30.0 +plon_0=45.0 \
773     +phdg_0=-12.0 +nodefs \
774  -E >> ${OUT} <<EOF
775 0.0 0.0
776 0.0 90.0
777 45.0 45.0
778 45.1 44.9
779 44.9 45.1
780 30.0 45.0
781 EOF
782 echo  "##############################################################" >> ${OUT}
783 echo  "Test SCH inverse projection" >> ${OUT}
784 #
785 $EXE -f '%.7f' \
786     +proj=sch +datum=WGS84 +plat_0=30.0 +plon_0=45.0 +phdg_0=-12.0 +nodefs +to \
787     +proj=latlong +datum=WGS84 \
788  -E >> ${OUT} <<EOF
789 0. 0.
790 0. 1000.
791 1000. 0.
792 1000. 1000.
793 EOF
794 ##############################################################################
795 echo "##############################################################" >> ${OUT}
796 echo "Test issue #316 (switch utm to use etmerc)" >> ${OUT}
797 #
798 $EXE -f '%.6f' \
799      +proj=latlong +datum=WGS84 +no_defs +to +proj=utm +zone=35 +datum=WGS84 +no_defs \
800  -E >>${OUT} <<EOF
801 0 83
802 EOF
803 ##############################################################################
804 echo "##############################################################" >> ${OUT}
805 echo "Test issue #316 (switch utm to use etmerc)" >> ${OUT}
806 #
807 $EXE -f '%.6f' \
808      +proj=latlong +datum=WGS84 +no_defs +to +proj=etmerc +datum=WGS84 +no_defs +k=0.9996 +lon_0=27 +x_0=500000 -f %.6f \
809  -E >>${OUT} <<EOF
810 0 83
811 EOF
812 ##############################################################################
813 echo  "##############################################################" >> ${OUT}
814 echo  "Test nzmg forward projection" >> ${OUT}
815 #
816 $EXE -f '%.7f' \
817     +proj=latlong +datum=WGS84 +to \
818     +proj=nzmg +lat_0=-41 +lon_0=173 +x_0=2510000 +y_0=6023150 +ellps=WGS84 +units=m +no_defs \
819  -E >> ${OUT} <<EOF
820 175. -40. 0.
821 EOF
822 ##############################################################################
823 echo  "##############################################################" >> ${OUT}
824 echo  "Test nzmg inverse projection" >> ${OUT}
825 #
826 $EXE -f '%.7f' \
827     +proj=nzmg +lat_0=-41 +lon_0=173 +x_0=2510000 +y_0=6023150 +ellps=WGS84 +units=m +no_defs +to \
828     +proj=latlong +datum=WGS84 \
829  -E >> ${OUT} <<EOF
830 2680778.57267967 6132228.07645127 0.
831 EOF
832 ##############################################################################
833 echo  "##############################################################" >> ${OUT}
834 echo  "Test misrsom forward projection" >> ${OUT}
835 #
836 $EXE -f '%.7f' \
837     +proj=latlong +datum=WGS84 +no_defs +to \
838     +proj=misrsom +path=41 +ellps=WGS84 +units=m \
839  -E >> ${OUT} <<EOF
840 48.64966165540372 66.2263195368941 0.
841 EOF
842 ##############################################################################
843 echo  "##############################################################" >> ${OUT}
844 echo  "Test misrsom inverse projection" >> ${OUT}
845 #
846 $EXE -f '%.7f' \
847     +proj=misrsom +path=41 +ellps=WGS84 +units=m +no_defs +to \
848     +proj=latlong +datum=WGS84 -f '%0.7f' \
849  -E >> ${OUT} <<EOF
850 7461300.0 528000.0 0.0
851 EOF
852 echo  "##############################################################" >> ${OUT}
853 echo  "Test patterson forward projection" >> ${OUT}
854 #
855 $EXE -f '%0.8f' \
856     +proj=latlong +datum=WGS84 \
857     +to +proj=patterson +a=6371008.7714 +b=6371008.7714 +units=m \
858  -E >> ${OUT} <<EOF
859 -180 90
860 -135 67.5
861 -90 45
862 -45 22.5
863 0 0
864 45 -22.5
865 90 -45
866 135 -67.5
867 180 -90
868 EOF
869 echo  "##############################################################" >> ${OUT}
870 echo  "Test patterson inverse projection" >> ${OUT}
871 #
872 $EXE -f '%0.3f' \
873     +proj=patterson +a=6371008.7714 +b=6371008.7714 +units=m \
874     +to +proj=latlong +datum=WGS84 \
875  -E >> ${OUT} <<EOF
876 -20015114.352186374 11409566.822831295
877 -15011335.76413978 8729502.054111844
878 -10007557.176093187 5366413.421153781
879 -5003778.588046594 2551415.729669344
880 0.0 0.0
881 5003778.588046594 -2551415.729669344
882 10007557.176093187 -5366413.421153781
883 15011335.76413978 -8729502.054111844
884 20015114.352186374 -11409566.822831295
885 EOF
886
887
888 # Done!
889 # do 'diff' with distribution results
890 echo "diff ${OUT} with ${OUT}.dist"
891 diff -b ${OUT} ${NAD_DIR}/${OUT}.dist
892 if [ $? -ne 0 ] ; then
893         echo  ""
894         echo "PROBLEMS HAVE OCCURED"
895         echo "test file ${OUT} saved"
896     echo
897         exit 100
898 else
899         echo "TEST OK"
900         echo "test file ${OUT} removed"
901     echo
902         /bin/rm -f ${OUT}
903         exit 0
904 fi