////////////////////////////////////////////////////////////////////////////////////////////////////// //Simple test cases for the Orthographic Projection //It appears that there is a small bug in arcInfo, and it is giving values //that are wrong (~0.5m) for the polls. I have commented these out below //and replaced them with the values I believe are correct (cos(90) == 0). //Inverse transforms are tested if java assertions are enabled //Rueben Schulz //April 12, 2003 set _sphere_ = GEOGCS["WGS84", DATUM["WGS84", SPHEROID["WGS84", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]], PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]] set _ortho1_ = PROJCS["Polar Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", 120.0], PARAMETER["latitude_of_origin", 90.0], PARAMETER["false_easting", 0.0], PARAMETER["false_northing", 0.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] set _ortho2_ = PROJCS["Polar Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", -64.5], PARAMETER["latitude_of_origin", -90.0], PARAMETER["false_easting", 100000.0], PARAMETER["false_northing", 40000.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] set _ortho3_ = PROJCS["Equatorial Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", 0.0], PARAMETER["latitude_of_origin", 0.0], PARAMETER["false_easting", 400.0], PARAMETER["false_northing", 180.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] set _ortho4_ = PROJCS["Equatorial Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", 146.9], PARAMETER["latitude_of_origin", 0.0], PARAMETER["false_easting", 2500.0], PARAMETER["false_northing", 1400.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] set _ortho5_ = PROJCS["Oblique Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", -40.0], PARAMETER["latitude_of_origin", 44.0], PARAMETER["false_easting", 0.0], PARAMETER["false_northing", 0.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] set _ortho6_ = PROJCS["Oblique Orthographic", GEOGCS["Sphere", DATUM["Sphere", SPHEROID["Sphere", 6370997.0, 0],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]], PROJECTION["Orthographic"], PARAMETER["semi_major", 6370997.0], PARAMETER["semi_minor",6370997.0], PARAMETER["central_meridian", 70.0], PARAMETER["latitude_of_origin", -60.0], PARAMETER["false_easting", 500.0], PARAMETER["false_northing", 0.0], UNIT["meter", 1.0], AXIS["x",EAST], AXIS["y",NORTH]] //////////////////////////////////////////// //Spherical Polar tests cs_source=_sphere_ cs_target=_ortho1_ test_tolerance=(1e-4, 1e-4) pt_source=(-123.1, 49.2166666666) pt_target=(3711248.9797, 1882824.0689) pt_source=(2.33656753, 43.96499314 ) pt_target=(-4061433.7784, 2128994.9272) pt_source=(139.733333333, 35.6833333333) pt_target=(1747255.8687, -4870965.3447) pt_source=(0.0, 90.0) pt_target=(0.0, 0.0) //pt_target=(-0.6897, 0.3982) cs_source=_ortho1_ cs_target=_sphere_ pt_source=(-4061433.7784, 2128994.9272) pt_target=(2.33656753, 43.96499314 ) cs_source=_sphere_ cs_target=_ortho2_ test_tolerance=(1e-4, 1e-4) pt_source=(151.283333333, -33.9166666666) pt_target=(-2991407.3186, -4248971.0674) pt_source=(-47.95, -15.75) pt_target=(1846655.1120, 5917768.2922) pt_source=(18.45, -33.9166666666) pt_target=(5346999.3546, 688898.9131) pt_source=(0.0, -90.0) pt_target=(100000.0, 40000.0) //pt_target=(100000.7188, 40000.3428) cs_source=_ortho2_ cs_target=_sphere_ pt_source=(1846655.1120, 5917768.2922) pt_target=(-47.95, -15.75) //////////////////////////////////////////// //Spherical Equatorial tests cs_source=_sphere_ cs_target=_ortho3_ test_tolerance=(1e-4, 1e-4) pt_source=(2.33656753, 43.96499314) pt_target=(187353.1977, 4423045.4782) pt_source=(-47.95, -15.75) pt_target=(-4552832.7574, -1729166.2918) pt_source=(18.45, -33.9166666666) pt_target=(1673604.8371, -3554750.4842) pt_source=(0.0, 90.0) pt_target=(400.0000 , 6371177.0000) pt_source=(0.0, -90.0) pt_target=(400.0000, -6370817.0000) cs_source=_ortho3_ cs_target=_sphere_ pt_source=(-4552832.7574, -1729166.2918) pt_target=(-47.95, -15.75) cs_source=_sphere_ cs_target=_ortho4_ test_tolerance=(1e-4, 1e-4) pt_source=(-123.1, 49.2166666666) pt_target=(4164037.6322, 4825423.9749) pt_source=(151.283333333, -33.9166666666 ) pt_target=(406577.9447, -3553530.4842) pt_source=(139.733333333, 35.6833333333) pt_target=(-643095.3225, 3717634.1576) pt_source=(146.9, 90.0) pt_target=(2500.0000, 6372397.0000) pt_source=(146.9, -90.0) pt_target=(2500.0000, -6369597.0000) cs_source=_ortho4_ cs_target=_sphere_ pt_source=(2500.0000, 6372397.0000) pt_target=(146.9, 90.0) //////////////////////////////////////////// //Spherical Oblique tests cs_source=_sphere_ cs_target=_ortho5_ test_tolerance=(1e-4, 1e-4) pt_source=(-123.1, 49.2166666666 ) pt_target=(-4131397.0380, 3122815.2288) pt_source=(2.33656753, 43.96499314 ) pt_target=(3088340.2012, 826864.5642) pt_source=(-47.95, -15.75) pt_target=(-848082.2872, -5462555.9115) test_tolerance=(1e-4, 0.5) pt_source=(0.0, 90.0 ) pt_target=(0.0, 4582911.2862) //pt_target=(0.5119, 4582911.2862) test_tolerance=(1e-4, 1e-4) cs_source=_ortho5_ cs_target=_sphere_ pt_source=(3088340.2012, 826864.5642) pt_target=(2.33656753, 43.96499314) cs_source=_sphere_ cs_target=_ortho6_ test_tolerance=(1e-4, 1e-4) pt_source=(151.283333333, -33.9166666666) pt_target=(5226406.5695, -1083578.0650) pt_source=(18.45, -33.9166666666) pt_target=(-4139997.8986, 1069684.5403) test_tolerance=(1e-4, 0.5) pt_source=(0.0, -90.0 ) pt_target=(500.0, -3185498.2641) //pt_target=(499.2517, -3185498.2641) cs_source=_ortho6_ cs_target=_sphere_ test_tolerance=(1e-4, 1e-4) pt_source=(5226406.5695, -1083578.0650) pt_target=(151.283333333, -33.9166666666)