2013-02-22 29 views
0

我想製作一個應用程序,您可以在其中全屏平移和縮放圖像。標記會顯示有關該圖像部分的信息。這很像一張地圖。 所以我開始玩Phonegap和OpenLayers離線映射。現在我成功地實現了這一點,但我似乎沒有抓住座標系。 當我在Android上運行我的應用程序時,它會顯示一個空白屏幕,直到我觸摸縮放控件。然後突然間圖像可見,您可以拖動它並探索它。 我認爲這與座標系有關。使用自定義圖像離線映射:如何使圖像居中並填充屏幕

這裏是我的init函數,基本上有一切顯示地圖,並使其工作: 我正在尋找一種方式來居中我的形象,並使其填充整個屏幕時運行此應用程序。

var init = function() { 
// create map 
map = new OpenLayers.Map({ 
    div: "map", 
    theme: null, 

    // komt van http://trac.osgeo.org/openlayers/wiki/UsingCustomTiles 
    maxExtent: new OpenLayers.Bounds( 0.0, -3433.0, 3433.0, 0.0), 
    maxResolution: 16.000000, 
    numZoomLevels: 7, 
    // end 

    controls: [ 
     new OpenLayers.Control.Attribution(), 
     new OpenLayers.Control.TouchNavigation({ 
      dragPanOptions: { 
       enableKinetic: true 
      } 
     }), 
     new OpenLayers.Control.Zoom() 
    ], 
    layers: [ 
     new OpenLayers.Layer.TMS("TMS Layer","", 
       { url: '', serviceVersion: '.', layername: '.', alpha: false, 
        type: 'jpg', getURL: overlay_getTileURL, 
        transitionEffect: 'resize' 
       }) 
    ], 
    center: new OpenLayers.LonLat(1000, 1000), 
    zoom: 3 
}); 
}; 

回答

0

這是很常見的問題 - 你在你的初始化函數的結尾需要map.zoomToMaxExtent();

+0

這確實負責顯示整個地圖。它也創造空白空間填補屏幕。因此我添加了map.zoomTo(2)以確保它填滿了屏幕。 – Ropefly 2013-02-27 09:50:53

相關問題