Автоматическая закачка в кэш

Последнее изменение: 02/06/2020 13:36:32

Вступление

Некоторым пользователям Google Earth очень не хватает одной важной функции: закачка данных в кэш, без участия пользователя. Т.е. вы, к примеру, указываете программе Google Earth интересующую область, уровень детализации, жмёте кнопочку OK и через определённый промежуток времени, все данные, что есть у Google Earth по данной территории - у вас в кэше (доступны локально, и без соединения с интернет).
Как оказывается, используя косвенные функции программы Google Earth, можно закачивать данные в кэш автоматически.
Итак, что нам нужно:
Во-первых, это программа PlaceMaker (генератор меток), которая создаст файл с метками (KML или KMZ), на основе введённых данных. Метки будут расположены таким образом, чтобы полностью покрыть выбранную вами территорию.
Во-вторых, вам нужно открыть сгенерированный KML/KMZ файл в программе Google Earth и запустить обзор меток. После этого, Google Earth начнёт обход (камера будет автоматически перемещаться от точки к точке) всех меток по очереди, с паузой над каждой из них. И если будет установлено соединение с Интернет, то Google Earth будет загружать недостающие данные в кэш.

Пошаговая инструкция

1. Определяем координаты интересующей нас области. Это можно сделать несколькими способами:

Наиболее удобно определять координаты - полигоном, т.к. мы получаем возможность загружать территорию произвольной формы. Для этого, запускаем GE, и в панели инструментов выбираем Добавить путь. Затем, "обрисовываем" по контуру территорию, предназначенную для прогрузки, и в конце замыкаем наш путь, перетягивая и совмещая последнюю точку пути с первой. Теперь можно этот полигон сохранить на диск, но лучше просто скопировать его в Буфер обмена. Для этого выделяем путь и по ПКМ (клику правой кнопки мыши по полигону) выбираем Копировать. Копирование полигона в Буфер обмена Как вариант, полигон можно было создавать и при помощи многоугольника из панели инструментов GE, но при этом процесс выделения территории не столь удобен, т.к. многоугольник по-умолчанию залит белым цветом, что несколько мешает обзору при выделении. Но PlaceMaker одинаково хорошо сумеет загрузить координаты и из такого KML, так что можно пользоваться и многоугольником.

Вот такой полигон у меня получился (выделен жёлтым цветом): Полигон и метки На скриншоте так же видны метки, равномерно заполняющие всю площадь полигона, вот их созданием мы сейчас и займёмся.

2. Теперь, запускаем PlaceMaker, отмечаем пункт Загрузить координаты из KML/KMZ файла и нажимаем кнопку Загрузить. При этом, должно появиться такое окошко, с предложением загрузить полигон из буфера обмена. Естественно, с предложением соглашаемся :) Окошко Если загрузка и определение координат пройдёт без ошибок, то координаты отобразятся в соответствующих полях, а в левом нижнем углу PlaceMaker-а появится надпись: Из KML загружена полигонная область. Внешний вид программы PlaceMaker При отсутствии kml файла с координатами, либо при ошибках определения координат по kml файлу, координаты всегда можно ввести вручную, в соответствующие поля.

3. Приступаем к настройкам PlaceMaker-а: выбираем разрешение монитора из доступных значений (для правильного автоматического расчёта шага меток) и уровень зума, на котором будем загружать картинку. Если разрешение вашего монитора больше, либо меньше доступных разрешений, то нужно указывать вручную высоту камеры и шаг меток по горизонтали и вертикали. Шаг меток указывается с таким расчётом, чтобы при просмотре в Google Earth на полный экран, метки находились по углам монитора (для высоты заданного уровня зума). Взаимосвязь между высотой камеры и уровнем зума, для данного разрешения монитора, определяется из расчётов. Расчёты основаны на том, что для каждого уровня зума, разрешение картинки (не снимка, а картинки которую отображает GE на монитор) по горизонтали величина постоянная, и для 23 уровня зума составляет 0.0225 м/pix. Таким образом, если разрешение монитора 800*600 pix, то шаг по горизонтали будет 800*0,0225=18 м (для зума 23, для каждого последующего уровня зума, расстояние увеличивается в 2 раза: зум 22 - 36 м и т.д.) Тогда высота камеры, для данного уровня зума будет равна 0,869565*18=15,7 м.

Пример расчёта высоты камеры и расстояний по горизонтали/вертикали, для монитора с разрешением 1920*1080 pix:

   Определяем расстояние по горизонтали для 23-го зума
 w23 = 1920*0,0225 = 43,2 м. 
   Определяем высоту камеры для 23-го зума
 z23 = 43,2*0,869565 = 37,6 м.
   Затем, запускаем GE, устанавливаем высоту 37 м и измеряем расстояние по вертикали:
 h23 = 22 м. или 24 м. - если изображение во весь экран (F11)
 
 Для каждого последующего зума, цифры умножаем на 2:
 z22 = 75        w22 = 87        h22 = 44
 z21 = 150       w21 = 175       h21 = 88
 z20 = 300       w20 = 350       h20 = 175
 z19 = 600       w19 = 700       h19 = 350
 z18 = 1200      w18 = 1400      h18 = 700
 z17 = 2400      w17 = 2800      h17 = 1400

4. Производим оценку времени обхода меток, выбрав из списка подходящую скорость вашего интернет-соединения и изменяя Паузу над меткой, ориентируясь на рекомендуемое значение паузы. С паузой над меткой следует поэкспериментировать в гугле (уже после создания kml-файла), наблюдая за полосой загрузки: если загрузка не успевает прекратиться и происходит переход к следующей метке, то паузу следует увеличить. Пауза над меткой в настройках PlaceMaker-а носит всего лишь информационный характер - позволяет оценить примерно общее время загрузки, а также это значение будет включено в описание создаваемых меток. Реальная же пауза, заставляющая гугла стоять над меткой настраивается в самом клиенте (о там, как и где это делается будет сказано ниже).

5. Далее настраиваем вид меток: выбираем цвет, имя, описание или оставляем всё по-умолчанию.
Рекомендация: для улучшения быстродействия Google Earth, метки нужно формировать без имён, а всю необходимую информацию занести в описание метки.

Если метки были сформированы без имён, то для получения информации о текущем прогрессе, нужно в Google Earth включить опцию Показывать комментарий во время остановки на элементах на вкладке Путешествие: GE вкладка Путешествие

6. Теперь остаётся нажать кнопку Сгенерировать, в главном окне PlaceMaker-а и будет создан kml/kmz файл с нашими метками. На этом, работа с PlaceMaker-ом закончена - переходим в гугл.

7. Загружаем KML файл с метками в Google Earth и переходим к настройкам: Инструменты -> Настройки...-> Путешествие. Указываем необходимую паузу в пункте Остановка на элементах в секундах, а также выводим на ноль Время перехода между элементами (переход от одной метки к другой будет происходить мгновенно). На предыдущем скриншоте как раз показаны все эти настройки, и там выставлена пауза 5 сек.

8. В боковой панели выбираем папку с метками из нашего KML файл и нажимаем Воспроизвести видеотур (Воспроизвести обзор в более ранних версиях) - после чего и начнётся обход меток. Боковая панель При этом желательно скрыть боковую панель, чтоб загружалось как можно больше данных над каждой меткой (тем более, что метки расстановливались именно с таким предположением), а так же, можно свернуть Google Earth, поскольку загрузка будет идти и в фоне.

Обход меток можно удобно приостановить или перейти в произвольную позицию, пользуясь вот этим инструментом (появляется автоматически в левом нижнем углу): GE управление обзором

Таким образом, используя стандартную функцию Google Earth воспроизведения обзора и программу PlaceMaker мы автоматически закачиваем выбранную территорию в кэш.

P.S. Назавания пунктов меню справедливо для клиента Google Earth 5.1.xxx, в клиентах других версий, пункты могут называться по-другому, но смысл у них остаётся тот-же. Да, и если что-то работает не так как задумано - эксперементируйте с настройками. Метод научного тыка ещё не отменён :)