Наконец-то курс по программированию под Renga опубликован на bim.vc.
В этой статье я расскажу про 2 новых скрипта, не упомянутых в курсе (так как они появились после его создания). Скрипты будут для среды Dynamo и касаться работы с объектными свойствами.
Для работы скриптов ниже потребуется версия RengaDyn не ниже 1.5.0 (от 11.08.2022).
Предупреждая ваши вопросы, блок курса посвященный Dynamo начинается отсюда: https://bim.vc/edu/courses/renga-instrumenty-avtomatizatsii-api-i-dynamo/rabota-s-dynamo-v-renga/.
Ему также соответствует текстовый материал здесь https://github.com/GeorgGrebenyuk/RengaDyn/wiki/1.-Установка-среды-Dynamo-и-пакета-нодов-RengaDyn.
1. Скрипт для простановки дополнительного свойства, количества 3D-граней в геометрии объекта
Как ясно из названия, скрипт создает новое свойство в Проекте, присваивает его всем категориям объектов модели и заполняет в виде числа (integer) сколько 3d-граней в геометрическом представлении объекта.
Подобная аналитика нужна при выгрузке модели во внешние продукты - расчетные комплексы и среды визуализации.
Краткое описание скрипта расположено тут - https://github.com/GeorgGrebenyuk/RengaDyn/wiki/4.-Отдельные-скрипты#43---Простановка-дополнительного-свойства-количество-3d-граней-в-геометрии.
Проблематика вопроса связана с выгрузкой Ренгой геометрии в триангулированном представлении (особенно для гладких/круглых поверхностей).
Расположен скрипт в данном разделе под именем "RengaDyn_Sample_SetPropertyTrianglesCount.dyn". Его требуется только запустить (при запущенном в Renga проекте, где вы хотите получить количество граней).
Продолжение применения скрипта -- это выборка в модели объектов, со значением свойства, к примеру, больше кого-то значения, например 1000 граней. Для этого см. скрипт "RengaDyn_Sample_PropertyTrianglesCount_Getting.dyn".
2. Скрипт для передачи объектных свойств между проектами
Честно скажу, текущий способ с передачей свойств с присвоением их балке и вставки в целевой проект не кажется мне удобным -- в этом случае теряется логика, каким категориям объектов назначено свойство, да и сама механика методически некорректная.
Краткое описание предлагаемого сценария приведено здесь.
Суть предлагаемого подхода заключается в выполнении двух последовательных операций - экспорту свойств из "главного" проекта во внешний CSV файл скриптом RengaDyn_Sample_MigrateProperties_Export.dyn (его логика заполнения отличается от стандартной csv-спецификации Renga) и (второй этап) импорту скриптом RengaDyn_Sample_MigrateProperties_Import.dyn из данного файла свойств во второй проект с сохранением имен свойств, их Guid'ов, типа свойств и главное, списку объектов модели, к которым применимы эти свойства.
Сами скрипты также приведены здесь.
Не пропускайте публикации, подписывайтесь на Telegram-канал с тизерами статей.
Также подписывайтесь на тематический Telegram-канал под программирование для Renga.
#renga #rengabim #bim #dynamo #rengadyn