2010-05-26 3 views
1

Я в настоящее время используют карту Google и создавать плитки для него с помощью PHP скрипт для создания требуемых изображений PNGКак добавить накладку к моему OpenStreetMap

var myTileLayer = new GTileLayerOverlay(
           new GTileLayer(null, null, null, { 
            //tileUrlTemplate: 'Overlays/Overlay_{Z}_{X}_{Y}.png', 
            tileUrlTemplate: 'gentile.php?Zoom={Z}&TileX={X}&TileY={Y}', 
            isPng:true, 
            opacity:1.0 
           }) 
          ); 

           map.addOverlay(myTileLayer); 

теперь я хочу использовать OpenStreetMap и в соответствии с этот источник: http://wiki.openstreetmap.org/wiki/OpenLayers_Simple_Example

мне нужно использовать этот код, чтобы достигнуть того, однако, кажется, хочет меня использовать Premade плитки, когда я хочу, чтобы ген их на лету

var newLayer = new OpenLayers.Layer.OSM("New Layer", "URL_TO_TILES/${z}/${x}/${y}.png", {numZoomLevels: 19}); 
map.addLayer(newLayer); 

Действительно, мне нужно использовать gentile.php? Увеличение = {Z} & TileX = {X} & Тили = {Y}

+0

Просьба уточнить ваш вопрос. Вы хотите использовать OpenStreetMap с OpenLayers? Или с API карт google? В чем проблема? – Tomas

ответ

0

Я думаю, вы whant использовать OpenLayers, чтобы показать свой собственный Overlay на OSM (или что когда-либо) -Map?

И вы ВГА использовать и ваши плитки лежит на URL, как "gentile.php? Увеличить = {Z} & TileX = {X} & Тили = {Y}"

Так что попробуйте добавить слой с:

var newLayer = new OpenLayers.Layer.OSM("New Layer", "gentile.php?Zoom=${Z}&TileX=${X}&TileY=${Y}", {numZoomLevels: 19}); 

я использовал, что год назад ...

, если это не работает, напишите HTAccess - mod_rewrite

например, что-то вроде этого:

RewriteRule ^(.*)/(.*)/(.*).png$ gentile.php?Zoom=$1&TileX=$2&TileY=$3 [NC] 
Смежные вопросы