2011-02-03 2 views
0

У меня есть карта с проекцией «EPSG: 32639» для базовой карты и проекция «EPSG: 4326» для слоя kml, который отображается на базовой карте. Он просто показывает мою базовую карту и не показывает никакого слоя kml. что в этом плохого?Opanlayers Reprojection Kml layer

Мой исходный код.

function initMap(){ 
      // if this is just a coverage or a group of them, disable a few items, 
      // and default to jpeg format 
      format = 'image/png'; 

      var bounds = new OpenLayers.Bounds(
       551438.385, 3602649.973, 
       571430.791, 3627258.571 
      ); 
      var options = { 
       controls: [ 
              new OpenLayers.Control.Navigation({mouseWheelOptions: {interval: 100}}), 
        new OpenLayers.Control.PanZoomBar(), 
              new OpenLayers.Control.NavToolbar(), 
        new OpenLayers.Control.LayerSwitcher({'ascending':false}), 
        new OpenLayers.Control.Permalink(), 
        new OpenLayers.Control.ScaleLine(), 
        new OpenLayers.Control.MousePosition(), 
              new OpenLayers.Control.Scale($('scale')), 
              new OpenLayers.Control.OverviewMap(), 
        new OpenLayers.Control.KeyboardDefaults(), 
              new OpenLayers.Control.ZoomBox({alwaysZoom:true}) 
              ], 
       maxExtent: bounds, 
       projection: 'EPSG:32639', 
       units: 'm', 
            maxResolution: 136.21203906250003, 
            numZoomLevels: 10, 
      }; 
      map = new OpenLayers.Map('map', options); 


      tiled = new OpenLayers.Layer.TileCache('ESFAHANMAP', 
      ['http://www.memap.ir/map'],'ESFAHANMAP',{'format':'image/jpeg',sphericalMercator: true, buffer: 0 }); 


          kmlLayer = new OpenLayers.Layer.Vector('Points', 'point.kml',{ 
            projection: new OpenLayers.Projection('EPSG:4326') 
          }); 
          map.addLayers([tiled,kmlLayer]); 
      map.zoomToExtent(bounds); 

     } 

ответ

0

Ну, вы не можете показать разные проекции на одной карте. Вам нужно перепрограммировать функции из вашего KML в ту же самую проекцию, что и в базовой карте. См. Пример here