Аналитика http://www.geosystema.net/forum/ |
|
Получение адреса из Яндекс.карты (обратное геокодирование) http://www.geosystema.net/forum/viewtopic.php?f=1&t=19634 |
Страница 1 из 1 |
Автор: | fendak [ 29 апр 2016 11:39 ] | ||
Заголовок сообщения: | Получение адреса из Яндекс.карты (обратное геокодирование) | ||
Цікава функція, але видає незрозумілу помилку
|
Автор: | Dmitry_Zolotar [ 29 апр 2016 12:34 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
До повідомлення додав бібліотеки, їх в корінь Digitals потрібно вкинути. |
Автор: | fendak [ 29 апр 2016 18:28 ] | ||
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) | ||
Все одно щось не працює дана функція. Весь час повертає 0. Я вже пробував по різних населених пунктах в різних регіонах України. По кожному задавав датуми у властивостях карти. Все одно результат 0. От, для прикладу, по Київській області прикріпив файл, по якому пробував формувати. І, за одно, інше питання. Чи планується в майбутньому аналогічна функція по інших картах, крім Яндекса? Зокрема, цікавить OpenStreetMap та Google,
|
Автор: | Dmitry_Zolotar [ 04 май 2016 15:30 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
Скоріш за все скрипт "роздільникозалежний". Спробуйте цей. Має бути файл Digitals\Library\ReplaceComma.dsf $Datum=@Map.Datum @if $Datum= then @Break Задайте датум карты $SelL=@Map.Selected.List @Text[1].Text $SelL $LC=@Text[1].Count @if $LC=0 then @Break Нет помеченных объектов $I=0 @Progress.Start $LC Загрузка %Loop $I=$I+1 $MON=@Text[1].Line[$I] $XYZ=@Map.Object[$MON].Centroid $X=@StringPart 1 $XYZ $Y=@StringPart 2 $XYZ $X=%Library.ReplaceComma $X $Y=%Library.ReplaceComma $Y $S=@Map.GetYandexMapInfo $X $Y $S=@UTF8ToString $S @if $S=0 then @Goto %Next @Text[2].Text $S $LC2=@Text[2].Count $J=1 %Loop2 $J=$J+1 $S=@Text[2].Line[$J] $ParamName=@StringPart 1=$S $ParamVal=@StringPart 2=$S $LID=@Map.Object[$MON].Layer $P=@Map.Parameters.FindByName $ParamName @if $P<>0 then @Goto %Continue $P=@Map.Parameters.Add 757500$J 5 $ParamName %Continue $VP=@Map.Layers.GetValidParameters $LID @Map.Layers.SetValidParameters $LID $VP $P @Map.Object[$MON].Parameter[$P] $ParamVal @if $J<$LC2 then @goto %Loop2 %Next $Canceled=@Progress.Canceled @if $Canceled=1 then @Break @Progress.StepBy @if $I<$LC then @Goto %Loop @Progress.Stop @Window.Refresh |
Автор: | fendak [ 05 май 2016 11:59 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
і все одно не працює, повертає завжди значення 0 і параметри не створюються Відгукніться, в когось ще дана функція не працює/працює? Хоча, я пробував вже на різних комп'ютерах |
Автор: | voha [ 05 май 2016 13:26 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
fendak писал(а): ...Відгукніться, в когось ще дана функція не працює/працює? На Windows 10, лише коли libeay32.dll і libssl32.dll закинув у System32 отримав повідомлення Ordinal Not Found:Вложение: Message.jpg [ 9.22 Кб | Просмотров: 12757 ] P.s. Бібліотеку ssleay32.dll скачав - помилка Ordinal Not Found пропала, але функція повертає 0. |
Автор: | Dmitry_Zolotar [ 05 май 2016 14:22 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
fendak писал(а): і все одно не працює, повертає завжди значення 0 і параметри не створюються Відгукніться, в когось ще дана функція не працює/працює? Хоча, я пробував вже на різних комп'ютерах Додайте в скрипт: першу строку @OpenLog, останню строку @CloseLog c:\log.txt Запустіть скрипт. Надішліть c:\log.txt на help@vingeo.com або викладіть цей файл тут. |
Автор: | voha [ 05 май 2016 14:33 ] | ||
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) | ||
Dmitry_Zolotar писал(а): ...Надішліть c:\log.txt на help@vingeo.com або викладіть цей файл тут. Щоправда розділювач дробової частини приводиться до системного, а не до крапки.Але ж скрипт: $S=@MAP.GETYANDEXMAPINFO 5581295.854 3371425.560 @Break $S також видає 0. P.s. Після зміни системного розділювача в налаштуванні системи з коми на крапку - запрацювали і скрипт, і вказана команда. Правда заповнюються лише параметри province і country, хоча об'єкт з центром на будівлі з номером в карті Yandex. Функція повертає: 7 province=Київ province=Київська область country=Україна
|
Автор: | Dmitry_Zolotar [ 05 май 2016 16:30 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
voha писал(а): . Функція повертає: 7 province=Київ province=Київська область country=Україна Так, щось в Києві адреса не така як потрібно, немає SubAdministrativeArea. Як ви там без нього живете? |
Автор: | voha [ 05 май 2016 16:35 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
Але, виходить причина в системному десятковому розділювачі? |
Автор: | klaid [ 05 май 2016 17:57 ] | ||
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) | ||
Вложение: .jpg [ 15.49 Кб | Просмотров: 12743 ]
|
Автор: | fendak [ 05 май 2016 21:21 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
дійсно, змінив системний розділювач з коми на крапку і запрацювало. Видно, крапка потрібна десь ще, окрім власне скрипту, для тих же бібліотек, можливо? П.С. Прикольна функція , тепер навіть вулицю і номер будинку не треба вводити, все автоматично |
Автор: | voha [ 05 май 2016 22:17 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
Не думаю, що розробники залишать обов'язковою умовою роботи функції: системний розділювач - крапка. Ймовірно справа у перерахунку координат у тілі скриптової функції (обов'язково крапка), але далі Yandex оперує з системним розділювачем. Скоріш за все бібліотекам всеодно: крапка чи кома, а якщо не всеодно - то використовують вони системний розділювач. |
Автор: | Dmitry_Zolotar [ 06 май 2016 11:05 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
В новій версії позбавляємось від "роздільникозалежності". Також корректно відпрацьовується м. Київ. Можливі проблеми зі з'єднанням через проксі поки не відтворені, тому і не виправлені. Через пряме з'єднання має працювати. |
Автор: | klaid [ 06 май 2016 15:38 ] |
Заголовок сообщения: | Re: Получение адреса из Яндекс.карты (обратное геокодирование) |
Жалко що змінили назви вулиць, а в яндексі старі назви((( |
Страница 1 из 1 | Часовой пояс: UTC + 2 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |