Mapbox GL JS:使用地理位置控制控制最大缩放?
Mapbox GL JS: Control max zoom with geolocation control?
我正在使用 Mapbox GL JS v0.32.1,我的地图上有 a geolocation control。
我想将用户地理定位时的最大缩放比例设置为 8,以便地图缩放到用户的大致位置,而不是街道位置。
根据 the documentation 应该有一个可用的 geolocate
事件,但这对我不起作用:
var geoLocate = map.addControl(new mapboxgl.GeolocateControl());
geoLocate.on('geolocate', function(e) {
console.log('geolocated');
map.setZoom(8);
})
地理定位(至少在 Chrome 中)仍会缩放到可用的最大缩放级别,并且发生时我没有看到控制台日志消息。
Map#addControl
returns Map
. The geolocate
event is fired on GeolocateControl
。以下应该有效:
var geoLocate = new mapboxgl.GeolocateControl();
map.addControl(geoLocate);
geoLocate.on('geolocate', function(e) {
console.log('geolocated');
map.setZoom(8);
});
试试这个方法。平滑缩放到您的位置
var geoLocate = new mapboxgl.GeolocateControl();
map.addControl(geoLocate);
geoLocate.on('geolocate', function(e) {
map.flyTo({
center:[e.coords.longitude, e.coords.latitude],
zoom:16 //set zoom
});
});
我正在使用 Mapbox GL JS v0.32.1,我的地图上有 a geolocation control。
我想将用户地理定位时的最大缩放比例设置为 8,以便地图缩放到用户的大致位置,而不是街道位置。
根据 the documentation 应该有一个可用的 geolocate
事件,但这对我不起作用:
var geoLocate = map.addControl(new mapboxgl.GeolocateControl());
geoLocate.on('geolocate', function(e) {
console.log('geolocated');
map.setZoom(8);
})
地理定位(至少在 Chrome 中)仍会缩放到可用的最大缩放级别,并且发生时我没有看到控制台日志消息。
Map#addControl
returns Map
. The geolocate
event is fired on GeolocateControl
。以下应该有效:
var geoLocate = new mapboxgl.GeolocateControl();
map.addControl(geoLocate);
geoLocate.on('geolocate', function(e) {
console.log('geolocated');
map.setZoom(8);
});
试试这个方法。平滑缩放到您的位置
var geoLocate = new mapboxgl.GeolocateControl();
map.addControl(geoLocate);
geoLocate.on('geolocate', function(e) {
map.flyTo({
center:[e.coords.longitude, e.coords.latitude],
zoom:16 //set zoom
});
});