【发布时间】:2017-08-30 10:54:20
【问题描述】:
我正在尝试获取当前位置的纬度和经度值。有什么方法可以获得经纬度值吗?我试图通过获取当前位置的纬度和经度值来放置制造商。
【问题讨论】:
标签: javascript openlayers openlayers-3
我正在尝试获取当前位置的纬度和经度值。有什么方法可以获得经纬度值吗?我试图通过获取当前位置的纬度和经度值来放置制造商。
【问题讨论】:
标签: javascript openlayers openlayers-3
不确定您在寻找什么,但这里有几种方法可以根据鼠标点击或位置来获得纬度:
鼠标点击纬度和经度:
map.on('click', function(evt){
console.info(evt.pixel);
console.info(map.getPixelFromCoordinate(evt.coordinate));
console.info(ol.proj.toLonLat(evt.coordinate));
var coords = ol.proj.toLonLat(evt.coordinate);
var lat = coords[1];
var lon = coords[0];
var locTxt = "Latitude: " + lat + " Longitude: " + lon;
// coords is a div in HTML below the map to display
document.getElementById('coords').innerHTML = locTxt;
});
鼠标移动/定位经纬度:
map.on('pointermove', function(evt) {
//Same code as in click event
});
不完全确定“获取当前位置的纬度和经度值”是什么。意味着在你的帖子中
【讨论】:
javascript map.on('click', evt => console.log(evt.coordinate)) 中获取
import {fromLonLat, toLonLat} from 'ol/proj';
你可以使用:
var lonlat = ol.proj.toLonLat(evt.coordinate);
或var lonlat = ol.proj.transform(evt.coordinate, 'EPSG:3857', 'EPSG:4326');
得到它:alert("latitude : " + lonlat[1] + ", longitude : " + lonlat[0]);
在:
map.on('click', function (evt) { }
【讨论】: