Thursday 25 February 2016

tiles - Rendering custom OpenStreetMaps style (land=white, water=black): do I need a dedicated computer just to do this?


EDIT: My goal is NOT to use OpenStreetMap or cloudmade as a web map. I described exactly what I want ("a full, rasterized set of tiles for the entire world at zoom=10 (around 68 Gigapixels, water=black, land=white, no labels"). I only meant to use the cloudmade.com link as an example to illustrate what I'm shooting for. (As it is, the cloudmade style is only 90% of the way there.) I need the tiles offline. I need the image (68 Gpix) I described as a mask in a larger raster map task for a custom map I'm building using NASA and USGS data.




As an illustration


I made a custom style that sort of shows what I want:




(No labels, no roads, no features of any kind except all water features (rivers, lakes, oceans, you name it) as black with land being solid white, and the nice Mapnik antialiasing of values in between.)




What I really want


I would like a full, rasterized set of tiles for the entire world at zoom=10 (around 68 Gigapixels).


I considered downloading and installing Planet.osm (11 GB compressed) and running Mapnik (for days/weeks?) to get this data. However, Planet.osm looks like it will take 100GB or maybe even 1TB once the database and index are built. I don't have that kind of disk space on my laptop and since I don't need the full dataset, is there a smaller subset of the data I could download (it says here that the polygon data is only 700 MB)? Actually from what I can tell, the data has doubled in size in the last year so I would need a beefy machine to deal with this.


Is there an easier, direct way to get these tiles (level 10, black and white, just land on water) batched, or do I basically need a dedicated computer to do this?



Answer



Do you have to use OSM? or would a similar but smaller vector dataset work for you? If so consider Natural Earth (http://naturalearthdata.com) which has nice 1:10M scale coastline, land area, ocean, river and lake layers. You could then use GeoServer or MapServer locally (or on a remote server) to create your tiles at any depth you need with any of the usual tile caches (TileCache, GeoWebCache etc.)


From your question it isn't even clear to me that you need tiles - if all you want is a mask then you can probably do this using GRASS - v.toRaster() (I think).


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...