public static void main(String[] args) throws IOException { SRTMProvider provider = new SRTMProvider(); // 337 System.out.println(provider.getEle(49.949784, 11.57517)); // 466 System.out.println(provider.getEle(49.968668, 11.575127)); // 466 System.out.println(provider.getEle(49.968682, 11.574842)); // 3100 System.out.println(provider.getEle(-22.532854, -65.110474)); // 122 System.out.println(provider.getEle(38.065392, -87.099609)); // 1617 System.out.println(provider.getEle(40, -105.2277023)); System.out.println(provider.getEle(39.99999999, -105.2277023)); System.out.println(provider.getEle(39.9999999, -105.2277023)); System.out.println(provider.getEle(39.999999, -105.2277023)); // 1046 System.out.println(provider.getEle(47.468668, 14.575127)); // 1113 System.out.println(provider.getEle(47.467753, 14.573911)); // 1946 System.out.println(provider.getEle(46.468835, 12.578777)); // 845 System.out.println(provider.getEle(48.469123, 9.576393)); }
@Ignore public void testGetEle() { instance = new SRTMProvider(); assertEquals(337, instance.getEle(49.949784, 11.57517), precision); assertEquals(466, instance.getEle(49.968668, 11.575127), precision); assertEquals(466, instance.getEle(49.968682, 11.574842), precision); assertEquals(3100, instance.getEle(-22.532854, -65.110474), precision); assertEquals(122, instance.getEle(38.065392, -87.099609), precision); assertEquals(1617, instance.getEle(40, -105.2277023), precision); assertEquals(1617, instance.getEle(39.99999999, -105.2277023), precision); assertEquals(1617, instance.getEle(39.9999999, -105.2277023), precision); assertEquals(1617, instance.getEle(39.999999, -105.2277023), precision); assertEquals(1046, instance.getEle(47.468668, 14.575127), precision); assertEquals(1113, instance.getEle(47.467753, 14.573911), precision); assertEquals(1946, instance.getEle(46.468835, 12.578777), precision); assertEquals(845, instance.getEle(48.469123, 9.576393), precision); assertEquals(0, instance.getEle(56.4787319, 17.6118363), precision); assertEquals(0, instance.getEle(56.4787319, 17.6118363), precision); // Outside of SRTM covered area assertEquals(0, instance.getEle(60.0000001, 16), precision); assertEquals(0, instance.getEle(60.0000001, 16), precision); assertEquals(0, instance.getEle(60.0000001, 19), precision); assertEquals(0, instance.getEle(60.251, 18.805), precision); }
@Test public void testGetHeight() throws IOException { instance = new SRTMProvider("./files/"); // easy to verify orientation of tile: // instance.getEle(43, 13); // siegesturm assertEquals(466, instance.getEle(49.968651, 11.574869), 1e-1); // am main assertEquals(330, instance.getEle(49.958233, 11.558647), 1e-1); // south america assertEquals(1678, instance.getEle(-28.88316, -71.070557), 1e-1); assertEquals(0, instance.getEle(-28.671311, -71.38916), 1e-1); // montevideo // assertEquals(45, instance.getEle(-34.906205,-56.189575), 1e-1); // new york // assertEquals(21, instance.getEle(40.730348,-73.985882), 1e-1); // use 0 elevation if area not found assertEquals(0, instance.getEle(55.4711873, 19.2501641), 1e-1); assertEquals(161, instance.getEle(55.8943144, -3), 1e-1); // precision = 1e6 => -3 // assertEquals(160, instance.getEle(55.8943144, -3.0000004), 1e-1); // precision = 1e7 => -4 // assertEquals(161, instance.getEle(55.8943144, -3.0004), 1e-1); // assertEquals(161, instance.getEle(55.8943144, -3.0000001), 1e-1); }
@Test public void testGetHeight_issue545() throws IOException { instance = new SRTMProvider("./files/"); // test different precision of the elevation file (3600) assertEquals(84, instance.getEle(48.003878, -124.660492), 1e-1); }
@Test public void testGetHeightMMap() throws IOException { instance = new SRTMProvider("./files/"); assertEquals(161, instance.getEle(55.8943144, -3), 1e-1); }
@Ignore public void testGetEleVerticalBorder() { instance = new SRTMProvider(); // Border between the tiles N42E011 and N43E011 assertEquals("Eurasia/N42E011", instance.getFileName(42.999999, 11.48)); assertEquals(419, instance.getEle(42.999999, 11.48), precision); assertEquals("Eurasia/N43E011", instance.getFileName(43.000001, 11.48)); assertEquals(419, instance.getEle(43.000001, 11.48), precision); }
@Ignore public void testGetEleHorizontalBorder() { instance = new SRTMProvider(); // Border between the tiles N42E011 and N42E012 assertEquals("Eurasia/N42E011", instance.getFileName(42.1, 11.999999)); assertEquals(324, instance.getEle(42.1, 11.999999), precision); assertEquals("Eurasia/N42E012", instance.getFileName(42.1, 12.000001)); assertEquals(324, instance.getEle(42.1, 12.000001), precision); }
@Ignore public void testDownloadIssue_1274() { instance = new SRTMProvider(); // The file is incorrectly named on the sever: N55W061hgt.zip (it should be N55W061.hgt.zip) assertEquals("North_America/N55W061", instance.getFileName(55.055,-60.541)); assertEquals(204, instance.getEle(55.055,-60.541), .1); }
public static void main( String[] args ) throws IOException { SRTMProvider provider = new SRTMProvider(); // 1046 System.out.println(provider.getEle(47.468668, 14.575127)); // 1113 System.out.println(provider.getEle(47.467753, 14.573911)); // 1946 System.out.println(provider.getEle(46.468835, 12.578777)); // 845 System.out.println(provider.getEle(48.469123, 9.576393)); // 1113 vs new: provider.setCalcMean(true); System.out.println(provider.getEle(47.467753, 14.573911)); }
public static void main(String[] args) throws IOException { SRTMProvider provider = new SRTMProvider(); // 1046 System.out.println(provider.getEle(47.468668, 14.575127)); // 1113 System.out.println(provider.getEle(47.467753, 14.573911)); // 1946 System.out.println(provider.getEle(46.468835, 12.578777)); // 845 System.out.println(provider.getEle(48.469123, 9.576393)); // 1113 vs new: provider.setCalcMean(true); System.out.println(provider.getEle(47.467753, 14.573911)); }
public static void main(String[] args) throws IOException { SRTMProvider provider = new SRTMProvider(); // 337 System.out.println(provider.getEle(49.949784, 11.57517)); // 466 System.out.println(provider.getEle(49.968668, 11.575127)); // 466 System.out.println(provider.getEle(49.968682, 11.574842)); // 3100 System.out.println(provider.getEle(-22.532854, -65.110474)); // 122 System.out.println(provider.getEle(38.065392, -87.099609)); // 1617 System.out.println(provider.getEle(40, -105.2277023)); System.out.println(provider.getEle(39.99999999, -105.2277023)); System.out.println(provider.getEle(39.9999999, -105.2277023)); System.out.println(provider.getEle(39.999999, -105.2277023)); // 1046 System.out.println(provider.getEle(47.468668, 14.575127)); // 1113 System.out.println(provider.getEle(47.467753, 14.573911)); // 1946 System.out.println(provider.getEle(46.468835, 12.578777)); // 845 System.out.println(provider.getEle(48.469123, 9.576393)); }