Introduction and examples: Difference between revisions

From University Map Wiki
Jump to navigationJump to search
Line 97: Line 97:
and this dynamically extracts staircase information direct from the OpenStreetMap database and displays it:
and this dynamically extracts staircase information direct from the OpenStreetMap database and displays it:


* http://dev-preview.map.cam.ac.uk/#/annotate/adapters/staircases.json?ref=PEM
* http://map.cam.ac.uk/#/annotate/adapters/staircases.json?ref=PEM


==Tile API==
==Tile API==

Revision as of 16:11, 25 July 2013

Basic use

  • The map 'frontpage': http://map.cam.ac.uk/.
  • You can search for most things and once you've found something you'll also get addresses and other contact details.
  • Clicking shows a popup menu that, among other things, lets you see what's nearby and can mark a single location on the map.
  • The map automatically adapts for display on small-screen devices
  • Most views have individual URLs that can be copied and used elsewhere (on web pages, in emails, etc.)

API for linking to maps

The map exposes a URL for linking to particular views based on searches - see The Map URL API for details. For example:

There's an extended search syntax, for example:

You can also produce links based on underlying geographic OSM identifiers, which are based on University Planon IDs where possible and which identify sites, buildings and entrances:

There's an interactive browser (also linked from the 'More...' menu) that you can use to explore the map's geographic database and to to help find these various identifiers.

It's also possible to construct links based on institution identifiers, which in turn are based on the 'institution Identifiers' used in Lookup:

If all else fails you can limk to a physical areas:

Map URLs can also have a fragment part consisting of a hash followed by further information. The fragment part comprises either one to five numbers, or another URL. The numbers control where the map is displayed initially - for example here's a map showing the Hopkinson Lecture Theatre but scaled and centred to also show the station:

If the fragment is a URL it refrences an annotation ovrlay - see below. Further details of all this are available in The Map URL API.

Embedding Maps

All map URL's can be used as the source for an iframe to simply embed the corresponding map in a seperate page - see The Embedding API for details.

For example this:

<!DOCTYPE html>
<html>

<head>
<title>Iframe test</title>
<style type="text/css">
#map {
  width: 400px;
  height: 400px;
  border: 1px solid black;
}
</style>
</head>

<body> 

<iframe id="map" src="http://map.cam.ac.uk/Computing+Service">
</iframe>

</body>

</html>

Produces a page like this.

Annotation

Manual annotation

The map provides tools to let you create and edit your own map overlays - see Map Annotation for details.

The tools live at http;//map.cam.ac.uk/overlay/ (also available from the 'Annotate the map' entry in the 'More...' menu). Points, lines, and areas can be drawn, modified, edited, styled. etc. Once complete, the annotation can be stored in the map system where each set of annotations gets its own permanent URL:

Or it can be downloaded and served from any web server and then referenced by after the hash part of a map URL:

Annotation based on other data

Annotations can also be created programaticaly form other geographic data, either statically or on the fly, and then overlaid on the map. See UCamGeoJSON for details.

For example, this uses a static UCamGeoJSON file to display the locations and shields of all the Cambridge Colleges:

and this dynamically extracts staircase information direct from the OpenStreetMap database and displays it:

Tile API

The tiles making up the map are freely available - see The Tile API.

Here are some of the tiles that make up the city centre.

They follow the conventions of OpenStreetMap and other similar systems and so can be consumed in various ways. Here are some examples using third-party map APIs:

Index API

There's an API for accessing the data in the map's index - see The Database API. It uses similar queries to those used to draw and embed maps and returns results in JSON format. To ease experimentation you can add '&debug=1' to all index API queries to have results displayed in a browser rather than exported as JSON files. Here are some examples based on the map URLs above:

The interactive browser (also linked from the 'More...' menu) can be useful for identifying the various codes in use.