Аналитика

Цифровая фотограмметрия, картография и землеустройство
Текущее время: 28 мар 2024 17:43

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 1235 ]  На страницу Пред.  1 ... 69, 70, 71, 72, 73, 74, 75 ... 83  След.
Автор Сообщение
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 14 апр 2020 20:31 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Доброго дня.

Хочу поцікавитись у розробників, щодо можливості налагодження роботи скриптів у покроковому режимі. Мабуть саме вікно класу TformSD (за нього вже йшлося "Отладчик скриптов с пошаговьім вьіполнением (Сервис|Настройки|Главная|Константьі ScriptDebugger=1)") можна називати дебагером, тому перед застосуванням скриптової функції
Dmitry_Zolotar писал(а):
...@Map.Lock - закриває вміст скриптів карти від дебагера
вирішив поекспериментувати. Виконана у скрипті обробки події OnFileOpen першою командою (при відкриванні карти), ця функція забороняє редагування й перегляд тексту скриптів обробки події рівня карти та її шарів у редакторі коду скрипта. Таким чином: за неможливості відкрити карту без авто-запуску скрипта при відкриванні карти, це ідеальний спосіб захисту скриптів обробки подій не тільки від "чужих" очей, але й від себе самого (якби не ScriptDebugger=1).

Таке необхідне налагодження роботи складних скриптів, що викликають інші - функціональні скрипти, в покроковому режимі практично не можна виконати із-за відсутності в дебагері можливості встановити брейкпойнти (точки зупинки). Про це вже йшлося тут.

З дебагером не спішно: розумію, що важливішої роботи багато. Просто - нагадати.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 28 апр 2020 14:42 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 2298
Откуда: Vinnytsia
Помилки "Duplicate labels" відслідковуватимуться в новій версії лише при ScriptDebugger=1, тобто при активному вікні дебагера.

_________________
Команда разработчиков Digitals
(наш e-mail и ICQ находятся в меню Помощь|О программе)
Новичкам сюда | Новые возможности программы | Купить Digitals


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 19 май 2020 00:17 
Гуру
Гуру

Зарегистрирован:
14 окт 2010 16:40
Сообщения: 265
Доброго времени суток. А есть ли обработчик события "изменение содержания таблицы"? тобишь когда меняется содержание объекта в слое с видом "table" нужно, чтоб срабатывал скрипт.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 19 май 2020 11:05 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 2298
Откуда: Vinnytsia
Denidz писал(а):
Доброго времени суток. А есть ли обработчик события "изменение содержания таблицы"? тобишь когда меняется содержание объекта в слое с видом "table" нужно, чтоб срабатывал скрипт.

Попробуйте в новой версии событие %Events.OnChange, оно срабатывает для перемещений табличных объектов и при изменении содержимого таблицы через интерфейс.

_________________
Команда разработчиков Digitals
(наш e-mail и ICQ находятся в меню Помощь|О программе)
Новичкам сюда | Новые возможности программы | Купить Digitals


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 06 июн 2020 11:31 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Доброго дня.

Є у мене питання до розробників щодо зручності написання скриптів: чи можна зробити так, щоб у текстовому полі вікна редактора скриптів (на скріншоті, наведеному нижче, відміченому червоним кольором) відображалися перші, закоментовані рядки тексту скрипта, на назві якого знаходиться курсор списку команд?
Вложение:
DemoScrypt.jpg
DemoScrypt.jpg [ 39.34 Кб | Просмотров: 5766 ]
Функціональних скриптів у теці Library - десятки, із-за цього забуваєш: які параметри скрипт повинний приймати.
Не важко й подивитись, відкривши текст скрипта в текстовому редакторі, але ж питання в зручності.

Наперед дякую за підтримку.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 06 июн 2020 17:20 
Гуру
Гуру

Зарегистрирован:
14 окт 2010 16:40
Сообщения: 265
Цитата:
@Map.AdjustCaptions - зміщує підписи в карті таким чином, щоб уникнути накладання рамки підпису (ballon) на границю будь-якого об'єкта карти (вказане накладання існує, якщо границя об'єкта перетинає рамку підпису у двох точках - відтинає від рамки частину її площини). Таким чином, не зміщуються підписи, рамки яких накладаються одна на іншу, містять кінцеву точку лінійного об'єкта або точковий об'єкт.

Что-то эта функция у меня не работает совсем. Вроде кстати были попытки написания скрипта, который бы смещал подпись при условии если она пересекается с другими объектами.. Может кто подскажет, а то найти не могу.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 06 июн 2020 18:31 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Denidz писал(а):
@Map.AdjustCaptions - Что-то эта функция у меня не работает совсем...
А якщо так:
Код:
@Map.AdjustCaptions
@Window.Refresh
працює?
Вложение:

AdjustCaptions.wmv [ 1.91 Мб | Просмотров: 5754 ]


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 06 июн 2020 18:55 
Гуру
Гуру

Зарегистрирован:
14 окт 2010 16:40
Сообщения: 265
Я именно так и делал) Разобрался в чем дело.. Когда надпись сильно большая, то может возникнуть ситуация, когда ее просто невозможно сдвинуть, чтоб она не пересекала какой-либо объект... соответственно она остается на месте.


Вложения:
.png
.png [ 55.31 Кб | Просмотров: 5753 ]
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 11 июн 2020 13:20 
Эксперт
Эксперт

Зарегистрирован:
20 июн 2007 21:35
Сообщения: 69
Откуда: Винница
Denidz писал(а):
Я именно так и делал) Разобрался в чем дело.. Когда надпись сильно большая, то может возникнуть ситуация, когда ее просто невозможно сдвинуть, чтоб она не пересекала какой-либо объект... соответственно она остается на месте.

Осталось добиться чтоб надписи между собой не самопересекались... :lol:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 07 июл 2020 21:10 
Специалист
Специалист

Зарегистрирован:
20 ноя 2011 00:36
Сообщения: 33
Доброго всього всім!
Підкажіть, будь ласка, це правильний код, щоб визначити тип шару?:

Код:
$Object=@Map.SelectedObject
$ObjectProperties=@Map.Layers.Get $Object
$LayerType=@StringPart 2 $ObjectProperties
@Dialog.Message $LayerType


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 07 июл 2020 22:47 
Специалист
Специалист

Зарегистрирован:
20 ноя 2011 00:36
Сообщения: 33
osaaso писал(а):
Доброго всього всім!
Підкажіть, будь ласка, це правильний код, щоб визначити тип шару?:

вибачуха - сам розібрався ). Заблукав між трьома, точніше двома соснами - номер об'єкту, номер шару об'єкту
Код:
$NumberObject=@Map.SelectedObject
$NumberLayerObject=@Map.Object[$NumberObject].Layer
$ObjectLayerProperties=@Map.Layers.Get $NumberLayerObject
$LayerType=@StringPart 2 $ObjectLayerProperties
@Dialog.Message $LayerType


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 15 июл 2020 16:12 
Специалист
Специалист

Зарегистрирован:
20 ноя 2011 00:36
Сообщения: 33
Підкажіть, будь ласка, як замінити круглі дужки в текстовому рядку ( ) на такі слеші / /
пишу так:
Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 1 $Line
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 2 $Line

другий месидж некоректно відображається


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 15 июл 2020 16:28 
Гуру
Гуру
Аватара пользователя

Зарегистрирован:
22 сен 2007 16:09
Сообщения: 382
Откуда: м.Львiв
osaaso писал(а):
Підкажіть, будь ласка, як замінити круглі дужки в текстовому рядку ( ) на такі слеші / /
пишу так:
Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 1 $Line
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 2 $Line

другий месидж некоректно відображається

Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@Calc Replace(Replace("$Line","(","/"),")","/")
$Line=@DequoteText $Line
@Dialog.Message $Line

Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@ReplaceChar (/$Line
$Line=@ReplaceChar )/$Line
@Dialog.Message $Line

_________________
Більшість хороших програмістів виконують свою роботу не тому, що очікують оплати або визнання, а тому, що отримують задоволення від програмування.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 15 июл 2020 18:18 
Специалист
Специалист

Зарегистрирован:
20 ноя 2011 00:36
Сообщения: 33
Цитата:
$Line=@Calc Replace(Replace("$Line","(","/"),")","/")
не знав, що можна у такому форматі, а @ReplaceChar я пропустив (мій косяк ) ). Дуже дякую!


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Все про скрипти
СообщениеДобавлено: 15 июл 2020 18:55 
Гуру
Гуру
Аватара пользователя

Зарегистрирован:
22 сен 2007 16:09
Сообщения: 382
Откуда: м.Львiв
osaaso писал(а):
Цитата:
$Line=@Calc Replace(Replace("$Line","(","/"),")","/")
не знав, що можна у такому форматі, а @ReplaceChar я пропустив (мій косяк ) ). Дуже дякую!
Там "косяк" не у форматi запису (так можна i треба поєднувати, щоб зменшити довжину коду i менше перетворювати змiннi, типу Dequote). Ви два рази одну i ту ж дужку ( мiняли на символ / :).

_________________
Більшість хороших програмістів виконують свою роботу не тому, що очікують оплати або визнання, а тому, що отримують задоволення від програмування.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1235 ]  На страницу Пред.  1 ... 69, 70, 71, 72, 73, 74, 75 ... 83  След.

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 119


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB