2016-11-06 67 views
1

我從傳單,如果我需要在地圖結合我用下面的代碼遷移和背部則:如何獲取地圖範圍?

var b = map.getBounds(); 
$scope.filtromapa.lat1 = b.getSouth(); 
$scope.filtromapa.lat2 = b.getNorth(); 
$scope.filtromapa.lng1 = b.getWest(); 
$scope.filtromapa.lng2 = b.getEast(); 

這些值,其中有效的緯度/經度位置,因此我可以將其發送給我的後端和查詢的任何位置在這個區域內。

我該怎麼做,使用openlayers?

現在我只有:

var b = map.getView().calculateExtent(map.getSize()); 

但位置沒有有效的緯度/經度位置。

我使用的OpenLayers 3.19.1

回答

2

https://gis.stackexchange.com/questions/122250/how-to-get-the-feature-location-in-openlayers-v3答案(和它的假設

var currentExtent = map.getView().calculateExtent(map.getSize()), 
    TLpoint = ol.extent.getTopLeft(currentExtent), 
    BRpoint = ol.extent.getBottomRight(currentExtent), 
    TLcoords = ol.proj.transform(TLpoint, 'EPSG:3857', 'EPSG:4326'), 
    BRcoords = ol.proj.transform(BRpoint, 'EPSG:3857', 'EPSG:4326'); 
+1

謝謝,我還發現,有ol.proj.toLonLat但你提出的方法教授更多關於openlayers-3! – Sombriks

+0

@Sombriks是真的,'toLonLat'似乎更適合這種情況。 –