Суть: экспортирую собственноручно расставленные метки из карты в Google Maps чтобы использовать их в Maps Me или аналогах типа Organic Maps. Сохранял в .kml или .kmz, затем импортировал в приложение на смартфоне.
Все импортируется, кроме значков для меток и слоев (разбиение меток по тематике). Притом, Гугльмапс советует сохранять в .kmz, иначе «поддерживаются не все значки». По факту, что .kml что .kmz одинаково не передают те значки, притом убивают структуру слоев и даже порядок меток зачем то запускают с конца.
Вопрос: сохранение структуры слоев и перенос меток в приложение на смарте в принципе невозможны, либо все же есть метод постучать в бубен и получить более приличный вид после экспорта?
Источник: useful-faq.livejournal.com
Организация вывода данных на карту Google Maps, используя PHP и MySQL – продолжение
На страницах своего блога я рассказывал уже о том, как можно вывести данные на карту Google Maps, используя PHP и MySQL.
Как поставить несколько меток в Google Maps / Установить несколько точек на Картах Google
В этой заметке я продолжу рассказ об этой теме, я расскажу, как можно вывести в информационное окно (балун) html-код: картинку и ссылку на сайт.
В начале, мы в базе данных создадим таблицу markers , в которой будем хранить информацию о метках.
Это можно сделать, используя утилиту PhpMyAdmin выполнив следующий SQL-код:
CREATE TABLE IF NOT EXISTS `markers` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `address` varchar(255) NOT NULL, `ssilka` varchar(255) NOT NULL, `images` varchar(255) NOT NULL, `lat` float(10,6) NOT NULL, `lng` float(10,6) NOT NULL, `type` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `markers` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `address` varchar(255) NOT NULL, `ssilka` varchar(255) NOT NULL, `images` varchar(255) NOT NULL, `lat` float(10,6) NOT NULL, `lng` float(10,6) NOT NULL, `type` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Здесь, id – уникальный идентификатор записи, name – служит для хранения названия метки, address – адрес метки, ssilka — адрес для гиперссылки, images — адрес файла с изображением, поля lat и lng – служат для хранения значений широты и долготы соответственно, type – тип объекта.
Добавим в таблицу предварительно мной подготовленные данные.
Это также можно сделать, используя утилиту PhpMyAdmin выполнив следующий SQL-код:
INSERT INTO `markers` (`id`, `name`, `address`, `ssilka`, `images`, `lat`, `lng`, `type`) VALUES (1, ‘Кинотеатр Канавинский’, ‘ул. Фильченкова, 7’, ‘http://centerfilm.ru.proton.mtw.ru/kt/detail.php?ID=1851’, ‘images/kanavinskiy.jpg’, 43.944336, 56.317978, ‘kinoteatr’), (2, ‘Кинотеатр Синема Парк’, ‘ул. Родионова, 187’, ‘http://www.cinemapark.ru’, ‘images/sinimapark.jpg’, 44.073826, 56.308056, ‘kinoteatr’), (3, ‘Кинотеатр КАРО ФИЛЬМ в ТЦ Шоколад’, ‘ул.
Белинского, 124′, ‘http://www.karofilm.ru/cgi-bin/show.pl?option=cinema_description
Как добавить более 10 пунктов назначения на гугл карты
После этого формируем XML-файл с данными с последующем выводом маркеров на карту Google Maps.
В начале, мы должны получить XML-файл с параметрами маркеров из базы данных MySQL.
Для соединения с базой данных используем файл phpsqlinfo_dbinfo.php из заметки Google Maps – добавление меток на карту пользователями
Для этого я использую самый простой способ – применение оператора echo.
Привожу код файла:
После того как Вы получили XML-файл с данными необходимо создать карту , используя JavaScript и подгрузить его на нее.
Для того, чтобы загрузить XML-файл на страницу, необходимо использовать API-функцию GDownloadURL. GDownloadURL является как бы оболочкой для метода XMLHttpRequest, который используется для отправки запросов в XML-форме. Первым параметром функции GDownloadURL является путь к XML-файлу. Второй же параметр – это функция, которая будет выполняться при получении ответа от XML.
Примечание: очень важно понять, что GDownloadURL работает асинхронно – функция, являющаяся вторым параметром GDownloadURL, не будет срабатывать, как только Вы применили этот метод. Чем объемней Ваш XML-файл, тем больше потребуется времени для вызова этой функции-параметра. Не следует помещать никакого кода, отвечающего за размещение маркеров на карте, после метода GDownloadURL – его нужно помещать в функцию-параметр.
Функция-параметр необходима для того, чтобы отыскать все элементы “markers” в XML. Для каждого маркера мы восстанавливаем значения названия, адреса, изображения, ссылки, типа и координат, а затем мы передаем эти значения функции creatMarker, которая помещает маркеры на карту.
После этого мы создаем маркеры и информационные окна.
Вы должны поместить весь код, который необходим для создания маркеров в функцию createMarker. Так как массив customIcons был определен глобально, то мы без помех можем передавать его элементы конструктору класса GMarker. Затем нужно написать HTML-код, который будет отображаться в инфо-окне.
function createMarker(point, name, address, ssilka, images, type) < var marker = new GMarker(point, customIcons[type]); var html =» + name +’
‘ + address+’
На сайт’; GEvent.addListener(marker, ‘click’, function() < marker.openInfoWindowHtml(html); >); return marker; >
function createMarker(point, name, address, ssilka, images, type) < var marker = new GMarker(point, customIcons[type]); var html =» + name +’
‘ + address+’
На сайт’; GEvent.addListener(marker, ‘click’, function() < marker.openInfoWindowHtml(html); >); return marker; >
Полный код для вывода карты:
Загружаем нашу карту в браузере и наблюдаем
Щелкаем по одному из маркеров
Посмотреть пример в действии можно здесь
Раздел: Google Maps Метки: API Google Maps, MySQL, PHP, изображения, метки, ссылки
Организация вывода данных на карту Google Maps, используя PHP и MySQL – продолжение : 3 комментария
- Slava02.04.2010 Спасибо! Я не думал что можно выводить так на карту
Источник: webmap-blog.ru
backpacker_info
Недавно, в процессе создания карты забега по Исландии, внезапно обнаружилось, что наложить свой трек на гуглокарту — нетривиальная задача. В этом посте я расскажу как это делается:
Здесь изображен трек, записанный в течение 10-го дня в Исландии, во время пешеходного забега по окрестностям озера Миватн.
Для начала, нам необходим Garmin или же файл трека в формате .gpx, снятый с устройства (не обязательно с Garmin’a). Иначе описываемый рецепт не сработает.
1. Идем сюда и качаем замечательную программку Garmin BaseCamp. Программа распространяется совершенно бесплатно, для владельцев Garmin’ов — абсолютно необходимая вещь, да и вообще полезная штука.
2. Запукаем программу. Выглядеть оно будет примерно так:
3. Если имеется подключенный к компьютеру Гармин — нажмите на кнопочу слева вверху «Получить с устройства».
Если же в наличии только файл .gpx — нужно перетащить его мышкой в папочку «Моя коллекция».
3. Создаем в «Моей коллекции» новую папку и перетаскиваем туда интересующие нас треки и маршрутные точки. Должно получиться нечто подобное:
4. Выделяем элементы трека (у меня он правда здесь один, так что я пропускаю этот этап), правым щелчком вызываем контекстное меню и выбираем Дополнительно -> Соединить выбранные треки.
Теперь по получившемуся единому треку щелкаем правой клавишей мыши и выбираем «Создать маршрут из выбранного трека»
В диалоговом окне убираем галочку «Автоматически выбирать количество точек» и вводим число 900 — это то, что уверенно помещается на один лист Гуглокарты.
5. Теперь можно смело удалять треки из текущей коллекции. (Правая клавиша — > Удалить). Они больше не понядобятся.
6. Далее необходимо экспортировать имеющиеся данные. Делаем как на картинке:
Оно само предложит использовать формат .gpx, с этим надо согласиться и сохранить файлик в место, где его легко найти.
7. Экспортированный файл необходимо отконвертировать в формат .kml, так как Гугл формат .gpx не понимать.
Сделать это можно с помощью онлайн-сервиса gpx2kml.com. Проверено — работает отлично.
8. Итак, у нас в руках заветный файлик с расширением .kml.
Осталось уже не так уж и много дел. Логинимся под своей учетной записью в Гугл (нет учетки? — давно пора сделать, делов на 5 минут).
Переходим в раздел Гуглокарт. Жмем сначала «My places / Мои места». Потом «Create map / Создать карту».
Вводим имя карты, комментирий. Я рекомендую отказаться от опции «Public / Публичное». В этом случае карта буде видна только там, где будет в явном виде проставлена ссылка (например, в ЖЖ).
9. Жмем на «Import / Импорт» и отдаем на съедение наш многострадальный файлик .kml.
Внезапно! На карте появляется наш трек!
Советую удалить мусор в описании карты, который туда понасыпал онлайн-конвертер. Жмем на «Save / Сохранить».
Сама по себе — карта готова.
10. Выбираем вид и масштаб карты, такой, каким мы хотим видеть карту в блоге и потом забираем ссылку на нее.
11. Для вставки карты в ЖЖ нужно перейти в режим редактирования записи HTML. Код вставки следующий:
Ссылка на карту, понятно, должна быть своя.
Победа чистого разума!
Источник: backpacker-info.livejournal.com