General questions / New to OSM

Hello,

I’m new to OSM and have some general questions. First off I see there is a browser based editor for editing the map data; Can I grab an extract of the data, host it myself and edit only my copy? The first thing I see when I look at the different editing tools is that I need an account. Do I need an account if I’m not submitting changes, but instead hosting my own customized version of the data? We are planning to build our own tile server and serve this data from there.

Second, we are mostly concerned with boundary information for jurisdictions in the US; counties, cities, states, etc. We need to turn these cities and states on/off and change them different colors to show that status of our data in these jurisdictions. All the examples I have seen use geojson data to overlay on top of the map. The problem with this approach for us is that we want fairly high resolution of our boundaries and we want to display city, county and state data in one map - loading in all of these points defeats the purpose of using a tile driven map system if we have to load in a few MB of points to overlay on a map.

We have the capacity to host our own tile server, so my thought we would grab the base data we need from OSM and then customize it to meet our needs. We would then have our own copy that serves our purposes, but probably not other peoples. We would of course give the appropriate credit to OSM.

Also I’m wondering if we can display a choropleth type map using an image based tile server… Or is the base imagery so static that you can go changing the imagery that much per request - thus the need for the geojson data and overlays.

Lastly, the geojson data approach would be workable if our geojson data was also served from a tile server; loading it all into the page just isn’t going to work. What’s the best approach for serving geojson data with a tile server?

Any feedback is greatly appreciated. Just getting my feet wet so I still have a lot to learn. thanks in advance.

Boice Tomlin

IMHO the best way to find solutions for your aims is reading in the OSM wiki … because there are collections of technical solutions for different purposes.

And first: you have to differentiate between a database server (storing raw OSM data in XML format) and a tile server who delivers tiles that are produced (rendered) from that raw OSM data.

You can host any kind of servers (database or tileserver) and even the OSM website framework that enables to input new data to an own data server.

I will list some wiki pages that are worth reading. Aks more if you get stuck in detail.

http://wiki.openstreetmap.org/wiki/Component_overview

http://wiki.openstreetmap.org/wiki/Databases_and_data_access_APIs

http://wiki.openstreetmap.org/wiki/Frameworks

http://wiki.openstreetmap.org/wiki/The_Rails_Port

http://wiki.openstreetmap.org/wiki/Planet.osm

osmconvert and osmfilter … http://wiki.openstreetmap.org/wiki/Tirex

Maybe you consider to get initial advice by some proffessionals? http://wiki.openstreetmap.org/wiki/Commercial_OSM_Software_and_Services

http://switch2osm.org http://help.openstreetmap.org ← keyword search

Thank you, Stephan. That should get me started.

Hello,

I’ve gone over most of the materials. I think I have a pretty good idea about how open street map, tile servers and slippy maps work. But there are still a few major points that I don’t get so I think maybe the best thing to do is ask one question at a time. I’ll start off with a very general question.

We have 500 maps that we need to display. currently all the data needed is written out to shapefiles and we use MN mapserver to render the maps;

http://gisinventory.net/pages/status_maps.html?imgx1=323.5&imgy1=166&imgx2=653.5&imgy2=317&imagewidth=705&imageheight=440&map_command=zoom_in&change_extent=1&change_layer_type=0&minx=-189.402116379&miny=-1.24647576788&maxx=-51.9410023561&maxy=84.4714632323&map_type=1&layer_type_id=6&layer_id=13

From the map it should be pretty easy to see what we are doing…

So, overlays or not? that is the big question. Can we run our own tile server and generate imagery for all 500 map types or is that just not how an OSM tile server is used?

Or will we have to use something like geojson data and do overlays on our map to shade in the areas of the map as seen in the example above.

Thanks,

Boice

So your aim here is to display a kind of base map rendered from OSM data, and then display some special data on top?

Then maybe you should have a closer look at the features of the tile display javascript frameworks like http://openlayers.org and its successor http://ol3js.org and http://leafletjs.com

each homepage of them has collections of examples … and a bunch of features.

or have a look at some other OSM based sites where I assume that they use a tile based overlay:

http://qa.poole.ch and the OSM-Inspector from geofabrik.de: http://tools.geofabrik.de/osmi/

and about rendering any OSM data or data from your own, see http://wiki.openstreetmap.org/wiki/Rendering

Is there anything that can help you a bit? Stephan

// So your aim here is to display a kind of base map rendered from OSM data, and then display some special data on top?

that is the big question… The goal is to be able to turn each jurisdiction(city, county, state) one of three colors based on the completeness of the data we have for that jurisdiction(our own internal logic). If we do it with overlays then yes we would have a base map and render the status over the map using geojson data for instance. We are investigating a vector tile server to deliver the overlay information as clipped vector data.

Being new to OSM and tile servers in general I’m still a little in the dark as to what our possibilities are(But I’m quickly coming up to speed!). Could we achieve what we need without overlays?

If we for instance grab the data we need from OSM and then render our own custom tiles could we do what we need considering that their are 500 different categories of data we need to represent, and therefore 500 different maps with the jurisdictions colored in differently for each map? And then we also wanted to give people the ability to turn jurisdictions on/off - so then triple or quadruple that number.

As my understanding becomes clearer I think I am seeing that the base map imagery is meant to be static to a certain degree. In other words 500 different map renderings are not realistic. Vector overlays seem to be where we are being steered. But we are overlaying every jurisdiction in the US over a map that already has every jurisdiction. and then speed becomes an issue. We would need our vector data to be tiled also so we can load in the vector overlays only for the area we are viewing and have it generalized for the zoom level.

But then I did a search for a city on google maps and they shaded in just that city. I wondered if they did that with a vector overlay or if a custom set of tile imagery had been rendered just for my search. So I dug down into their rendered map and found the imagery; the shading for the city was in the images;

http://gisinventory.net/google-tile.png

So that means that they just have more horsepower than we will ever have and they have the luxury of rendering imagery for custom searches, or… I am missing something.

Thank you very much for your feedback.

Boice

Then I can give you just some more hints, though I don’t know how to set up each solution … I just know that there is something about some topic in the OSM wiki :wink:

see http://wiki.openstreetmap.org/wiki/Vector_tiles

or https://www.mapbox.com/blog/archive/ and do a text search in your browser for “vector” …

same hit for “vector” at http://wiki.openstreetmap.org/wiki/State_Of_The_Map_2013

Displaying the boundary of a certain area as a blue line is obviously easy … use the search boc on http://openstreetmap.org and enter a place name where you know from that it has an own boundary relation in the OSM data … it will be displayed. I am sure that you can adopt this feature for your purposes.

We can proceed here if you can give us a **concrete ** example:
What is your source data, and how do you want it to be displayed?

or try to consult one of the guys from commercial services that I mentioned in my first answer … maybe they have an initial idea how you can get started.