Как рассчитать масштаб, чтобы сохранить область карты при изменении размеров? - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь выяснить, как рассчитать масштаб для сохранения видимой области карты при изменении размеров (с сохранением того же соотношения высоты / ширины).

Так, например, у меня есть карта с размерами:

1000px x 1200px, увеличение: 11,5

Теперь я хочу показать ту же карту, но с разными размерами (одинаковое соотношение):

4000px x 4800px

Если я посмотрю карту с увеличением 11,5, я получу гораздо большую площадь. Я хочу видеть ту же область, поэтому мне нужен увеличенный зум.

Я нашел эту формулу: enter image description here

Из чего я пришел, это должно работать в соответствии с моими очень ограниченными математическими навыками, но это не так: enter image description here

Любые советы будут высоко оценены. Спасибо

1 Ответ

0 голосов
/ 06 июля 2019

При постоянных размерах каждый последующий уровень масштабирования делится пополам на расстояние по высоте и ширине.Если наши размеры в четыре раза (4x) на каждой оси, нам нужно увеличить уровень масштабирования так, чтобы каждая ось составляла четверть (1 / 4x) расстояния, чтобы сохранить покрытую область.

(1/2)^x = 1/4

x = 2

11.5 + 2 = 13.5
...