Wikimapia - отобразить все подписи объектов?

Тема в разделе "Навигация и Картография", создана пользователем sunny, 19 июн 2009.

  1. как отобразить все подписи объектов видимых на экране а не только того на который навел мышкой?
     
  2. Ты представляешь, что будет, если все надписи будут показываться на карте?

    Я о такой фиче в вики незнайу
     
  3. никак
     
  4. kry

    kry

    А ведь кажется было...
    но мой ком остановился вообще при попытке перетащить карту.
     
  5. а ещё понадобилось получить все wikimapia-метки с определенного района карты, чтоб можно было закачать в GPS PNA как waypoints. для этого SAS.Планетой вытащил все Wikimapia метки. простеньким скриптом собрал их воедино:

    #!/bin/bash
    tmp1=vjtmp1.txt
    tmp2=vjtmp2.txt
    tmp3=vjtmp3.xml
    ./find ../../ -name "*.kml" >$tmp1
    ./echo >$tmp2

    while read REPLY
    do
    w2=`./grep Placemark $REPLY |./wc -l`
    if [ $w2 -ne 0 ]
    then
    ./cat $REPLY >>$tmp2
    ./echo $w2
    fi
    done<$tmp1

    ./echo '<?xml version="1.0" encoding="UTF-8"?>' >$tmp3
    ./echo '<kml xmlns="http://earth.google.com/kml/2.1">' >>$tmp3
    ./echo '<Document>' >>$tmp3
    ./grep -v "UTF" $tmp2 | ./grep -v google | ./grep -v 'href' |./grep -v 'Document' | ./grep -v '/kml'| ./grep -v 'w3' >>$tmp3
    ./echo '</Document>' >>$tmp3
    ./echo '</kml>' >>$tmp3
    exit

    и затем в excel можно открыть получившийся xml файл, повыкидывать лишнее, и сохранить в wpt, затем если уж очень надо то через gpsbabel в kml
     
  6. XYZ

    XYZ

    перепостил мануал сюда: http://sasgis.ru/forum/viewtopic.php?f=13&t=369

    у меня вопрос: можно поподробнее описать процесс?

    1 я выкачиваю сасом wikimapia гибрид, и натравливаю скрипт, так?
    2 в каком каталоге его запускать?
    3 с wpt мне всё понятно, а вот с kml я не сталкивался. где и как с ним можно работать?

    можно ответить на форуме сасгис, там это будет более профильно наверно.
     
  7. на sasgis зарегистрироваться та и не смог, ошибку выдавало.

    да, SAS.Планета выделить нужный район, выбрать закачать - слой Wikimapia.
    потом скриптом надо собрать воедино из кэша SAS в один файл .xml
    потом в Excel отобрать нужное
    и выгрузить в WPT

    задачка сама по себе несложная - итак надо закачать нужные метки wikimapia в PNA.
    метка - это ее имя, 2 десятичные координаты и можно комментарий.
    в kml метка описывается <Placemark></Placemark>, в SAS.Планете файлов kml очень много создается, но не все файлы имеют Placemark внутри.

    смысл скрипта - натий в папке на два уровня выше все файлы *.kml, если в них содержится строчка Placemark - добавить содержимое файла в единый файл.
    это можно сделать любым способом каким нравится, мне проще с помощью bash скрипта через cygwin в windows, ну или обычным bash в линукс.
    сначала ./find находит все kml и записывает их имя+путь в файл tmp1
    while...done берет этот tmp1 и все файлы которые там перечислены, если файл содержит Placemark то добавляет в tmp2

    в получившемся файле tmp2 надо повыкидывать заголовки kml Файлов и их хвосты, вот эти строки:
    <?xml version="1.0" encoding="UTF-8"?>
    <kml xmlns="http://earth.google.com/kml/2.1">
    <Document>
    </Document>
    </kml>
    что и делается с помощью длинной строки ./grep

    и потом добавить первые три строки в начало, последние две - в конец файла.

    получившийся файл надо переименовать в *.xml и открыть в excel
    вот тут уже простор для деятельности открывается, весь мусор автофильтром можно отсеять, простым фильтром выкинуть дубликаты. в результате должно получиться три столбца - name, lat, lon
    кстати для фигур прямоугольников я просто середину фигуры арифметически вычислял и координаты точки-результата использовал.

    теперь надо создать файлик формата WPT - его понимает PNA
    формат простенький:
    первые 4 строки -заголовок, далее идут значения через запятую:
    первое - номер waypoints по порядку
    второе-имя waypoints
    третье и четвертое координаты
    поле после 16777215 - комментарий, необязательно
     
    Последнее редактирование: 3 сен 2009
  8. в принципе всё. чтобы проще создать файл WPT я просто создал в excel отдельныый листок в котором все много одинаковых строк, которые содержат поля WPT файла, строчки см. в пред. сообщении , и подставил в столбцы 2-4 (имя, lat,lon, комментарий) мои данные для меток.
    потом "сохранить в формате CSV(разделитель-запятые)"
    сделать замену в получившемся файле CSV запятую на точку, точки с запяттой на запятую - это требование формата Ozi.
    выкинуть первую строку (если она была в исходном файле и содержала названия столбцов на этой странице, если не было то и не выкидывать)
    и добавить четыре строки заголовка.
    переименовать из .CSV в .WPT

    всё. файл waypoints готов, Ozi и навител без проблем его принимают.

    эта схема только кажется сложной, на деле работы на 15 мин, больше времени сортировать нужные и не нужные точки, ну тут автофильтр рулит/ схема общая и можно использоваться на файлах kmz/kml, которые SAS.планета понимать не хочет.

    если из файла WPT надо сгенерировать файл kml (SAS.планета не знает wpt) надо воспользоваться утилитой gpsbabel.
     
    Последнее редактирование: 3 сен 2009
  9. XYZ

    XYZ

    спасибо за развёрнуты ответ.

    все кмл лежат по примерно такому пути: SASPlanet\cache\Wiki\z18\77\x79332\40\y41004.kml , так вот не понятно в каком каталоге предполагается запускать скрипт. в данном случае логично запустить в z18, и не указывать всякие ../

    перепосчу твой ответ на форум сасгиса....
     
  10. не факт что kml лежат в z18, это видимо зависит от того какой уровень при скачивании ты выставлял, у меня лежали и в папках с меньшими номерами. разбираться в этом не хотелось, поэтому просто натравил скрипт на папку с кэшем, у него мозги кремниевые, пусть потрудится за меня :)
     
  11. XYZ

    XYZ

    в общем, когда надумаю клеить (на днях) я заменю на
    ./find ./ -name "*.kml" >$tmp1
    и запущу в SASPlanet\cache\Wiki\

    вроде всё должно получиться.
     
  12. XYZ

    XYZ

    К стати, скрипт работает без правки с любымии KML, а не только с викимапией.
    я запускаю его через cygwin.
     

Поделиться этой страницей