2017-05-01 20 views
0

OpenServer3を使用して、MapServer WMS経由でラスタレイヤを追加しています。 ページを読み込むときに、CRS値がWMS URLの3857に変更されています。Openlayer 3 WMS(マップサーバー)でCRSを変更する方法は?

ワーキングのMapServer URL

http://localhost/cgi-bin/mapserv.exe?map=D:\のMapServerの\ actualimage.map & SERVICE = WMS & VERSION = 1.3.0 & REQUEST = GetMapリクエスト& LAYERS =グジャラート& STYLES = & CRS = EPSG:32643 & BBOX = 361600.51891405135 、2404154.8014285564,366487.01241288986,2409041.294927395 & WIDTH = 800 = 500 & FORMAT =画像/ PNG & HEIGHT

openlayerを要求しています

http://localhost/cgi-bin/mapserv.exe?map=Dとしてデコード

http://localhost/cgi-bin/mapserv.exe?map=D:%5Cmapserver%5Cactualimage.map&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=Gujarat&CRS=EPSG%3A3857&BBOX=360378.8955393417%2C2402933.1780538466%2C367708.6357875995%2C2410262.918302105&WIDTH=1&HEIGHT=1&STYLES=

下記URL:のMapServerの\ actualimage.map & SERVICE = WMS & VERSION = 1.3.0 & REQUEST = GetMapリクエスト& FORMAT =画像/ PNG & TRANSPARENT \ =真& LAYERS =グジャラート& CRS = EPSG:3857 & BBOX = 360378.8955393417,2402933.1780538466,367708.6357875995,2410262.918302105 & WIDTH = 1もし投影として'EPSG:32643'を登録していない限り0 HEIGHT = 1 & STYLES =以下

がOpenlayerコード

var layers = [ 
      new ol.layer.Image({ 
       extent: [361600.51891405135,2404154.8014285564,366487.01241288986,2409041.294927395], 
       source: new ol.source.ImageWMS({ 
        url: encodeURI('http://localhost/cgi-bin/mapserv.exe?map=D:\\mapserver\\actualimage.map'), 
        params: { 
         'LAYERS': 'Gujarat', 
         'CRS': 'EPSG:32643', 
         'BBOX': '361600.51891405135,2404154.8014285564,366487.01241288986,2409041.294927395', 
         'WIDTH': '800', 
         'HEIGHT': '500', 
         'FORMAT': 'image/png' 
        }, 
        serverType: 'mapserver', 
        projection: ol.proj.get('EPSG:32643'), 
       }) 
      }) 
     ]; 
     var map = new ol.Map({ 
      layers: layers, 
      target: 'map', 
      view: new ol.View({ 
       center: [361600.51891405135, 2404154.8014285564], 
       zoom: 1 
      }) 
     }); 

答えて

1

(例えばproj4jsを使用して設定すると)ol.proj.get('EPSG:32643')nullを返します。プロジェクションが正しく登録されている場合、OpenLayersはWMSレイヤーをビュープロジェクション('EPSG:3857')にラスタライズします。

は、ラスタ再投影せずに行く、この場合に projection: 'EPSG:32643' on both your ol.source.ImageWMS and your ol.View . Also note that the coordinates of the view'sセンター need to be in ``'EPSG:32643'を設定します。

関連する問題