Аналитика http://www.geosystema.net/forum/ |
|
Запрос на функцию http://www.geosystema.net/forum/viewtopic.php?f=1&t=49 |
Страница 40 из 92 |
Автор: | Dmitry_Zolotar [ 20 июл 2012 11:16 ] |
Заголовок сообщения: | Re: Запрос на функцию |
ZapadloV писал(а): Подскажите как правильно прописать скрипт в создаваемой кнопке, функция которой заключается извлечь участки из ИН4 и сохранить его в указанную папку , но с одной оговоркой имя файла присвоить не по кадастровому номеру, а с параметра NM. Заранее благодарен. И прошу прощения если темой ошибся Скрипт помечает все ин4-участки(ID слоя - 20000) в единственной!!! открытой карте. Затем извлекает все участки в ин4 и сохраняет в папку D:\ExtractedIn4 с именем файла из параметра NM(ID20030) и закрывает эти файлы. P.S. Параметр NM может содержать символы(например "|"), которые недопустимо использовать в качестве имени файла. Также параметр NM может быть не уникален, что приведет к затиранию некоторых файлов с участками одного собственника. |
Автор: | voha [ 20 июл 2012 11:45 ] |
Заголовок сообщения: | Re: Запрос на функцию |
В тему функції @Dialog.Ask Text [Default=Value]. Шкода, що діалогове вікно вводу інформації не дозволяє відобразити значення параметра Text в повному обсязі . Ширина цього вікна не змінюється динамічно, залежно від довжини параметра Text. Навіть, якщо в значенні параметра застосувати знак переносу на інший рядок | - висота діалогового вікна також лишається сталою, та відображається лише перший рядок. Такий прикрий факт не дозволяє дати у вікні мінімальні пояснення що-до введення даних в ході виконання скрипта. Хочу просити розробників, за можливості, виправити цю "халепу" |
Автор: | ZapadloV [ 23 июл 2012 08:59 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Спасибо огромное за скрипт, очень помог. Появился ещё один вопрос, нужно более 5000 файлов проклацать и сделать их по часовой стрелке и назначить в слое ділянкаIN4 первой точку в участке, которая находится с лева в верху. Возможно ли облегчить нашу участь |
Автор: | Sergey Oleynik [ 23 июл 2012 15:09 ] |
Заголовок сообщения: | Re: Запрос на функцию |
voha писал(а): В тему функції @Dialog.Ask Text [Default=Value Size=Value]. Шкода, що діалогове вікно вводу інформації не дозволяє відобразити значення параметра Text в повному обсязі . Ширина цього вікна не змінюється динамічно, залежно від довжини параметра Text. Навіть, якщо в значенні параметра застосувати знак переносу на інший рядок | - висота діалогового вікна також лишається сталою, та відображається лише перший рядок. Такий прикрий факт не дозволяє дати у вікні мінімальні пояснення що-до введення даних в ході виконання скрипта. Хочу просити розробників, за можливості, виправити цю "халепу" Добавлен перенос на следующую строку символом |. Теперь также можно изменять ширину окна диалога, указав в конце строки ключевое слово Size=, например Size=250. Стандартный размер окна - 180. |
Автор: | voha [ 23 июл 2012 21:58 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Sergey Oleynik писал(а): Добавлен перенос на следующую строку символом | Чемно дякую за підтримку. |
Автор: | paul [ 24 июл 2012 06:27 ] |
Заголовок сообщения: | Re: Запрос на функцию |
ZapadloV писал(а): ...нужно более 5000 файлов проклацать и сделать их по часовой стрелке... Вставляете в карту Ваши "обменники" (Вставка|Карта), помечаете все участки (угодия, кварталы) и жмете часики на вкладке Правка. Все помеченные будут исправлены (по часовой стрелке). Затем нужно скриптом пересохранить все обменные файлы. Советую не пробовать сразу с 5000 файлов, разбейте их на порции. Насчет левой верхней точки... Вероятно поможет какой-нибудь хитрый скрипт. Но будет-ли он устойчиво работать, ведь конфигурация участков разная. |
Автор: | ZapadloV [ 24 июл 2012 20:21 ] |
Заголовок сообщения: | Re: Запрос на функцию |
На счёт по часовой стрелки придумал чуть проще через скрип, но единственно выскакивает на каждом файле окно "изменено "количество" " подскажите как с ним боротся. Пример скрипта : $Filter=*.in4 $F=@Dialog.SelectFolder Укажите папку с картами @Text.FolderList $Filter $F $C=@Text.Count @If $C=0 @Break В папке "$F" отсутствуют файлы $Filter $I=0 %Start $I=$I+1 @If $I>$C then @Break $F=@Text.Line[$I] @FileOpen $F $F=@Map.ClearFilename Пометить | Все [ Операции с объектами.По часовой стрелке ] @Map.SaveToFile $F.in4 @CloseMap @Goto %Start ; а вот на счёт начальной точки в нужном углу участка проблема, где б достать этот хитроватый скрипт. Есть только одна маленькая зацепка, отслеживал по участкам, что там где в участке максимальное значение Х . там и надо начальную точку, как это прописать в скрипте не могу придумать, подскажите. |
Автор: | Dmitry_Zolotar [ 25 июл 2012 07:49 ] |
Заголовок сообщения: | Re: Запрос на функцию |
ZapadloV писал(а): ... выскакивает на каждом файле окно "изменено "количество" " подскажите как с ним боротся. ... Пометить | Все @SendChars <CR> [ Операции с объектами.По часовой стрелке ] ... ZapadloV писал(а): а вот на счёт начальной точки в нужном углу участка проблема, где б достать этот хитроватый скрипт. Есть только одна маленькая зацепка, отслеживал по участкам, что там где в участке максимальное значение Х . там и надо начальную точку, как это прописать в скрипте не могу придумать, подскажите. максимальное значение Х - самая верхняя точка, а вот к "левому верхнему углу" ближе всего точка, у которой разница координат (X-Y) максимальна. |
Автор: | ZapadloV [ 25 июл 2012 08:03 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Спасибо Dmitry_Zolotar. Нас устраивает и верхняя точка (тоесть максимум по Х), смежники на кадастровом плане в основном будут правильно начинать своё начало |
Автор: | _Pavel_ [ 25 июл 2012 08:59 ] |
Заголовок сообщения: | Задержка выполнения команд |
Каким образом можно реализовать задержку (например на 1 сек) перед выполнением определенной команды в скрипте? |
Автор: | Dmitry_Zolotar [ 25 июл 2012 09:45 ] |
Заголовок сообщения: | Re: Запрос на функцию |
_Pavel_ писал(а): Каким образом можно реализовать задержку (например на 1 сек) перед выполнением определенной команды в скрипте? @Wait IntervalMS |
Автор: | _Pavel_ [ 25 июл 2012 11:52 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Dmitry_Zolotar писал(а): _Pavel_ писал(а): Каким образом можно реализовать задержку (например на 1 сек) перед выполнением определенной команды в скрипте? @Wait IntervalMS Спасибо |
Автор: | voha [ 25 июл 2012 15:11 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Ознайомтесь, будь-ласка, Поиск подстроки по нескольким фрагментам. Тоді скрипт: Код: $CN=@Dialog.Ask Фраза, що міститься в параметрі: Як на мене, використати підстановочні знаки * та ? в масці пошуку Вам не вдасться , а було б не погано
@Map.FindByParameters 1|SC~$CN; для кращої ідентифікації бажано набрати початкову, або кінцеву, або і ту і другу кому (бачу у Вас кома розділювач) $S=@Map.SelCount @If $S>0 @Goto %Show @If $S=0 @Break Ділянка що містить|$CN|не знайдена %Show: @Window.ShowSelected |
Автор: | voha [ 27 июл 2012 07:24 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Є скрипт, який має на меті одним кліком пера (на сенсорному моніторі), перетягнути найблищу до кліка вершину найблищого до кліка полігона Код: ;Переводим карту в режим збору, активуєм шар збору - точковий об'єкт, на місце якого має переміститись вершина полігону найблища від точкового об'єкта ($NomTochPrav) @SelectTab 1 @Map.SetCollectionLayer ID6 ;Обробка події застосована для включення режимності скрипта %Events.OnSelect $NomTochPrav=@Map.SelectedObject; Номер точкового об'єкта, на місце якого треба перемістити найблищу вершину найблищого полігона $XYZ=@Map.Object[$NomTochPrav].Point[1]; Координати точки, в яку треба перемістити найблищу вершину найблищого полігона $NumObgPrav=@Map.NearestObject 0 0 $XYZ; Номер полігона, найблищого до точкового об'єкта на місце якого треба перемістити вершину полігона Питання: найблищий до кліка полігон ми визначили, а як визначити найблищу до кліка вершину полігона Треба мати функцію, наприклад @Map.NearestPoint Range IgnoreObj X Y Z, яка б повертала координати точки полігона (чи іншого об'єкта), що є найблищою до точки з координатами X Y Z, або маркувала найблищу точку, або ... ну треба знати координати найблищої точки полігона Це би спростило правку об'єктів пером на сенсорному моніторі. |
Автор: | _Pavel_ [ 27 июл 2012 09:12 ] |
Заголовок сообщения: | Подскажите как правильно прописать скрипт заменить назван. в |
Есть несколько сотен XML Все владельцы зарегестрированы в одном населенном пункте В ХМL неправильно введен тип населенного пункта (місто Синька) а надо с. Синька Подскажите как правильно прописать скрипт |
Страница 40 из 92 | Часовой пояс: UTC + 2 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |