Changeset 7575 in josm for trunk/src/org/openstreetmap/josm/io/BoundingBoxDownloader.java
- Timestamp:
- 2014-09-21T23:00:38+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/io/BoundingBoxDownloader.java
r7531 r7575 10 10 import org.openstreetmap.josm.Main; 11 11 import org.openstreetmap.josm.data.Bounds; 12 import org.openstreetmap.josm.data.DataSource; 12 13 import org.openstreetmap.josm.data.gpx.GpxData; 13 14 import org.openstreetmap.josm.data.notes.Note; … … 45 46 } 46 47 47 private GpxData downloadRawGps( String url, ProgressMonitor progressMonitor) throws IOException, OsmTransferException, SAXException {48 private GpxData downloadRawGps(Bounds b, ProgressMonitor progressMonitor) throws IOException, OsmTransferException, SAXException { 48 49 boolean done = false; 49 50 GpxData result = null; 51 String url = "trackpoints?bbox="+b.getMinLon()+","+b.getMinLat()+","+b.getMaxLon()+","+b.getMaxLat()+"&page="; 50 52 for (int i = 0;!done;++i) { 51 53 progressMonitor.subTask(tr("Downloading points {0} to {1}...", i * 5000, ((i + 1) * 5000))); … … 70 72 if (result != null) { 71 73 result.fromServer = true; 74 result.dataSources.add(new DataSource(b, "OpenStreetMap server")); 72 75 } 73 76 return result; … … 81 84 if (crosses180th) { 82 85 // API 0.6 does not support requests crossing the 180th meridian, so make two requests 83 GpxData result = downloadRawGps( "trackpoints?bbox="+lon1+","+lat1+",180.0,"+lat2+"&page=", progressMonitor);84 result.mergeFrom(downloadRawGps( "trackpoints?bbox=-180.0,"+lat1+","+lon2+","+lat2+"&page=", progressMonitor));86 GpxData result = downloadRawGps(new Bounds(lat1, lon1, lat2, 180.0), progressMonitor); 87 result.mergeFrom(downloadRawGps(new Bounds(lat1, -180.0, lat2, lon2), progressMonitor)); 85 88 return result; 86 89 } else { 87 90 // Simple request 88 return downloadRawGps( "trackpoints?bbox="+lon1+","+lat1+","+lon2+","+lat2+"&page=", progressMonitor);91 return downloadRawGps(new Bounds(lat1, lon1, lat2, lon2), progressMonitor); 89 92 } 90 93 } catch (IllegalArgumentException e) {
Note:
See TracChangeset
for help on using the changeset viewer.