Magnus Manske wrote:
Seroiusly: I *am* aware that there are many map-rendering programs around, some of them open source. But, the fact that noone has come up with a working solution for MediaWiki tells me that there's some kind of problem.
I think part of the problem is an impedence mismatch of sorts: Most of the GIS software is designed by and for geographers who want to run large statistical queries on it, while we by and large just want pretty pictures, and want them as fast and simply as possible. Still, it'd be a shame if none of the considerable work that's been done is reusable...
Well, internally I want to store "real-world" coordinates (lalt/long). All coordinates are passed through a single function to convert them into display coordinates. For the different 2D mapping systems, that should not be a problem, as it can be tweaked at a single point in the source. 3D is a different beast, of course. Personally, I'd go for a 2D solution initially. If there is pressing need for rendering a map on a 3D globe, then displaying a 2D image of it in the browser, I am certain it will not exceed the joined programming abilities of the people on this list :-)
As for resolution/zoom, all objects can be tagged with metadata. I imagine rivers with "magnitude" tags 1-5 or something. Detail level could depend on actual resolution, default settings ("global","country","state",etc.), parameter ("show_magnitude=1-3"), or any combination of the above.
That sounds reasonable. This is probably part of why GIS systems are so complex: They want, for example, arbitrary and automatic resolution scaling based on rather complex feature-summarization algorithms, so you store the most detailed data, and it automatically abstracts it when you "zoom out" as necessary. But I imagine 5 discrete levels will suffice for 99% of our purposes. Part of the problem remaining then is that we'd have to regenerate all this data ourselves, or at least tag it: There are huge data repositories of GIS data already freely available (especially for the US), but they wouldn't have this sort of information.
Anyway, it does seem like a good way to go forward, barring anyone with significant GIS experience jump-starting integration of one of those systems into MediaWiki in the near future (their documentation is too horrid for me to have succeeded in my last attempt). I do have some vague familiarity with the existing datasets, so when I get some free time (probably in about 2 weeks... conference submission deadlines coming up) I'll see if I can write some scripts to extract some of the sorts of data that'd be useful to us from the commonly-available data sets, so we don't have to manually input every bit of data that's already out there.
-Mark