0

GeoServer を使用していくつかのマップを保持し、単純な OpenLayers アプリを使用してデータを読み込んで表示しています (今のところ)。

デモ データ (WGS84 にあります) を正常に読み込んでいますが、私のデータ (バルカン ゾーン 7、EPSG:31277 にあります) に関しては、リクエストを見ると、BBOX が完全になくなっているようです。順序の。

GeoServer プレビュー ページ (openLayers で作成) から BBOX を確認したところ、次のように表示され、動作します。

http://127.0.0.1:2113/geoserver/GISHome/wms?LAYERS=GISHome%3ANis11Katastar&STYLES=&FORMAT=image%2Fjpeg&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SRS=EPSG%3A31277&BBOX=7572000,4796000,7574000,4798000&WIDTH=512&HEIGHT=512

私のリクエストと違うのはBBOXだけです。BBOX をリクエストにコピーすると、機能します。

http://127.0.0.1:2113/geoserver/wms?LAYERS=Nis11Katastar&FORMAT=image%2Fpng&WIDTH=256&HEIGHT=256&PROJECTION=EPSG%3A31277&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&SRS=EPSG%3A4326&BBOX=-180,-90,0,90

GeoServer ソースでは、境界が何らかの方法で計算され、ハードコーディングされています。問題は、どうやって?それらをハードコーディングしない方法はありますか? それらをどのように計算すればよいですか。境界、maxExtent、解像度を追加しようとしましたが、明らかにそれ以上のものが欠けています。GeoServer は正常に動作します。QuantumGIS のレイヤーを使用しています。

Ext.onReady(function() {
    var map = new OpenLayers.Map();
    var layer = new OpenLayers.Layer.WMS(
        "Global Imagery",
        "http://127.0.0.1:2113/geoserver/wms",
       {  
        LAYERS:'Nis11Katastar',
        format: 'image/png',
        width:600,
        height:400,
        projection: new OpenLayers.Projection("EPSG:31277"),
        }
    );

ありがとうございました。

そうそう、私は GeoExt を使っていますが、それはあまり変わりません。

4

1 に答える 1

0

解決したようです。正しいプロパティを設定していましたが、マップ オブジェクトではなく WMS レイヤー オブジェクトに設定していました。境界の質問については、geoserver コントロール パネルから境界をコピーしているだけです。

于 2013-01-15T08:52:03.447 に答える