Map API Provider; Feature Support Matrix

vicchi edited this page Jan 30, 2013 · 21 revisions

Supported Provider Versions

CloudMade ESRI Google v2 Google v3 Leaflet MapQuest MapQuest Open
Version 0.8 3.3 2 3 0.4.5 7.0.s 7.0.s
Microsoft Microsoft v7 Nokia OpenLayers OS OpenSpace Ovi Yandex
Version 6.3 7.0 2.2.3 2.9.1 1.0.1 1.0.12 1.1

Core Tests

Core tests are performed by opening mxn/tests/core.html, visually checking the output and monitoring the JavaScript console.

  • Passes - All tests pass by visual examination and no errors are generated and displayed in the JavaScript console.
  • Fails - An individual test has failed and the test run is aborted. No further testing has taken place beyond the point of failure.
  • Not tested - either the core tests have failed and the testing could not be completed, or the map API provider hasn't yet been added to the core tests.

Test ESRI GeoCommons Google v2 Google v3 Leaflet MapQuest MapQuest Open
Load Map Passes Passes Passes Passes Passes Passes Passes
Center Map Passes Passes Passes Passes Passes Passes Passes
Pan Map Passes Passes Passes Passes Passes Passes Passes
Get Info Passes Passes Passes Passes Passes Passes Passes
Set Zoom Passes Passes Passes Passes Passes Passes Passes
Change Type Passes Passes Passes Passes Passes Passes Passes
Add Marker Passes Passes Passes Passes Passes Passes Passes
Remove Marker Passes Passes Passes Passes Passes Passes Passes
Add Shape Passes Passes Passes Passes Passes Passes Passes
Remove Shape Passes Passes Passes Passes Passes Passes Passes
Add Marker Passes Passes Passes Passes Passes Passes Passes
Show InfoBubble Passes Passes Passes Passes Passes Passes Passes
Hide InfoBubble Passes Passes Passes Passes Passes Passes Passes
Add Marker Offscreen Passes Passes Passes Passes Passes Passes Passes
Auto Center Passes Passes Passes Passes Passes Passes Passes
Add Line Passes Passes Passes Passes Passes Passes Passes
Add Controls Passes Passes Passes Passes Passes Passes Passes
Check Events Passes Passes Passes Passes Passes Passes Passes
Swap API Passes Passes Passes Passes Passes Passes Passes

Test Microsoft Microsoft v7 Nokia OpenLayers OS OpenSpace Ovi Yandex
Load Map Passes Passes Passes Passes Passes Passes Passes
Center Map Passes Passes Passes Passes Passes Passes Passes
Pan Map Passes Passes Passes Passes Passes Passes Passes
Get Info Passes Passes Passes Passes Passes Passes Passes
Set Zoom Passes Passes Passes Passes Passes Passes Passes
Change Type Passes Passes Passes Passes Passes Passes Passes
Add Marker Passes Passes Passes Passes Passes Passes Passes
Remove Marker Passes Passes Passes Passes Passes Passes Passes
Add Shape Passes Passes Passes Passes Passes Passes Passes
Remove Shape Passes Passes Passes Passes Passes Passes Passes
Show InfoBubble Passes Passes Passes Passes Passes Passes Passes
Hide InfoBubble Passes Passes Passes Passes Passes Passes Passes
Add Marker Offscreen Passes Passes Passes Passes Passes Passes Passes
Auto Center Passes Passes Passes Passes Passes Passes Passes
Add Line Passes Passes Passes Passes Passes Passes Passes
Add Controls Passes Passes Passes Passes Passes Passes Passes
Check Events Passes Passes Passes Passes Passes Passes Passes
Swap API Passes Passes Passes Passes Passes Passes Passes

Supported Core Features

  • Yes - the map provider code supports this function, but it is not guaranteed to function correctly or to support all options
  • No (1) - the map provider code does not support this function; either the code is commented out or the function returns an empty or null value
  • No (2) - the map provider code does not support this function; it throws a Mapstraction.[function] is not currently supported by provider [provider] exception
</tr>
<tr>
	<td>applyOptions</td>
	<td>Yes</td>
	<td><strong>No (1)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>resizeTo</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addControls</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addSmallControls</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addLargeControls</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addMapTypeControls</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>setCenterAndZoom</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addMarker</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>removeMarker</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>declutterMarkers</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>addPolyline</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>removePolyline</td>
	<td>Yes</td>
	<td>Yes></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>getCenter</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>setCenter</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>setZoom</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>getZoom</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>getZoomLevelForBoundingBox</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>setMapType</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>getMapType</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>getBounds</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>setBounds</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
</tr>
<tr>
	<td>addImageOverlay</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>setImagePosition</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>addOverlay</td>
	<td><strong>No (1)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>addTileLayer</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>toggleTileLayer</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>getPixelRatio</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
<tr>
	<td>mousePosition</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td>Yes</td>
	<td><strong>No (2)</strong></td>
	<td><strong>No (2)</strong></td>
</tr>
Feature CloudMade ESRI Google v2 Google v3 Leaflet MapQuest MapQuest Open
init Yes Yes Yes Yes Yes Yes Yes
Feature Microsoft Microsoft v7 Nokia OpenLayers OS OpenSpace Ovi Yandex
init Yes Yes Yes Yes Yes Yes Yes
applyOptions Yes Yes Yes Yes No (1) Yes Yes
resizeTo Yes Yes Yes Yes Yes Yes Yes
addControls Yes No (1) Yes Yes Yes Yes Yes
addSmallControls Yes No (1) Yes Yes Yes Yes Yes
addLargeControls Yes No (1) Yes Yes Yes Yes Yes
addMapTypeControls No (1) No (1) Yes Yes Yes Yes Yes
setCenterAndZoom Yes Yes Yes Yes Yes Yes Yes
addMarker Yes Yes Yes Yes Yes Yes Yes
removeMarker Yes Yes Yes Yes Yes Yes Yes
declutterMarkers No (2) No (2) No (2) No (2) No (2) No (2) No (2)
addPolyline Yes Yes Yes Yes Yes Yes Yes
removePolyline Yes Yes Yes Yes Yes Yes Yes
getCenter Yes Yes Yes Yes Yes Yes Yes
setCenter Yes Yes Yes Yes Yes Yes Yes
setZoom Yes Yes Yes Yes Yes Yes Yes
getZoom Yes Yes Yes Yes Yes Yes Yes
getZoomLevelForBoundingBox No (2) No (2) Yes Yes Yes Yes Yes
setMapType Yes Yes Yes No (1) No (1) Yes Yes
getMapType Yes Yes Yes Yes Yes Yes Yes
getBounds Yes Yes Yes Yes Yes Yes Yes
setBounds Yes Yes Yes Yes Yes Yes Yes
addImageOverlay No (2) No (2) No (2) Yes No (2) No (2) Yes
setImagePosition No (2) No (2) No (2) No (2) No (2) No (2) Yes
addOverlay Yes No (2) No (2) Yes No (2) No (2) Yes
addTileLayer No (2) Yes Yes Yes No (2) No (2) Yes
toggleTileLayer No (2) Yes Yes Yes No (2) No (2) Yes
getPixelRatio No (2) No (2) No (1) No (2) No (2) No (2) No (2)
mousePosition Yes Yes Yes Yes Yes Yes Yes

Supported LatLonPoint Features

  • Yes - the map provider code supports this function, but it is not guaranteed to function correctly or to support all options
  • No (1) - the map provider code does not support this function; either the code is commented out or the function returns an empty or null value
  • No (2) - the map provider code does not support this function; it throws a Mapstraction.[function] is not currently supported by provider [provider] exception
Feature CloudMade ESRI Google v2 Google v3 Leaflet MapQuest MapQuest Open
toProprietary Yes Yes Yes Yes Yes Yes Yes
fromProprietary Yes Yes Yes Yes Yes Yes Yes
Feature Microsoft Microsoft 7 Nokia OpenLayers OS OpenSpace Ovi Yandex
toProprietary Yes Yes Yes Yes Yes Yes Yes
fromProprietary Yes Yes Yes Yes Yes Yes Yes

Supported Marker Features

  • Yes - the map provider code supports this function, but it is not guaranteed to function correctly or to support all options
  • No (1) - the map provider code does not support this function; either the code is commented out or the function returns an empty or null value
  • No (2) - the map provider code does not support this function; it throws a Mapstraction.[function] is not currently supported by provider [provider] exception
Feature CloudMade ESRI Google v2 Google v3 Leaflet MapQuest MapQuest Open
toProprietary Yes Yes Yes Yes Yes Yes Yes
openBubble Yes Yes Yes Yes Yes Yes Yes
closeBubble Yes Yes Yes Yes Yes Yes Yes
hide Yes Yes Yes Yes Yes No (2) No (2)
show Yes Yes Yes Yes Yes No (2) No (2)
update No (2) No (2) Yes Yes No (2) No (2) No (2)
Feature Microsoft Microsoft v7 Nokia OpenLayers OS OpenSpace Ovi Yandex
toProprietary Yes Yes Yes Yes Yes Yes Yes
openBubble Yes Yes Yes Yes Yes Yes Yes
closeBubble Yes Yes Yes Yes Yes Yes Yes
hide Yes Yes Yes Yes Yes Yes Yes
show Yes Yes Yes Yes Yes Yes Yes
update Yes Yes No (2) No (2) No (2) No (2) Yes

Supported Polyline Features

  • Yes - the map provider code supports this function, but it is not guaranteed to function correctly or to support all options
  • No (1) - the map provider code does not support this function; either the code is commented out or the function returns an empty or null value
  • No (2) - the map provider code does not support this function; it throws a Mapstraction.[function] is not currently supported by provider [provider] exception
Feature CloudMade ESRI Google v2 Google v3 Leaflet MapQuest MapQuest Open
toProprietary Yes Yes Yes Yes Yes Yes Yes
show Yes Yes Yes Yes Yes Yes Yes
hide Yes Yes Yes Yes Yes Yes Yes
Feature Microsoft Microsoft v7 Nokia OpenLayers OS OpenSpace Ovi Yandex
toProprietary Yes Yes Yes Yes Yes Yes Yes
show Yes Yes Yes Yes Yes Yes Yes
hide Yes Yes Yes Yes Yes Yes Yes