// Test points for the Robinson projection
//
// (C) 2004-2008, Open Source Geospatial Foundation (OSGeo)
//
// The following test points were calculated with libproj4 utility "cs2cs" 
// cs2cs -v +datum=WGS84 +proj=lonlat +to +datum=WGS84 +proj=robin
//
// Andrea Aime - March 20 2010
//
// --------------------------------------------------------------------------
// How to run this script:
//
//    chdir org/geotools/referencing/test-data/scripts
//    java -ea org.geotools.referencing.ScriptRunner Robinson.txt
//
// A test is performed every time a "target pt" statement occurs. If the target point computed
// by Geotools is different from the target point declared in this script by an amount greater
// than the value specified in the last "test tolerance" statement, then a failure is reported.
// Inverse transforms are tested if java assertions are enabled.
// If some test fails, "print" statements can be added in this script for debugging purpose:
//
//    print crs            (prints the source and target CRS, and the transform between them)
//    print pts            (prints the source and target points, and their transformed points)


// CRS used for the test 
set _WGS84_  = GEOGCS["WGS84",  DATUM["WGS84",  SPHEROID["WGS84",  6378137.0, 298.257223563]], PRIMEM["Greenwich", 0.0], UNIT["degree",0.017453292519943295], AXIS["Longitude",EAST], AXIS["Latitude",NORTH]]

////////////////////////////////////////////
// Robinson

set _robinson_ = PROJCS["Robinson", _WGS84_, PROJECTION["Robinson"], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH]]

source crs = _WGS84_
target crs = _robinson_
// hmm... looked everywhere and cannot find a significant difference between GeoTools code
// and the proj one. Simply assuming the difference in double handling
//  shows up quite badly in this projection
test tolerance = (1, 1)

source pt = (0, 0)
target pt = (0, 0)

source pt = (10, 10)
target pt = (940422.59,  1069519.16)

source pt = (30, 30)
target pt = (2720933.27, 3208557.61)

source pt = (-180, 90)
target pt = (-9050503.94, 8625154.47)

source pt = (-180, 0)
target pt = (-17005833.33, 0.00)

source crs = _robinson_
target crs = _WGS84_

test tolerance = (0.0001, 0.0001)

source pt = (0, 0)
target pt = (0, 0)

source pt = (-1000000, 1000000)
target pt = (-10.627948, 9.349973)

source pt = (2720933.27, 3208557.61)
target pt = (30, 30)

source pt = (-9050503.94, 8625154.47)
target pt = (-180, 90)

source pt = (-17005833.33, 0.00)
target pt = (-180, 0)