Menu

#31 OpenStreetMap integration

open
nobody
None
5
2012-06-16
2012-06-16
tweek
No

Hi, I prefer to use OpenStreetMaps for their better mapping in some areas. To make this work I changed:
function load_map_{$block.map.MiniMap.blockNum}() {ldelim}
if (GBrowserIsCompatible()) {ldelim}
var copyOSM = new GCopyrightCollection("<a href=\"http://www.openstreetmap.org/\">OpenStreetMap</a>");
copyOSM.addCopyright(new GCopyright(1, new GLatLngBounds(new GLatLng(-90,-180), new GLatLng(90,180)), 0, " "));

var tilesMapnik = new GTileLayer(copyOSM, 1, 17, {ldelim}tileUrlTemplate: 'http://tile.openstreetmap.org/{ldelim}Z{rdelim}/{ldelim}X{\
rdelim}/{ldelim}Y{rdelim}.png'{rdelim});
var tilesOsmarender = new GTileLayer(copyOSM, 1, 17, {ldelim}tileUrlTemplate: 'http://tah.openstreetmap.org/Tiles/tile/{ldelim}Z{rdelim}/\
{ldelim}X{rdelim}/{ldelim}Y{rdelim}.png'{rdelim});

var mapMapnik = new GMapType([tilesMapnik], G_NORMAL_MAP.getProjection(), "Mapnik");
var mapOsmarender = new GMapType([tilesOsmarender], G_NORMAL_MAP.getProjection(), "Osmarend");

var map = new GMap2(document.getElementById("minimap-{$block.map.MiniMap.blockNum}"), {ldelim} mapTypes: [mapMapnik, mapOsmarender] {rdel\
im});

{* var map = new GMap2(document.getElementById("minimap-{$block.map.MiniMap.blockNum}"),
{ldelim}mapTypes:[{if $mapType eq 1}G_NORMAL_MAP{elseif $mapType eq 2}G_SATELLITE_MAP{else}G_HYBRID_MAP{/if}]{rdelim});*}
{if !empty($block.map.MiniMap.mapCenter)}{* already have a valid mapCenter *}
map.setCenter(new GLatLng({$block.map.MiniMap.mapCenter}), {$block.map.MiniMap.mapZoom});

in MiniMap.tpl

It would be nice if this could make it into upstream!

cheers,

Discussion


Log in to post a comment.