Аналитика

Цифровая фотограмметрия, картография и землеустройство
Текущее время: 19 ноя 2017 17:44

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




Начать новую тему Ответить на тему  [ Сообщений: 161 ]  На страницу Пред.  1 ... 7, 8, 9, 10, 11  След.
Автор Сообщение
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 08 апр 2017 23:00 
Специалист
Специалист

Зарегистрирован:
10 сен 2013 07:08
Сообщения: 19
Доброго дня!
Хочу формувати не стандартні xml-файли з не шаблонних шарів. @Map.In4ToXML вимагає in4:Ділянка і т.д.
Підскажіть будь-ласка як витягнути з карти <PointInfo> та <Polyline> ?
Все інше якось по тегам сформую без проблем.
Дякую!


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 10 апр 2017 09:03 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 1863
Откуда: Vinnitsa
Дослідіть файл Digitals\Templates\XMLNormal.dmf. В ньому є "кореневий" шар ID70000 "XML-реквізити обм. файла". Єдиний об'єкт цього шару - корінь XML-файлу. В Параметрах XML цього шару вказано лише XMLGeometryTag=Externals, а доступні цьому шару параметри визначають ієрархію тегів цього об'єкта.
Не розберетесь що до чого там, зкиньте схему Вашого файла, або хоча б приклад xml-файлу - спробую налаштувати XMLNormal.dmf при умові, що геометрія зберігається так само.


Вложения:
FileDate.png
FileDate.png [ 43.46 Кб | Просмотров: 4592 ]

_________________
Команда разработчиков Digitals
(наш e-mail и ICQ находятся в меню Помощь|О программе)
Новичкам сюда | Новые возможности программы | Купить Digitals
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 10 апр 2017 10:44 
Специалист
Специалист

Зарегистрирован:
10 сен 2013 07:08
Сообщения: 19
Дуже велике дякую!
Зі структурою розібрався вроді.
Але залишається питання: як передаються параметри з, наприклад, in4_ділянка?
Якщо у мене шари, наприклад, 1,2,3,4.
@Map.In4ToXML
Чи потрібно створювати карту тільки на основі шаблону XmlNormal?


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 10 апр 2017 10:56 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 1863
Откуда: Vinnitsa
Має бути в карті шар ID70000 XML_реквізит обм.файлу, щоб карта зберігалась в XML. Цей шар краше зкопіювати з усіма параметрами, але змінити XML-параметри для використання шарів з Ін4.

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 21 май 2017 20:05 
Специалист
Специалист

Зарегистрирован:
10 янв 2010 12:05
Сообщения: 32
Откуда: Винницкая обл.
Вложение:
.jpg
.jpg [ 12.96 Кб | Просмотров: 4012 ]
Доброго дня. Підкажіть, в "Скрипт для перерахунку растрів в іншу систему координат" потрібно якось доробити ? Бо видає помилку


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 21 май 2017 20:13 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 1863
Откуда: Vinnitsa
Sergey45 писал(а):
Вложение:
.jpg
Доброго дня. Підкажіть, в "Скрипт для перерахунку растрів в іншу систему координат" потрібно якось доробити ? Бо видає помилку

Потрібно один раз перерахувати(меню Реєстри-Перерахувати з УСК-2000 в МСК-05) якусь карту в MSK-05, щоб такий датум з'явився в Datums.ini

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 21 май 2017 20:35 
Специалист
Специалист

Зарегистрирован:
10 янв 2010 12:05
Сообщения: 32
Откуда: Винницкая обл.
Дякую. Вийшло.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 31 май 2017 20:53 
Эксперт
Эксперт

Зарегистрирован:
05 окт 2015 23:49
Сообщения: 61
BAM писал(а):
Построение по дир. углам или румбам

1. Нужно пометить первую точку и запустить скрипт
2. Выбераем дир. углы или румбы
3. Для румбов вводим четверть (1 2 3 4) и угол через "," (град,мин,сек)
4. Вводим дистанцию
На экране появится точка. Она атоматом становится первой. Повторяем действие 3,4 скольк нужно.

$V=@Dialog.Select Выбери|Дир. углы|Румб
%next
$n=@Map.NextSelected
@If $n=0 then @Break Пометь первую точку
$nn=@Map.Object[$n].Parameter[4]
$x=@Map.Object[$n].Parameter[-4]
$x=@Calc Replace("$x",",",".")
$x=@DequoteText $x
$x=@DequoteText $x
$y=@Map.Object[$n].Parameter[-3]
$y=@Calc Replace("$y",",",".")
$y=@DequoteText $y
$y=@DequoteText $y
@Map.DeselectAll
@If $V=Румб then @Goto %end1
$a=@Dialog.Ask Угол 90,30,30
@If $a= then @Goto %end
$d=@Dialog.Ask дистанция
@If $d= then @Goto %end
$a=@Calc Replace("$a",".",",")
$a=@DequoteText $a
$a=@DequoteText $a
$d=@Calc Replace("$d",".",",")
$d=@DequoteText $d
$d=@DequoteText $d
$a1=@StringPart 1,$a
$a2=@StringPart 2,$a
@If $a2= then $a2=0
$a3=@StringPart 3,$a
@If $a3= then $a3=0
$a=(($a3/60+$a2)/60+$a1)*3.1415926535897932384626433832795028841971/180
%next1
$ac=@Calc Cos($a)
;@Break $ac
$dx=$x+$ac*$d
$dx=@Calc Replace("$dx",".",",")
$dx=@DequoteText $dx
$dx=@DequoteText $dx
$as=@Calc sin($a)
$dy=$y+$as*$d
$dy=@Calc Replace("$dy",".",",")
$dy=@DequoteText $dy
$dy=@DequoteText $dy
$nn=$nn+1
$N=@Map.AddObject 0|1|ID11340000|1|0 $dx $dy 0|1|ID11340000|1|4 $nn
;
@Map.SelectByParameters 1|4>=$nn
@Map.Selected.CreateCaptions ID93 0 0 1 0 0,1 1
Вид | Показать все
@Map.SelectLayer $nn
@Goto %next
@Goto %end
%end1
$a=@Dialog.Ask Четверть (3,90,30,30)
$a=@Calc Replace("$a",".",",")
$a=@DequoteText $a
$a=@DequoteText $a
$a1=@StringPart 1,$a
$a2=@StringPart 2,$a
$a3=@StringPart 3,$a
@If $a3= then $a3=0
$a4=@StringPart 4,$a
@If $a4= then $a4=0
$a=($a4/60+$a3)/60+$a2
@If $a1=2 then $a=180-$a
@If $a1=3 then $a=180+$a
@If $a1=4 then $a=360-$a
$a=$a*3.1415926535897932384626433832795028841971/180
$d=@Dialog.Ask дистанция
@If $d= then @Goto %end
$d=@Calc Replace("$d",".",",")
$d=@DequoteText $d
$d=@DequoteText $d
@Goto %next1
%end


:!: :!: :!: Допоможіть знайти помилку, можливо у мене - при введенні довжини любого не цілого числа (наприклад: 22,33) видає помилку
Вложение:
.jpg
.jpg [ 23.56 Кб | Просмотров: 3857 ]


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 31 май 2017 21:45 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 1863
Откуда: Vinnitsa
Змініть системний розділник з коми на точку.

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 31 май 2017 22:31 
Эксперт
Эксперт

Зарегистрирован:
05 окт 2015 23:49
Сообщения: 61
Dmitry_Zolotar писал(а):
Змініть системний розділник з коми на точку.

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


Последний раз редактировалось Ryvol 31 май 2017 23:40, всего редактировалось 4 раз(а).

Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 31 май 2017 23:10 
Гуру
Гуру

Зарегистрирован:
18 апр 2007 11:55
Сообщения: 1863
Откуда: Vinnitsa
Спробуйте натиснути Ctrl-D під час збору, можливо це те що Вам потрібно. Ще є варіанти.

Чи Вам потрібні саме румби? І саме для об'єктів шару ID11340000? Зі створенням підписів параметра ID93? І лише для тих об'єктів, значення параметра 4 якого більше або дорівнюю значенню аналогічного параметра об'єкта, який був помічений перед запуском скрипта?

Даний скрипт - хороший приклад автоматизації, але він вирішує досить специфічне завдання на нестандартних шаблонах.

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 31 май 2017 23:19 
Эксперт
Эксперт

Зарегистрирован:
05 окт 2015 23:49
Сообщения: 61
Dmitry_Zolotar писал(а):
Спробуйте натиснути Ctrl-D під час збору, можливо це те що Вам потрібно. Ще є варіанти.

Чи Вам потрібні саме румби? І саме для об'єктів шару ID11340000? Зі створенням підписів параметра ID93? І лише для тих об'єктів, значення параметра 4 якого більше або дорівнюю значенню аналогічного параметра об'єкта, який був помічений перед запуском скрипта?

Даний скрипт - хороший приклад автоматизації, але він вирішує досить специфічне завдання на нестандартних шаблонах.


Дякую за допомогу.
:idea: :D Натиснути Ctrl-D під час збору, якраз Те що Потрібно!

Написане було за 10 хвилин до спроби Натиснути Ctrl-D під час збору:
Потрібно із таблиці (списку) із Дирекційними кутами та промірами внести точки на карту та зібрать полігон.
У себе змінив об'єкт шару ID11340000 на шар ID10 і накидав точки теодолітного ходу на карту, але потрібно проміри внести ті що у списку, а вони не цілі числа...
Інших способів не знайшов, тому і прошу допомоги.
Зараз почитаю про варіанти у книжці.
Переглянув, але для себе нічого не знайшов з Дирекційними кутами...


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 01 июн 2017 05:36 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 601
Откуда: Ліспроект
Dmitry_Zolotar писал(а):
Змініть системний розділник з коми на точку.
Скажемо так:
- системний розділювач змінюється в меню Пуск > Панель керування > Мова та регіональні стандарти на вкладці Регіональні параметри кнопка Налаштування вкладка Числа поле Десятковий розділювач;
- системний розділювач визначає: кома чи крапка буде повернуто у скрипт в десяткових числах командами скрипта $x=@Map.Object[$n].Parameter[-4] та $y=@Map.Object[$n].Parameter[-3];
- арифметичні дії виконуються у скрипті лише з десятковими числами у яких розділювач - крапка.

При системному розділювачі - кома:
- $x та $y міститимуть коми, тому $x=@Calc Replace("$x",",",".") заміняє кому на крапку, однак $d=@Dialog.Ask дистанция уводиться з комою, $d=@Calc Replace("$d",".",",") заміняє крапку на кому і $dx=$x+$ac*$d приймає $d з комою (множення на число з комою не виконується скриптом).

При системному розділювачі - крапка:
- $x та $y міститимуть крапки, тому $x=@Calc Replace("$x",",",".") залишить в числах крапки, однак $dx=@Calc Replace("$dx",".",",") замінить крапку на кому і @Map.AddObject 0|1|ID11340000|1|0 $dx $dy 0|1|ID11340000|1|4 $nn подаватиме в карту координати з комою (не створить Digitals об'єкт за координатами з комою, бо системний розділювач - крапка).

Одним словом, попробуйте замінити у скрипті $d=@Calc Replace("$d",".",",") на $d=@Calc Replace("$d",",","."). Тоді при системному розділювачі "кома" має працювати.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 01 июн 2017 07:43 
Эксперт
Эксперт

Зарегистрирован:
05 окт 2015 23:49
Сообщения: 61
:D :idea: Дякую, замінив на $d=@Calc Replace("$d",",",".") - ПРАЦЮЄ!

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

Мої зміни:
- Українська локалізація
- В скрипту прописано шар для створення нових точок ID11 "Проектні лінії"
- фунція "Вигляд | Показати всі" після створення точки
- добавлена іконка


Вложения:
дир. кутах або румбах.tlb [6.35 Кб]
Скачиваний: 52
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Библиотека полезных скриптов
СообщениеДобавлено: 02 авг 2017 12:22 
Участник
Участник

Зарегистрирован:
19 окт 2016 18:33
Сообщения: 4
Скрипт трансформування растрів в УСК/МСК чомусь не трансформує всі растри. З декотрих - тільки невелику ділянку на краю растру. Підкажіть, в чому може бути справа?


Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 161 ]  На страницу Пред.  1 ... 7, 8, 9, 10, 11  След.

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


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

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


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

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