getLocationFromBounds
Параметры
bounds
Обязательный параметр. Границы, из которых надо получить центр и зум
map
Обязательный параметр. Инстанс карты, полученный из v-model
roundZoom
Нужно ли округлять координаты. Полезно, если вам требуется целочисленное значение или просто нужно уменьшить масштаб.
Принимает: boolean или floor/round/ceil. Если true, то выполнит Math.floor.
Также используется как стратегия округления в comfortZoomLevel.
comfortZoomLevel
"Докручивает" уровень зума до комфортного отображения всего, что входит в границы.
Если true, то при разнице менее 0.5 вычитает единицу из зума (так, 16.4 станет 15.4, а 16.6 останется без изменений).
В случае, если ранее использовался roundZoom, разница будет смотреться из первоначального зума, и пример выше станет таким: 16.4 -> 15, 16.6 -> 16 (при стратегии floor).
Также принимает объект с параметрами diff (по умолчанию 0.5), correction (по умолчанию 1) и roundStrategy (по умолчанию: roundZoom или floor) для самостоятельной настройки всех параметров.
Возвращает
Promise, содержащий посчитанные center и zoom.
Важно
center незначительно отличается от того, что возвращает сам Яндекс под капотом. Возможно, они делают что-то ещё, либо это ошибка нашей библиотеки.
zoom при этом идентичен на 100%.
Пример использования
import { getLocationFromBounds } from 'vue-yandex-maps';
if (map.value) {
const {
center,
zoom
} = await getLocationFromBounds({
bounds,
map: map.value,
roundZoom: true, //Выполнить округление зума через Math.floor
comfortZoomLevel: true, //Добавить "пространства" в зум
});
}