на главную страницу программы "Водяной"

Инструменты пользователя

Инструменты сайта


за_рубежом

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
за_рубежом [2019/05/11 09:45]
timofeev
за_рубежом [2019/05/26 07:04]
timofeev
Строка 1: Строка 1:
-Для городов за пределами России можно загрузить список улиц из карт OpenStreetMap. Этот подход хорош темчто для геокодинга используется sputnik.ru, основанный на OSM.+Для городов за пределами России можно загрузить список улиц из карт OpenStreetMap ​то лучший вариант, т.к. для геокодинга используются ​карты ​sputnik.ru, основанные на OSM).
  
 1) Загружаем нужную страну с сайта geofabrik.de:​ [[http://​download.geofabrik.de|http://​download.geofabrik.de]]\\ 1) Загружаем нужную страну с сайта geofabrik.de:​ [[http://​download.geofabrik.de|http://​download.geofabrik.de]]\\
Строка 5: Строка 5:
  
 2) создаем bat-файл следующего содержания:​ 2) создаем bat-файл следующего содержания:​
 +
 ''​osmconvert uzbekistan-latest.osm.pbf>​strana.osm\\ ''​osmconvert uzbekistan-latest.osm.pbf>​strana.osm\\
 osmfilter strana.osm --keep-nodes="​highway=* and addr:​city=Ташкент"​ --keep-tags="​all name:​ru="​ --ignore-dependencies -o=str.osm\\ osmfilter strana.osm --keep-nodes="​highway=* and addr:​city=Ташкент"​ --keep-tags="​all name:​ru="​ --ignore-dependencies -o=str.osm\\
-osmconvert str.osm -o=ul.csv --csv-headline --csv-separator=;​ --csv="​name:​ru"​ ''​+osmconvert str.osm -o=ulicy.csv --csv-headline --csv-separator=;​ --csv="​name:​ru"​ ''​
  
-В приведенном примере будут выгружены названия улиц Ташкента на русском языке. Если вы хотите загрузить названия на местном языке, удалите все строки":​ru"​ в приведенном примере. \\ +В приведенном примере будут выгружены названия улиц Ташкента на русском языке. ​\\ 
-"​Ташкент",​ соответственно,​ тоже надо изменить на требуемый город.+"​Ташкент"​ надо изменить на требуемый город, uzbekistan-latest.osm.pbf на имя скачанного в первом пункте файла.\\ 
 +Если вы хотите загрузить названия ​не на русском,​ а на местном языке, удалите все строки":​ru"​ в приведенном примере. \\
  
-3) полученный файл ​ul.csv загружаем ​в Водяной, ​выбрав ​Справочники ​- Транспорт - Улицы, затем нажав меню "действия" ​и выбрав импорт из csv:+3) полученный файл ​ulicy.csv открываем ​любым текстовым редактором,​ умеющим менять кодировку (например, notepad2, notepad++ и т.п.), вставляем в начало строку с текстом "​Наименование", ​конвертируем из UTF-8 в  ANSI. 
 +Результат сохраняем В ПАПКУ c:\Program Files (x86)\ctex\voda\csv\ (если прав на это нет, можно оставить в текущей папке, ​но ее придется указать вручную при импорте, на этапе ​подтверждения пути)
  
-{{ :​импорт_csv.png|}}+4) Загружаем в Водяной,​ выбрав Справочники - Транспорт - Улицы, затем нажав меню "​действия"​ и выбрав импорт из csv:\\ 
 + 
 + 
 +{{:​импорт_csv.png|}} 
 + 
 +5) на вопрос,​ пропускать ли повторяющиеся названия,​ отвечаем "​да"​ (в файле ul.csv будет много повторов).  
 + 
 +{{:dubliul.png|}}
  
-4) на вопрос,​ пропускать ли повторяющиеся названия,​ отвечаем "​да"​ (в файле ul.csv будет много повторов). ​ 
 В результате будет заполнен справочник улиц. В результате будет заполнен справочник улиц.
  
-5) создаем нужный город в Справочники - Транспорт - Города. Его же указываем в Справочники - Структура компании - Значения по умолчанию как основной. 
  
-6) в справочнике улиц вызываем действия - служебные - групповая обработка справочника,​ нажимаем "​заполнить таблицу"​. Затем переходим на вкладку "​замена"​ и, выбрав нужный реквизит и значение,​ нажимаем "​заменить значение"​ + 
-{{ :​ustgorod.png|}}+6) создаем нужный город в Справочники - Транспорт - Города. Его же указываем в Справочники - Структура компании - Значения по умолчанию как основной. 
 + 
 +7) в справочнике улиц вызываем действия - служебные - групповая обработка справочника,​ нажимаем "​заполнить таблицу"​. Затем переходим на вкладку "​замена"​ и, выбрав нужный реквизит и значение,​ нажимаем "​заменить значение"​ 
 + 
 + 
 +{{:​ustgorod.png|}} 
 + 
 +К сожалению,​ названия улиц вводятся в OSM в произвольном формате (Первая улица или Улица Первая и проч.). Если получено много записей вида "​Улица ...", можно убрать слово "​улица"​ из начала названий,​ т.к. оно будет мешать поиску и вводу данных,​ а для геокодинга,​ за редкими исключениями (наличие одноименных площадей,​ переулков),​ не требуется.\\ 
 +Если хотите убрать "​улица"​ из начала наименований,​ откройте обработки - служебные -выполнить произвольный SQL-запрос и вставьте следующий текст  
 + 
 +''​UPDATE ULICY SET NAIMENOVANIE=TRIM(REPLACE(NAIMENOVANIE,'​улица',''​)) WHERE lower(NAIMENOVANIE) starting with '​улица ' 
 +''​ 
 + 
 +(ВАЖНО! при вставке следите,​ чтобы весь запрос попал в окно обработки!!!) 
 + 
  
  
за_рубежом.txt · Последние изменения: 2020/01/11 22:36 — timofeev