Стратегии, которые вы используете, чтобы программно масштабировать и устранять GeographicGlobe и GeographicAxes объекты различаются. Для GeographicGlobe объекты, вы задаете высоту камеры используя camheight функция. Для GeographicAxes объекты, вы задаете уровень масштаба используя ZoomLevel свойство или задайте пределы широты и долготы, используя geolimits функция. Создание GeographicGlobe и GeographicAxes объекты с подобными шкалами карты, приблизительной высотой камеры и уровнем масштаба с помощью heightToZoomLevel и zoomLevelToHeight локальные функции (определены здесь).
Можно проверить поведение zoomLevelToHeight локальная функция путем отображения GeographicAxes и GeographicGlobe объекты, использующие сопоставимые уровни увеличения.
Укажите широту и долготу Сиднейского оперного театра. Создайте географические оси с основной картой, центром карты и уровнем масштаба, который позволяет четко видеть создание.
Создайте географический глобус. Поместите камеру над оперным театром Сиднея с помощью campos функция.
Вычислите приблизительную высоту камеры от уровня масштаба с помощью zoomLevelToHeight локальная функция. Затем установите высоту камеры с помощью camheight функция. Обратите внимание, что географические оси и отображения географического глобуса сопоставимы.
Чтобы проверить поведение heightToZoomLevel функция, вычислите приблизительный уровень масштаба от высоты камеры.
Обратите внимание, что z и z2 равны.
Этот код определяет локальную функцию, вызываемую zoomLevelToHeight который аппроксимирует высоту камеры h для GeographicGlobe объект с использованием уровня масштаба z и центр карты широты lat a GeographicAxes объект.
Этот код определяет локальную функцию, вызываемую heightToZoomLevel который аппроксимирует уровень масштаба z для GeographicAxes объект, использующий высоту камеры h и широта lat a GeographicGlobe объект.