Аналитика
http://www.geosystema.net/forum/

Все про скрипти
http://www.geosystema.net/forum/viewtopic.php?f=1&t=2809
Страница 49 из 83

Автор:  fendak [ 29 май 2016 16:15 ]
Заголовок сообщения:  Re: Все про скрипти

он воно як. Дякую!

Автор:  Пупкин [ 07 июн 2016 16:21 ]
Заголовок сообщения:  Re: Все про скрипти

Доброго здоров'я всім.

Товариство, допоможіть будь-ласка вирішити наступну проблему. Маю масив чисел, для прикладу від 1 до 18. Потрібно перезаписати їх скриптом у вигляді "00001,00002,....00017,00018" (вже не integer а string). Тобто зробити так звану маску вводу (аналогія з ексел).

Дякую.

Автор:  Dmitry_Zolotar [ 07 июн 2016 18:58 ]
Заголовок сообщения:  Re: Все про скрипти

$Mask=000000
$ML=@Calc Length($Mask)
$I=0
%Loop
$I=$I+1
$SI=$Mask$I
$L=@Calc Length($SI)
$SI=@Calc Copy("$SI",$L-$ML+1,$ML)
$SI=@DequoteText $SI
@Dialog.Message $SI
@if $I<12 then @Goto %Loop

Автор:  Пупкин [ 09 июн 2016 07:02 ]
Заголовок сообщения:  Re: Все про скрипти

Всім міцного здоров'я!

Пане Дмитро, величезне людське дякую Вам. Намагався знайти готове рішення, на кшталт @InputMask. Ліньки було думати самому. Так ви ж присоромите (зважаючи на простоту скрипту) і заставите таки подумати. В черговий раз.

Із вдячністю та повагою.

Автор:  shyrko [ 09 июн 2016 14:12 ]
Заголовок сообщения:  Re: Все про скрипти

Підкажіть як в скрипті витягнути шось із setup.ini

Автор:  Пупкин [ 09 июн 2016 15:06 ]
Заголовок сообщения:  Re: Все про скрипти

Привіт Саня!

Точно так як і з текстовими файлами, через @text[N].Load.

Для тестування, створи у корені диску файл 1.ini, і напиши туди щось.

ButtonCode:

@text[1].load D:\1.ini
$2=@text[1].Text
@Dialog.Message $2

Дякую.

Автор:  Vaho [ 15 июн 2016 18:21 ]
Заголовок сообщения:  Re: Все про скрипти

Здравствуйте! Подскажите пожалуйста, как можно изменить длину лини помеченного объекта на определенную величину через скрипт:
1. Имеется отрезок длиной 200 м.
2. Имеется величина $N на которую нужно увеличить длину отрезка.
И еще одно, как додавать величины в координаты (извлекаю координату $X (200,00) делаю следующее $X2=$X+150. по идее должно быть $X2=350, а у меня $X2=200+150 - тупо строка и с линией то же самое) я понимаю что проблема в типах данных, но никак не могу их преобразовать и потом использовать.

Автор:  voha [ 15 июн 2016 18:45 ]
Заголовок сообщения:  Re: Все про скрипти

Vaho писал(а):
... изменить длину лини помеченного объекта на определенную величину через скрипт...
@Map.Selected.Prolong Length - "Продлевает помеченный объект (линию) с обеих концов на заданную длину". Якщо питання по довжині окремої лінії об'єкта - пробуйте @Map.Object[N].LineLength[N]
Vaho писал(а):
...я понимаю что проблема в типах данных, но никак не могу их преобразовать и потом использовать
якщо $X=200,05 тоді @Calc Numeric("$X") поверне число 200.05. Тоді $X2=$X+150.18 поверне 350.23. Але якщо системний розділювач кома (функція @DecimalSeparator поверне ",") то і координату в карту зі скрипта слід посилати з комою. Тобто: всі розрахунки в скрипті з роздільником дробової частини - крапка.

Автор:  Dmitry_Zolotar [ 15 июн 2016 21:23 ]
Заголовок сообщения:  Re: Все про скрипти

Vaho писал(а):
И еще одно, как додавать величины в координаты (извлекаю координату $X (200,00) делаю следующее $X2=$X+150. по идее должно быть $X2=350, а у меня $X2=200+150 - тупо строка и с линией то же самое) я понимаю что проблема в типах данных, но никак не могу их преобразовать и потом использовать.

см. Digitals\Library\MovePoint.dsf

Автор:  Vaho [ 16 июн 2016 09:44 ]
Заголовок сообщения:  Re: Все про скрипти

Всем, большое спасибо, все работает))

Автор:  Vaho [ 23 июл 2016 11:23 ]
Заголовок сообщения:  Re: Все про скрипти

Подскажите пожалуйста! Как в скрипте прописать элементарную функцию на передвижение рамки карты? Есть рамка, есть величина смещения по игрику (118.5), а вот сместить никак не могу.

Автор:  Dmitry_Zolotar [ 24 июл 2016 01:46 ]
Заголовок сообщения:  Re: Все про скрипти

@Map.SetProperties Scale Name|FrameX[1] FrameY[1]|...
Эта функция устанавливает координаты рамки

Автор:  Vaho [ 24 июл 2016 08:17 ]
Заголовок сообщения:  Re: Все про скрипти

Ахаха, а я знаю об этой функции, но работать с ней, просто ужас.
1. Для того чтобы изменить координаты рамки, их нужно считать.
2. Считать можно функцией GetProp....., но считывает таблицу с данными которую на строки разложить ну никак не получается (1-я строка: масштаб и координата Х первой точки рамки соответственно 2-я строка У 1-й точки и Х второй точки), свойство рамки (-P[22]) которое считывает функция, вообще не приложу ума что это.
3. Даже если считать каким-то образом координаты, их нужно обработать, а обработать их можно только если перевести тип данных, а перевести тип данных функцией @Calc Numeric или просто @Calc не выходит.
4. Если каким-то образом выложенные пункты осилить, то все это безобразие нужно сложить в одну кучу и постараться запихнуть через функцию @SetProp.... обратно туда откуда вытягивали.

Почему не сделать функцию которая считывает ЦЕНТР рамки и функцию которая записывает ЦЕНТР рамки, ну или ничего выдумывать не надо, есть отличная функция @Map.Object[N].Move X Y [Z], но она работает с номером объекта, а рамка имеет номер "0" вот и не работает никакая функция с рамкой, дайте рамке номер 1 по умолчанию и все вопросы по поводу рамки снимаются.

Автор:  shyrko [ 25 июл 2016 08:58 ]
Заголовок сообщения:  Re: Все про скрипти

На рахунок функції @Map.GetPublicMapQuarterInfo.
Результат:
КОАТУУ=1823181800
Зона=01
Квартал=001
Як із цього результату витягнути "1823181800"

Автор:  shyrko [ 25 июл 2016 10:27 ]
Заголовок сообщения:  Re: Все про скрипти

Вже не потрібно, сам розібрався

Страница 49 из 83 Часовой пояс: UTC + 2 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/