2
我使用OpenLayers 3顯示單個圖像。我正在嘗試編寫一個縮放功能,使圖像的左側接觸容器的左側,圖像的右側接觸容器的右側。圖像的頂部和底部是否在視圖之外並不重要。OpenLayers 3 fitExtent按預期工作
我已經設置了投影程度是相同的圖像分辨率:
map.getView().fitExtent([0,0,2480,3508],map.getSize())
其結果是:
var extent = [0, 0, 2480, 3508];
projection = new ol.proj.Projection({
code: 'image',
units: 'pixels',
extent: extent
});
I的混合物在控制檯窗口中fitExtent
函數使用的代碼進行實驗我得到的不是我所期待的。圖像居中,但比我期望的要小得多。我期待至少圖像的頂部和底部接觸容器的頂部和底部。
解釋爲什麼會發生這種情況將是太棒了。一個適合圖像的解決方案使得左邊的左邊和右邊的右邊(zoomToExtentY函數)會更好。
這與限制分辨率有關。在我的情況下,我通過確保您要實現的分辨率是視圖分辨率數組的一部分來解決這個問題。實際上,我將minResolution和maxResolution設置爲相同的值,因爲我只對單個分辨率感興趣(在該地圖上沒有交互):https://github.com/geoext/geoext3/blob/master/src/component/FeatureRenderer.js #L249:L255 – bartvde
我確實對你的評論@bartvde加註了,但後來不小心解開了它。現在不會讓我重新投票。道歉。 – SausageFingers
沒問題,很高興幫助你。 – bartvde