2011-08-03 4 views
0

osmとopenlayersに問題があります。あなたが見ることができるように、すべての最初の 、私のマップオブジェクトOpenLayers最小のズームはバウンディングボックスより小さい

var wgs84 = new OpenLayers.Projection("EPSG:4326"); 
var map = new OpenLayers.Map ('map', 
    { 
    projection: new OpenLayers.Projection("EPSG:900913"), 
    displayProjection: wgs84, 
    maxExtent: new OpenLayers.Bounds(-180,-20, 180, 90), 
    controls: [ 
    new OpenLayers.Control.MousePosition(), 
    new OpenLayers.Control.PanZoomBar(), 
    ] 
    }); 

は、私のバウンディングボックスは-20で終了するので、antarctisが表示されるはずです。

しかし、私は全世界を見ることができるようにズームアウトすることができ、mapはmap-div(900 * 500)よりも小さくなります。

解決策はありますか?バウンディングボックスで許容されるよりも小さいマップを取得できないようにすべきです。

答えて

0

restrictedExtentパラメータを実装しましたか? (ドキュメントから)

restrictedExtent

{OpenLayers.Bounds}が可能この範囲にマップナビゲーションを制限します。 null以外のrestrictedExtentが設定されている場合、パニングは指定された境界に制限されます。さらに、制限された範囲を超えて表示される解像度にズームすると、地図が制限された範囲に集中します。

See an example here - これは境界線を越えてパンするのをやめますが、ズームレベルは変更されません。これは、多くの決議をしていない重大な報告されていない機能のようです。

は、私はいくつかの助けとなっている希望 Min Max Zoom level in OpenLayers

かかわらず、このSOポストはそれのためにいくつかの回避策を持っていると信じています。

関連する問題