Atlas: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
== olpcMAP ==
== olpcMAP ==
http://olpcMAP.net ([[olpcMAP background]]) shows off individual projects, small and large, around the world! Begun by Carnegie Mellon Univerity student Nick Doiron in October 2010, its ongoing [http://olpcMAP.net/community community growth] and [[olpcMAP/data-api|API]] are bringing together deployments and volunteers in new ways.
http://olpcMAP.net ([[olpcMAP|background]]) shows off individual projects, small and large, around the world! Begun by Carnegie Mellon Univerity student Nick Doiron in October 2010, its ongoing [http://olpcMAP.net/community community growth] and [[olpcMAP/data-api|API]] are bringing together deployments and volunteers in new ways.


== Actual map content ==
== Actual map content ==

Revision as of 06:34, 5 December 2010

olpcMAP

http://olpcMAP.net (background) shows off individual projects, small and large, around the world! Begun by Carnegie Mellon Univerity student Nick Doiron in October 2010, its ongoing community growth and API are bringing together deployments and volunteers in new ways.

Actual map content

The "ship.2" releases (installed on G1G1 2007 laptops) came with PDF maps from the World Factbook. The maps are the continents, United States, "Political world", and "Time zones".

In 8.2.0 these became a separate content bundle, Activities/World Factbook maps (8.2) that appears in the OLPC Library in Browse as other > world maps.

SVG maps

<trac>7652</trac> suggests maps would be better implemented in SVG due to various problems with PDFs. There are some maps available as SVG, e.g. http://commons.wikimedia.org/wiki/Image:African_continent-de.svg

interactive maps

SVG maps can zoom to fit the Browse window, and are easily made interactive. Since they are text they are localizable.

An atlas activity

Written in August 2007

We are working to build an interactive lightweight atlas that is hackable, can make use of open layer data, and can link out from the leaf node to data relevant to that location.

First step: create a world map.

Content Bundle uploaded: File:Map.xol

Current goals

  • Build activity with world map with country names, capital names, and major cities, with internationalized labels.
  • Work with pm27 + wikiwix to make mapping of Wikipedia data possible on top of the basemap.

free available map data

  • The Wikimedia Commons 'Atlas' is a constellation of maps with tags and origin/date/location information. They don't all have clear geotags or projection information or perfectly accurate dates, there is overlap and missing gaps, and they don't have an interface for browsing.
  • OpenLayers and FeatureServer and TileCache are a useful toolchain for generating, rendering, and annotating maps, with strong support for open formats.

Generating a fast static map

TileCache/MapServer will generate a set of tiles for you -- pick what sort of background you want from available default layers; how many levels deep you want to go; and whether you want the tiles to continue to exist at lower resolution for deeper zooms. The default package is 7 levels deep, starting with one for the entire globe, and has sea-topo, land-cover, country- & county-border, city-dot, basic roads & features, and <language>-name layers.

An atlas of ~100MB should offer good resolution for every country in the world. At each layer of tiles, defined regions on the map can be mapped to a dataset of html, images, or text.

Notes on generating a dynamic map

First, install MapServer and related tools locally. MapServer 5 uses AGG rendering, which does a fine job of minimizing aliasing; it is still in Beta, but worth the extra effort to use by all accounts.

Next, find the layers you want to include in your tiles. Make sure they are all at the same resolution and format.

Define how to generate map tiles from data sources on a local or fast-connected server... test it out under a few standard use cases to make sure it is fast enough. Some rendering is done on the client, so check this under client load as well.