Аналитика http://www.geosystema.net/forum/ |
|
Запрос на функцию http://www.geosystema.net/forum/viewtopic.php?f=1&t=49 |
Страница 45 из 92 |
Автор: | shyrko [ 24 дек 2012 11:18 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Допоможіть будь-ласка організувати скрипт який працює з великою кількістю відкритих карт, тобто попорядку виконує певні операції від першої до останньої карти, а потім закриває всі карти і зберігає. В скриптах не дуже розбираюсь, але дещо написав. Підкажіть що неправильно $N=@MapCount @If $N=0 @Break нет открытых карт ;вибираємо карту з номeром 1 $I=1 %Start САМ СКРИПТ @Map.DeselectAll @Map.SaveToFile @CloseMap[$I] %Skip $I=$I+1 ;переход к следующей карте @if $I<=$N @Goto %Start |
Автор: | Bondarets Alexander [ 24 дек 2012 11:51 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Код: $N=@MapCount @If $N=0 @Break нет открытых карт ;вибираємо карту з номeром 1 $I=$N %Start ; обработка здесь, пока просто показываем значение счетчика @Dialog.Message $I @Map.DeselectAll @Map.SaveToFile @CloseMap $I %Skip $I=$I-1 ;переход к следующей карте @if $I>0 @Goto %Start Вы закрываете карты по одной, поэтому @MapCount с каждым закрытием уменьшается на 1. В итоге, если было открыто больше одной карты, на $N/2 + 1 итерации возникнет ошибка. В случаях когда число обрабатываемых элементов изменяется используйте цикл с уменьшением счетчика от $N до 1. @CloseMap [$I] - не используйте квадратные скобки, они лишь указывают, что параметр функции является необязательным, то есть можно его не указывать. Правильными будут варианты: @CloseMap $I @CloseMap 4 @CloseMap |
Автор: | shyrko [ 24 дек 2012 12:35 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Дякую все працює!!!!! Ще одне питання Функція @Map.Selected.LoadParameters Реквізити. Чи можна із діалогового вікна вибрати зі списку назву Csv-шаблона призначити її якійсь перемінній наприклад $A, і тоді написати @Map.Selected.LoadParameters $A? Наперед дякую! |
Автор: | Bondarets Alexander [ 24 дек 2012 15:22 ] |
Заголовок сообщения: | Re: Запрос на функцию |
shyrko писал(а): Функція @Map.Selected.LoadParameters Реквізити. Чи можна із діалогового вікна вибрати зі списку назву Csv-шаблона призначити її якійсь перемінній наприклад $A, і тоді написати @Map.Selected.LoadParameters $A? Если вам нужно выбирать из списка .csv шаблонов, тогда не нужен скрипт. Просто выбирайте нужный шаблон из выпадающего меню на закладке Инфо, кнопка [...]. Если надо заполнять параметры объектов из нескольких шаблонов, для ускорения вы можете создать столько кнопок, сколько имеется шаблонов и в каждой использовать команду @Map.Selected.LoadParameters Шаблон_Заполнения.csv |
Автор: | Alexander [ 25 дек 2012 08:41 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Потому какая тишина в эфире, я понял, что добавить на кнопку выбор нужного блока невозможно! |
Автор: | BAM [ 25 дек 2012 09:14 ] |
Заголовок сообщения: | Re: Запрос на функцию |
КОГДА ЖЕ появится возможность ,скриптом, включать и отключать пользовательские панели инструментов или создавать выпадающие кнопки. Не ужели ни у кого нет в этом необходимости? |
Автор: | paul [ 25 дек 2012 16:21 ] |
Заголовок сообщения: | Re: Запрос на функцию |
+1 |
Автор: | dok79 [ 25 дек 2012 16:42 ] |
Заголовок сообщения: | Re: Запрос на функцию |
BAM писал(а): КОГДА ЖЕ появится возможность ,скриптом, включать и отключать пользовательские панели инструментов или создавать выпадающие кнопки. Не ужели ни у кого нет в этом необходимости? поддерживаю +1 |
Автор: | Guevara [ 25 дек 2012 16:45 ] |
Заголовок сообщения: | Re: Запрос на функцию |
и когда появится извлечь в XML? |
Автор: | Bondarets Alexander [ 25 дек 2012 17:27 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Alexander писал(а): Потому какая тишина в эфире, я понял, что добавить на кнопку выбор нужного блока невозможно! Добавлена функция @LoadCollectionBlock FileName, где FileName - имя DMF файла, содержащего блок. Использовать в режиме сбора. |
Автор: | Alexander [ 25 дек 2012 20:13 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Огромное Вам человеческое СПАСИБО! От скольких лишних телодвижений теперь избавился! |
Автор: | shyrko [ 04 янв 2013 10:59 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Запитаня про функцію @Map.Layers.SetState Number State(0/1/2/3). Не можу зрозуміти як написати так, щоб змінити статус шару ID0 з видимий на правка. |
Автор: | voha [ 04 янв 2013 11:33 ] |
Заголовок сообщения: | Re: Запрос на функцию |
shyrko писал(а): ...щоб змінити статус шару ID0 з видимий на правка. @Map.Layers.SetState ID0 2
|
Автор: | voha [ 07 янв 2013 10:05 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Є полігон - квартал, що містить внутрішні полігони та "купу" лінійних і точкових об'єктів. Задача - при позначеному полігоні квартала вибрати тільки полігони усередині позначеного. Вирішення: $NumObg=@Map.SelectedObject Вибрати | Усередині позначеного @Map.DeselectObject $NumObg ... На місці ... має бути функція @Map.SelectByLayersStyleSelected List, яка серед позначеного вибрала б об'єкти в шарі стилю тільки полігони. Взагалі, в групі функцій Map.Select, хотілося б бачити @Map.SelectByLayersStyle List. Меню Правка>Вибрати містить достатню кількість пунктів вибірки, але опції "серед позначених" немає. Порадьте, будь-ласка, як вирішити таку задачу |
Автор: | voha [ 12 янв 2013 10:45 ] |
Заголовок сообщения: | Re: Запрос на функцию |
Sergey Oleynik писал(а): В Service Layer никакие объекты кроме рамки карты и опорных точек находится не могут. ... Підкажіть, будь-ласка, як можна змінити статус службового шару Адже команда @Map.Layers.SetState -3 0 не працює.В скрипті треба дати можливість користувачу вибрати фрагмент карти для збереження/друку. Позначивши рамку карти, скрипт очікував би, поки користувач розмістить рамку карти, схопивши за центр рамки. Код: @Map.Layers.SetState -3 0
@Map.SelectLayer -3 @Dialog.WaitBox Виберіть фрагмент обмежений рамкою карти |
Страница 45 из 92 | Часовой пояс: UTC + 2 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |