×
Namespaces

Variants
Actions
(Difference between revisions)

HERE Maps API - How to pan the map

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Hamishwillee - Remove redundant categories)
jasfox (Talk | contribs)
m (Jasfox -)
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Nokia Maps]][[Category:Code Snippet]][[Category:JavaScript]]
+
[[Category:Nokia Maps]][[Category:Code Snippet]][[Category:JavaScript]][[Category:Nokia Maps]]
 
{{Abstract|This article explains how to use the panning method on the map. }}  Feel free to modify and utilize whole or partial for your own purposes!
 
{{Abstract|This article explains how to use the panning method on the map. }}  Feel free to modify and utilize whole or partial for your own purposes!
  
Line 5: Line 5:
 
|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]] -->
 
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
 
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
|devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') -->
+
|devices= Internet Explorer, Firefox, Google Chrome, Opera
 
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
 
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
 
|platform= Web browser
 
|platform= Web browser
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
|dependencies=Nokia Maps 2.1.0
+
|dependencies=Nokia Maps 2.2.3
 
|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. -->
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
+
|keywords= Nokia Maps, JavaScript, Panning
 
|id= <!-- Article Id (Knowledge base articles only) -->
 
|id= <!-- Article Id (Knowledge base articles only) -->
 
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
 
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
Line 25: Line 25:
 
|author=[[User:Maveric]]
 
|author=[[User:Maveric]]
 
}}
 
}}
 +
{{SeeAlso|
 +
* [http://developer.here.net/javascript_api Nokia Maps API]
 +
* [http://developer.here.net/apiexplorer/examples/api-for-js/map/panning-the-map.html Panning the Map]
 +
}}
  
 
== Prerequistites ==
 
== Prerequistites ==
Line 33: Line 37:
  
 
This example will start panning the map to the right, then after a moment changes direction to the left and continues forever(?) ;)
 
This example will start panning the map to the right, then after a moment changes direction to the left and continues forever(?) ;)
Unless you stop it by pressing the button and clearing the timer and interval settings.
+
Unless you stop it by pressing the button and clearing the timer and interval settings.  Remember to add in your own [[How to Obtain Your Own Nokia appID and Token| AppId and Token]] to get it to work.
  
<code java>
+
<code javascript>
<script type="text/javascript">
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 +
<html xmlns="http://www.w3.org/1999/xhtml">
 +
    <head>
 +
      <title>Panning the map</title>
 +
        <meta http-equiv="X-UA-Compatible" content="IE=7; IE=EmulateIE9"/>
 +
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
 +
      <script type="text/javascript"
 +
            src="http://api.maps.nokia.com/2.2.3/jsl.js" charset="utf-8">
 +
        </script>
 +
    </head>
 +
    <body onload="all_is_ready()">
 +
 +
        <div id="mapContainer" style="z-index: -1; left:0px; top:0px; width: 100%; height: 80%; position: absolute;"></div>
 +
        <div id="showCoords" style="height: 2.0em; font-size: 2em; color: blue;"></div>
 +
<input type="button" value="STOP panning" name="button6" onclick="stopPanning()" />
 +
        <script type="text/javascript">
 +
/////////////////////////////////////////////////////////////////////////////////////
 +
// Don't forget to set your API credentials
 +
//
 +
// Replace with your appId and token which you can obtain when you
 +
// register on http://api.developer.nokia.com/
 +
//
 +
nokia.Settings.set( "appId", "YOUR APP ID GOES HERE");
 +
nokia.Settings.set( "authenticationToken", "YOUR AUTHENTICATION TOKEN GOES HERE");
 +
 +
//
 +
/////////////////////////////////////////////////////////////////////////////////////
 
   
 
   
 
//Globals
 
//Globals
 
   
 
   
 
     var myInterval = 0;
 
     var myInterval = 0;
 
 
     var myTimer;
 
     var myTimer;
 
 
 
     var map_start_x = 100;
 
     var map_start_x = 100;
 
     var map_start_y = 100;
 
     var map_start_y = 100;
 
     var map_end_x = 120;
 
     var map_end_x = 120;
 
     var map_end_y = 100;
 
     var map_end_y = 100;
 
 
     var myMap;
 
     var myMap;
 
   
 
   
if (document.addEventListener)
+
//if (document.addEventListener)
  document.addEventListener("DOMContentLoaded", all_is_ready, false);
+
// document.addEventListener("DOMContentLoaded", all_is_ready, false);
 
   
 
   
 
   
 
   
Line 60: Line 86:
 
  alert("Click OK to start the panning.");
 
  alert("Click OK to start the panning.");
 
   
 
   
  myMap = new nokia.maps.map.Display(document.getElementById("map"),
+
  myMap = new nokia.maps.map.Display(document.getElementById("mapContainer"),
 
     {
 
     {
 
                   components: [ new nokia.maps.map.component.Behavior(),
 
                   components: [ new nokia.maps.map.component.Behavior(),
Line 101: Line 127:
 
     alert("Timer and interval cleared. Example finished. Reload page to run again.");
 
     alert("Timer and interval cleared. Example finished. Reload page to run again.");
 
   
 
   
}
+
}
</script>
+
<html>
+
<head>
+
<script type="text/javascript"
+
    src="http://api.maps.nokia.com/2.0.0/jsl.js" charset="utf-8">
+
 
</script>
 
</script>
</head>
 
<body>
 
<center>
 
<div id="map" style="width:80%; height:80%;"></div>
 
<div id="showCoords" style="height: 2.0em; font-size: 2em; color: blue;"></div>
 
<FORM>
 
<INPUT type="button" value="STOP panning" name="button6" onClick="stopPanning()">
 
</FORM>
 
</center>
 
 
</body>
 
</body>
 
</html>
 
</html>
</code>
+
</code>
 +
 
 
== Screenshot==
 
== Screenshot==
 
[[File:NokiaMapsPanning.png|600px]]
 
[[File:NokiaMapsPanning.png|600px]]
==For more on Nokia Maps API==
+
 
 +
==For more on the Nokia Maps API==
  
 
Please check out the Nokia Maps API full documentation and API reference here:
 
Please check out the Nokia Maps API full documentation and API reference here:
* http://api.maps.nokia.com/
+
* [http://developer.here.net/javascript_api Nokia Maps API]
 +
 
 +
You may also access the interactive API explorer
 +
* [http://developer.here.net/javascript_api_explorer API explorer]
  
You may also access the interactive Nokia Maps API playground,
 
* http://api.maps.nokia.com/2.1.0/playground/index.html
 
 
== Summary ==
 
== Summary ==
  
 
Using the map panning feature you could create e.g. a game, where the map is moving and the user should e.g. find something on the map and click it before the area vanishes from sight, just an idea ;) develop your own =)? Side scrolling game...? =)
 
Using the map panning feature you could create e.g. a game, where the map is moving and the user should e.g. find something on the map and click it before the area vanishes from sight, just an idea ;) develop your own =)? Side scrolling game...? =)

Revision as of 14:43, 4 January 2013

This article explains how to use the panning method on the map. Feel free to modify and utilize whole or partial for your own purposes!

Article Metadata
Tested with
Devices(s): Internet Explorer, Firefox, Google Chrome, Opera
Compatibility
Platform(s): Web browser
Dependencies: Nokia Maps 2.2.3
Article
Keywords: Nokia Maps, JavaScript, Panning
Created: Maveric (27 Jun 2011)
Updated: avnee.nathani (31 Dec 2011)
Last edited: jasfox (04 Jan 2013)

Contents

Prerequistites

Nokia Maps API supported web browser (basically any modern browser should do).

Example code

This example will start panning the map to the right, then after a moment changes direction to the left and continues forever(?) ;) Unless you stop it by pressing the button and clearing the timer and interval settings. Remember to add in your own AppId and Token to get it to work.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Panning the map</title>
<meta http-equiv="X-UA-Compatible" content="IE=7; IE=EmulateIE9"/>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<script type="text/javascript"
src="http://api.maps.nokia.com/2.2.3/jsl.js" charset="utf-8">
</script>
</head>
<body onload="all_is_ready()">
 
<div id="mapContainer" style="z-index: -1; left:0px; top:0px; width: 100%; height: 80%; position: absolute;"></div>
<div id="showCoords" style="height: 2.0em; font-size: 2em; color: blue;"></div>
<input type="button" value="STOP panning" name="button6" onclick="stopPanning()" />
<script type="text/javascript">
/////////////////////////////////////////////////////////////////////////////////////
// Don't forget to set your API credentials
//
// Replace with your appId and token which you can obtain when you
// register on http://api.developer.nokia.com/
//
nokia.Settings.set( "appId", "YOUR APP ID GOES HERE");
nokia.Settings.set( "authenticationToken", "YOUR AUTHENTICATION TOKEN GOES HERE");
 
//
/////////////////////////////////////////////////////////////////////////////////////
 
//Globals
 
var myInterval = 0;
var myTimer;
var map_start_x = 100;
var map_start_y = 100;
var map_end_x = 120;
var map_end_y = 100;
var myMap;
 
//if (document.addEventListener)
// document.addEventListener("DOMContentLoaded", all_is_ready, false);
 
 
function all_is_ready(){
 
alert("Click OK to start the panning.");
 
myMap = new nokia.maps.map.Display(document.getElementById("mapContainer"),
{
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: 3,
center: [19.119, 72.8957]
 
});
 
timerLauncher();
 
}
function timerLauncher()
{
// Start the timer
myInterval = setInterval ("panTheMap()", 1000);
}
 
function panTheMap()
{
map_start_x = map_start_x + 1;
map_start_y = map_start_y + 1;
map_end_x = map_end_x - 1;
map_end_y = map_end_y + 1;
 
document.getElementById("showCoords").innerHTML = "("+map_start_x+","+map_start_y+","+map_end_x+","+map_end_y+")";
 
myMap.pan(map_start_x, map_start_y, map_end_x, map_end_y);
 
myTimer = setTimeout ('document.getElementById("showCoords").innerHTML = ""', 500);
}
 
function stopPanning()
{
clearTimeout(myTimer);
clearInterval(myInterval);
alert("Timer and interval cleared. Example finished. Reload page to run again.");
 
}
</script>
</body>
</html>

Screenshot

NokiaMapsPanning.png

For more on the Nokia Maps API

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

You may also access the interactive API explorer

Summary

Using the map panning feature you could create e.g. a game, where the map is moving and the user should e.g. find something on the map and click it before the area vanishes from sight, just an idea ;) develop your own =)? Side scrolling game...? =)

120 page views in the last 30 days.
×