seph

 

Maps

Page history last edited by Joseph Gentle 11 mos ago

Recently I wrote a native maps application for the iPhone. It works like OpenLayers and supports the OSM tileset.

 

It lives here: code.google.com/p/route-me

 

Its a funny thing making an open source project. The experience consistantly surprised me

 

 

 

Things I want to change:

 

2D Coordinate systems are crap

 

We can do a lot better than mercator coordinate transforms and tiles rendered from them. Instead when you are zoomed in on a map it should render the earth as if you were zoomed in on a 3d sphere.

 

When you are zoomed out I'm not completely sure how it should unroll the earth... but certainly when you are zoomed in we can do a better job than mercators.

 

 

Prerendered image tiles are suboptimal.

 

Currently all the major map people prerender image tiles then use javascript or something to select a zoom level and render the tiles that way. As an old game programmer, I don't understand why we don't just make a good maps rendering engine and render client-side. Client side rendering has the following advantages:

 

  • Less data to send to the client
  • You can do smooth transitions between zoom levels
  • You can zoom in as far as you like without the map looking crappy
  • The server can store less data - tile images take up a lot of space!!

 

You need:

  • A good high-performance rendering surface; preferably backed by OpenGL / Direct3D
  • A good quad tree implementation tailored for map data + detail levels
  • A compact binary map-data format
  • A map rendering engine
  • A high-performance quadtree database server which supports in the thousands of transactions per second.

 

 

 

The OpenStreetMap license is crappy. The project should be forked.

 

 

OpenStreetMaps is a FOSS project to make street maps of the whole world. Awesome.

 

Their dataset is actually really good these days. They've worked tirelessly to make the maps. The only problem is that they've published the maps under a license which nobody understands and nobody really obeys. As such, any actual use of the maps might have unknown legal consequences. Thats totally crap.

 

As I've argued on the osm-legal-talk mailing list, there are three problems with the current cc-share-alike license:

  • It is never defined what constitutes a 'derived work' and a 'collaborative work'. People who try to be honest will stay away from OSM because they don't want to offend / don't want to be sued. People who want to be a jerk about the whole thing will use the data anyway. Shit for honest folk, good for 'bad guys'; whoever they are
  • There are some applications I just can't write with OSM. Particularly, I can't write any application which interacts in a nontrivial way with proprietry data. At least, not without asking permission from every single contributor. (There are ~60 000 of us)
  • Any user of the maps must attribute every contributor. Thats just not feasable for some usage scenarios. (And nobody cares - but still, without attributing everyone you're opening the door to lawsuits).

They are talking about a new license which fixes 1. and maybe 3. People speculate on the mailing list that the new license won't be the last license change. Any license change will lose the data from all contributors who can't be contacted.

 

The best solution IMO is to just fork the project, make the new project public-domain and work in there. It'll be a step backwards in usable map data; but not as big as people think thanks to public map sources.

 

Comments (0)

You don't have permission to comment on this page.