Відображення локального файлу в Картах Google?


46

Як я можу отримати файл KML / KMZ для відображення на Картах Google без загальнодоступного веб-сервера?


Іронічна річ у вашому питанні полягає в тому, що ви підключені до Інтернету. Як отримати Карти Google?
CrazyEnigma

на «без сервера громадського облицювальний» Ви маєте в виду KML повинен бути на локальній машині, або що ви не хочете , щоб возитися з установкою / налаштуванням / покупки загальнодоступний веб - сайт? І чи потрібна спеціальна карта, яку ви хочете зробити, бачити інші або лише ви?
matt wilkie

Ситуація полягає в тому, що "я можу дістатись до Інтернету, але до мене Інтернет не може". У такому випадку ви не можете використовувати підтримку файлів KML в API Карт Google.
Крістофер Шмідт

display-kml.appspot.com - це інший варіант, який я думаю.
Карл Гензелін

Ви можете завантажити KML / KMZ на Google Диск, він в основному підтримує візуалізацію docs.google.com/file/d/0B9sBXp66G86xWmlRbkZiYlRNdmc/edit
KindDragon

Відповіді:


32

Щоб відкрити файл KML або KMZ на Картах Google, я додаю такий префікс до онлайн-посилання файлу KML:

http://maps.google.com/maps?q=

Як правило, я розміщую KML або KMZ у своєму папці, а потім копіюю / вставляю відкрите посилання в кінець вищевказаного фрагмента. Тоді я можу надіслати це посилання комусь, хто коли хоче, або опублікувати його десь в Інтернеті. Я також використовував Документи Google для зберігання KML-файлів та сторінки посилань на своєму веб-сайті для поширення посилань.

Приклад:

Гарві похід Гарві:

http://maps.google.com/maps?q=http://dl.dropbox.com/u/359140/KML/HarveyMountainHike.kmz


14
Цей підхід вже не працює. Після натискання на вищезазначене посилання, я просто отримую карти Google із вашим посиланням у вікні пошуку.
Дерек Грір

7
Робота з KML на maps.google.com незабаром буде припинена, хоча: support.google.com/maps/answer/41136?hl=uk
Koen.

1
Я виявив, що ви можете просто натиснути посилання на спільний доступ із Диска Google, і KMZ автоматично завантажиться в Карти Google без будь-якої іншої потреби в розширенні. Тестували в Chrome і Explorer.
Брюндаж Еміля

10
Карти Google зламали / застаріли цю функцію btw.
хендрі

5
Квітень 2017 року ОНОВЛЕННЯ: ви можете безпосередньо імпортувати файл KML у функцію "Мої карти" на Картах Google, і він відображатиме всі ваші дані KML у форматі Карт Google.
Баосад

31

Це щось із того, що ви хочете мати постійно доступними для інших або просто для тимчасового перегляду?

Один із хитрощів, якими я користуюсь досить часто, - розмістити файл KML у моїй загальнодоступній папці DropBox (знайдіть когось із обліковим записом, щоб направити вас; він отримає і вам, і їм додаткових 250 Мбіт), а потім вставити цей URL у Карти Google для візуалізувати та ділитися з іншими особами короткостроково.

У довгостроковій перспективі у вас є можливість створити нову карту Google "Мої карти" та імпортувати в неї KML, KMZ або GeoRSS. Після завершення ви можете поділитися отриманою картою за допомогою стандартних інструментів "Мої карти".

Ви також можете використовувати Документи Google для зберігання та обміну файлами KML з іншими. Моя рекомендована методика:

  1. Створіть папку та позначте її для загальнодоступного доступу.
  2. Використовуйте посилання "Завантажити", щоб завантажити свої KML-файли в цю папку без перетворення та поділитися ними з усім світом
  3. Перейдіть до посилання Завантажити, скопіюйте та вставте його у вікно пошуку Карт Google

Цікаво, як довго Google дозволяє інтерактивне спільне редагування документів KML через Google Docs? Тепер це було б круто ...


Про що слід подбати: якщо ви зміните файл (а це може включати "зберегти як" з тим же ім'ям файлу), Dropbox змінить ідентифікатор файлу (хеш-частина) у посиланні. Регулярне відкриття та збереження (наприклад, у текстовому редакторі) не створює проблем.
heltonbiker

26

Ви можете завантажити файл KML на Карти Google:

  1. Увійдіть у свій обліковий запис Google і перейдіть на сторінку http://maps.google.com
  2. Натисніть на My Maps
  3. Клацніть Create a new map
  4. Додайте назву та опис
  5. Клацніть Import
  6. Клацніть Choose file, виберіть KML для завантаження, а потім клацнітьUpload from file

Мої карти

Створіть нову карту

Імпорт

Завантажити

Тепер ви закінчили :)


Цікаво, що це відповідь, яка найбільш безпосередньо стосується питання.
Марк Бостельман

Не працює для KMZ, що містить файл KML, який перевищує 5 Мб.
Суш

6

Ви не можете

Google:

З лютого 2015 року карти, створені на класичних Картах Google - https://maps.google.com/ - більше не завантажуватимуть файли KML / KMZ із зовнішніх веб-сайтів. Однак ми знаємо, що файли KML - це дійсно корисний спосіб роботи з географічними даними, тому ми додали KML до Google My Maps і надалі підтримуємо цей формат за допомогою інших API Карт Google. Ми сподіваємось, що один із цих варіантів задовольнить ваші потреби.

https://developers.google.com/maps/support/kmlmaps

Раніше я показував локальні файли .kml та .kmz на картах Google, але зараз я не можу :(


1
Як ви вже згадували, підтримка перейшла на "Мої карти".
MastaBaba

Файли KML не можуть імпортувати всі свої дані, включаючи: інформаційні кулі з HTML або JavaScript, KML-тури, елементи на основі часу, накладки зображень та екранів, мультигеометрії, тривимірні моделі, розробники
Дейл

4

Коротка відповідь: ви не можете. Використання локального файлу із звичайним старим веб-додатком Карт Google порушить програму веб-переглядача та ту саму політику походження .

Один із варіантів, який би не був дорогим, полягає в тому, що ви можете використовувати Google Maps Premier для розміщення карт-x.js у вашій локальній файловій системі разом із пов’язаним KML.

Іншим варіантом є використання існуючого загальнодоступного веб-сервера, наприклад Google Sites .

Також майте на увазі, що ви можете використовувати OpenLayers як альтернативу Google Maps Premier.


2
OpenLayers буде обмежений (у сучасних браузерах) нефайловими URL-адресами, принаймні, у Firefox, але ви можете налаштувати локальний / непублічний веб-сервер і використовувати це. Зауважте, що "Пісочниця" насправді не є причиною того, що ви не можете робити те, що хочете з Google: Якщо HTML-сторінка розміщена на вашому локальному сервері, JS повинен мати можливість читати файл з локального сервера. Ви не можете лише тому, що Google аналізує всі файли на стороні сервера - тому їхньому серверу потрібно спілкуватися з вашим сервером, а він не може.
Крістофер Шмідт

Ах, хороший пункт. Я роздумував над файлом локальної файлової системи, а не локальним httpd.
Джон Брінгхерст

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.