×
Namespaces

Variants
Actions
(Difference between revisions)

HERE Maps API - Map UI components

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot addition of Template:ArticleMetaData)
avnee.nathani (Talk | contribs)
(Avnee.nathani - Updating)
Line 1: Line 1:
 +
[[Category:Web]][[Category:Browser]][[Category:Nokia Maps]]
 +
{{Abstract|This article shows how to use a static Nokia map and add interactive UI controls to it.}}
 +
 
{{ArticleMetaData
 
{{ArticleMetaData
 
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] -->
 
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] -->
Line 6: Line 9:
 
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
 
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
+
|dependencies=Nokia Maps 2.1.0
 
|signing=<!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
 
|signing=<!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
 
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
 
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
Line 23: Line 26:
 
}}
 
}}
  
[[Category:Web]][[Category:Browser]][[Category:Nokia Maps]]
+
 
 
==Introduction==
 
==Introduction==
  
In this article we will go thru on making a static map interactive by adding some UI control components. By default, when the map is initiated empty without no parameters or components, it will default to coordinates 0,0 and zoom level of zero (0).
+
In this article we will make a static map interactive by adding some UI control components. By default, when the map is initiated without parameters or components, it will set the coordinates to 0,0 and zoom level to zero (0). We would be adding controls like zoom bar, scale bar and map type selector.
Also there will be none of the usual UI controls, like zoom bar, scale bar and map type selector.
+
  
 
==Prerequisites==
 
==Prerequisites==
  
Ovi Maps API supported device and browser (basically any modern browser)
+
Nokia Maps API supported device and browser (basically any modern browser)
  
 
==Implementation==
 
==Implementation==
Line 52: Line 54:
 
==Example Static non-interactive map example code==
 
==Example Static non-interactive map example code==
  
This would show us a map which has no presets defined, so it will default to the map origo 0,0 and zoom level minimum (0) with no possibility for the user to interact with the map: it does not respond to the user mouse click and all the UI components are removed (Zoom Bar, Scale Bar Map Type Selector).
+
This would show us a map which has no presets defined, so it will default to the map origo 0,0 and zoom level minimum (0) with no possibility for the user to interact with the map: it does not respond to the user mouse click and all the UI components are removed (Zoom Bar, Scale Bar, Map Type Selector).
  
Note: The authorization token is not in use in the time of writing. Please follow the Announcements section on the Ovi Maps API discussions at the project discussion board. We will be announcing when the authorisation is enabled.
+
Note: The authorization token is not in use in the time of writing. Please follow the Announcements section on the Ovi Maps API discussions at the project discussion board. We will be announcing when the authorization is enabled.
 
+
<code java>
+
  
 +
<code javascript>
 
<html>
 
<html>
 
<head>
 
<head>
 
<title>Static map</title>
 
<title>Static map</title>
<script src="http://api.maps.ovi.com/jsl.js" type="text/javascript" charset="utf-8"></script>
+
<script type="text/javascript" src="http://api.maps.nokia.com/2.0.0/jsl.js" charset="utf-8"></script>
 
</head>
 
</head>
 
<body>
 
<body>
 
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
 
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
<script type="text/javascript">
+
<script type="text/javascript">nokia.maps.util.ApplicationContext.set("authenticationToken", "<Token>");
ovi.mapsapi.util.ApplicationContext.set("authenticationToken", "<Token>");
+
  
var map = new ovi.mapsapi.map.Display(document.getElementById("map"));  
+
var map = new nokia.maps.map.Display(document.getElementById("map"));
 
</script>
 
</script>
 
</body>
 
</body>
 
</html>
 
</html>
 
 
</code>
 
</code>
  
Example: Dynamic, ineractive map with a predefined zoom level, map center point and map type
+
Example: Dynamic, interactive map with a predefined zoom level, map center point and map type
  
The example code is full with HTML and embedded JavaScript.
+
The example code contains HTML code and embedded JavaScript.
 
+
<code java>
+
  
 +
<code javascript>
 
<html>
 
<html>
 
<head>
 
<head>
 
<title>Dynamic, interactive map</title>
 
<title>Dynamic, interactive map</title>
<script src="http://api.maps.ovi.com/jsl.js" type="text/javascript" charset="utf-8"></script>
+
<script type="text/javascript" src="http://api.maps.nokia.com/2.0.0/jsl.js" charset="utf-8"></script>
 
</head>
 
</head>
 
<body>
 
<body>
 
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
 
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
 
<script type="text/javascript">
 
<script type="text/javascript">
ovi.mapsapi.util.ApplicationContext.set("authenticationToken", "<Token>");
+
nokia.maps.util.ApplicationContext.set("authenticationToken", "<Token>");
 
+
 
var map = new ovi.mapsapi.map.Display(document.getElementById("map"), {
+
var map = new nokia.maps.map.Display(document.getElementById("map"), {
 
components: [
 
components: [
new ovi.mapsapi.map.component.Behavior(),
+
new nokia.maps.map.component.Behavior(),
new ovi.mapsapi.map.component.ZoomBar(),
+
new nokia.maps.map.component.ZoomBar(),
new ovi.mapsapi.map.component.Overview(),
+
new nokia.maps.map.component.Overview(),
new ovi.mapsapi.map.component.TypeSelector(),
+
new nokia.maps.map.component.TypeSelector(),
new ovi.mapsapi.map.component.ScaleBar() ],
+
new nokia.maps.map.component.ScaleBar() ],
zoomLevel: 10,
+
zoomLevel: 8,
center: [52.51, 13.4]
+
center: [19.119, 72.8957]
 
});
 
});
 
</script>
 
</script>
Line 108: Line 106:
 
Note: Authentication setting is not mandatory at the time of writing, but should be enabled later. This will be informed separately.
 
Note: Authentication setting is not mandatory at the time of writing, but should be enabled later. This will be informed separately.
  
==For more on Ovi Maps API==
+
==For more on Nokia Maps API==
  
Please check out the Ovi Maps API full documentation and API reference here:
+
Please check out the Nokia Maps API full documentation and API reference here:
  
http://api.maps.ovi.com
+
* http://api.maps.nokia.com
  
==Tested on==
+
You may also access the interactive Nokia Maps API playground,
  
Google Chrome 11.0x
+
* http://api.maps.nokia.com/2.1.0/playground/index.html
 +
 
 +
==Tested on==
  
Mozilla Firefox 5.0
+
* Google Chrome 11.0x
 +
* Mozilla Firefox 5.0

Revision as of 09:13, 5 January 2012

This article shows how to use a static Nokia map and add interactive UI controls to it.

Article Metadata
Dependencies: Nokia Maps 2.1.0
Article
Created: Maveric (21 Jun 2011)
Last edited: avnee.nathani (05 Jan 2012)


Contents

Introduction

In this article we will make a static map interactive by adding some UI control components. By default, when the map is initiated without parameters or components, it will set the coordinates to 0,0 and zoom level to zero (0). We would be adding controls like zoom bar, scale bar and map type selector.

Prerequisites

Nokia Maps API supported device and browser (basically any modern browser)

Implementation

To make the map 'intelligent', to be able to zoom it and move within the map, we need to add some components to it.

ZoomBar This will add a slider UI component, which enables the user to increase or decrease the map zoom level. The four zoom level bookmark buttons that also will appear, allow for setting predefined zoom levels.

Overview Defines a panel showing an overview of the map of the currently visible viewport.

TypeSelector Provides a user interface to change the current base map type (Satellite, Terrain, Map)

ScaleBar Defines a panel providing a scalebar. The scalebar is a ruler displaying distance measurements at different zoom levels of the map. By default, the scalebar is collapsed showing only one ruler section. When expanded, the scalebar shows more ruler sections. The measurement type can be changed from metric to imperial, which will be reflected in the distance measurements.


Example Static non-interactive map example code

This would show us a map which has no presets defined, so it will default to the map origo 0,0 and zoom level minimum (0) with no possibility for the user to interact with the map: it does not respond to the user mouse click and all the UI components are removed (Zoom Bar, Scale Bar, Map Type Selector).

Note: The authorization token is not in use in the time of writing. Please follow the Announcements section on the Ovi Maps API discussions at the project discussion board. We will be announcing when the authorization is enabled.

<html>
<head>
<title>Static map</title>
<script type="text/javascript" src="http://api.maps.nokia.com/2.0.0/jsl.js" charset="utf-8"></script>
</head>
<body>
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
<script type="text/javascript">nokia.maps.util.ApplicationContext.set("authenticationToken", "<Token>");
 
var map = new nokia.maps.map.Display(document.getElementById("map"));
</script>
</body>
</html>

Example: Dynamic, interactive map with a predefined zoom level, map center point and map type

The example code contains HTML code and embedded JavaScript.

<html>
<head>
<title>Dynamic, interactive map</title>
<script type="text/javascript" src="http://api.maps.nokia.com/2.0.0/jsl.js" charset="utf-8"></script>
</head>
<body>
<div id="map" style="width: 100%; height: 100%; position: absolute;"></div>
<script type="text/javascript">
nokia.maps.util.ApplicationContext.set("authenticationToken", "<Token>");
 
var map = new nokia.maps.map.Display(document.getElementById("map"), {
components: [
new nokia.maps.map.component.Behavior(),
new nokia.maps.map.component.ZoomBar(),
new nokia.maps.map.component.Overview(),
new nokia.maps.map.component.TypeSelector(),
new nokia.maps.map.component.ScaleBar() ],
zoomLevel: 8,
center: [19.119, 72.8957]
});
</script>
</body>
</html>

Note: Authentication setting is not mandatory at the time of writing, but should be enabled later. This will be informed separately.

For more on Nokia Maps API

Please check out the Nokia Maps API full documentation and API reference here:

You may also access the interactive Nokia Maps API playground,

Tested on

  • Google Chrome 11.0x
  • Mozilla Firefox 5.0
280 page views in the last 30 days.
×