Что вы кодируете для управления масштабом пользовательской карты mapbox.gl, чтобы когда пользователь уменьшал и увеличивал масштаб, он всегда начинался и заканчивался, соответственно, на одной и той же долготе/широте, независимо от того, где находится курсор/указатель пользователя?
Прямо сейчас у меня установлены maxZoom и minZoom, но когда пользователь уменьшает и снова увеличивает масштаб, он оказывается там, где находится курсор, а не в начальной точке карты, к которой я хочу вернуться.
Mapbox-GL: управление областью масштабирования
comment
Возможный дубликат Mapbox .GL: увеличение и уменьшение масштаба до определенных координат на пользовательской карте mapbox
- person Lucas Wojciechowski   schedule 02.03.2016
Ответы (1)
Вы можете управлять координатами, в которых карта может быть уменьшена, установив ограничивающую рамку:
// Set bounds to New York, New York
var bounds = [
[-74.04728500751165, 40.68392799015035], // Southwest coordinates
[-73.91058699000139, 40.87764500765852] // Northeast coordinates
];
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v8',
maxBounds: bounds
});
Таким образом, уменьшение масштаба всегда будет приземляться на эти координаты. См. ограничить границы для живого примера.
person
tristen
schedule
17.02.2016
О, спасибо, Тристен, но в этом примере, когда пользователь прокручивает, чтобы увеличить масштаб, как вы управляете им, чтобы он приближался точно к тому месту, где вы начали? Есть ли опция MinBounds?
- person JYP18; 17.02.2016