private GeoPos mapToGeo(final Point2D mapPos, GeoPos geoPos) { return mapTransform.inverse(mapPos, geoPos); }
public void testInverseTransform() { GeoPos geoPt = new GeoPos(); Point2D mapPt = new Point2D.Double(); MapTransformDescriptor desc = new LambertConformalConicDescriptor(); // Parameter set 1 // --------------- MapTransform trans = desc.createTransform(_params_1); for (int n = 0; n < _targCoords_1.length; n++) { mapPt.setLocation(_targCoords_1[n][0], _targCoords_1[n][1]); geoPt = trans.inverse(mapPt, geoPt); assertEquals(_srcCoords_1[n][1], geoPt.getLat(), _angleDelta); assertEquals(_srcCoords_1[n][0], geoPt.getLon(), _angleDelta); } // Parameter set 2 // --------------- trans = desc.createTransform(_params_2); for (int n = 0; n < _targCoords_2.length; n++) { mapPt.setLocation(_targCoords_2[n][0], _targCoords_2[n][1]); geoPt = trans.inverse(mapPt, geoPt); assertEquals(_srcCoords_2[n][1], geoPt.getLat(), _angleDelta); assertEquals(_srcCoords_2[n][0], geoPt.getLon(), _angleDelta); } } }
public void testForwarAndInverseTransform() { // values for this test are from Frank Fell! double[] params = new double[]{Ellipsoid.WGS_84.getSemiMajor(), Ellipsoid.WGS_84.getSemiMinor(), 0.0, 9.0, 0.9996, 500000.0, 0.0}; MapTransform transform = MapTransformFactory.createTransform("Transverse_Mercator", params); float lat = 53.786666666f, lon = 11.87305555f; GeoPos geoPos = new GeoPos(lat, lon); Point2D mapPoint = transform.forward(geoPos, null); assertEquals(689265.13, mapPoint.getX(), _metricDelta); assertEquals(5963616.5, mapPoint.getY(), _metricDelta); GeoPos testPos = transform.inverse(mapPoint, null); assertEquals(lon, testPos.getLon(), _geodeticDelta); assertEquals(lat, testPos.getLat(), _geodeticDelta); }
public void testForwardAndInverseTransform() { final MapTransform transform = MapTransformFactory.createTransform(StereographicDescriptor.TYPE_ID, DEFAULT_PARAMS); float lat = 90f, lon = 11.87305555f; GeoPos geoPos = new GeoPos(lat, lon); Point2D mapPoint = transform.forward(geoPos, null); GeoPos testPos = transform.inverse(mapPoint, null); assertEquals(90.0, testPos.getLat(), EPSILON); assertEquals(0, testPos.getLon(), EPSILON); lat = 53.786666666f; lon = 11.87305555f; geoPos = new GeoPos(lat, lon); mapPoint = transform.forward(geoPos, null); testPos = transform.inverse(mapPoint, null); assertEquals(lat, testPos.getLat(), EPSILON); assertEquals(lon, testPos.getLon(), EPSILON); }