Определение координат объекта
Главная › Форумы › Задать вопрос › Определение координат объекта
- В этой теме 8 ответов, 5 участников, последнее обновление 7 лет, 1 месяц назад сделано JON73.
-
АвторСообщения
-
ЮрийУчастник
Добрый день!
Кто может подсказать, как с помощью Dynamo вытащить координаты расположения семейства(допустим – труба)? и как далее построить автоматически по этим координатам линию или любое семейство систем?
Добрый день, Юрий! Координаты расположения семейств можно взять с помощью нода Element.GetLocation, получаем точки xyz, дальше по ним можно вставить другое семейство, нод FamilyInstance.ByPoint. Есть интересные подробные уроки Евгения Мелехова по созданию и расстановке забора https://www.youtube.com/watch?v=1Byagbe_scM. Также, чуть раньше делал скрипт по перемычкам для себя, там тоже использовал координаты и вставку самих перемычек по координатам окон, пост #6949
Еще есть ролик Хасана Мамаева там вокруг стола табуретки нужного количества расставляются. так можно прикинуть сколько можно гостей пригласить
JON73УчастникХорошим делом было бы взять открытые концы труб и автоматом на них погрузить бачонки – виртуальные коннектторы которые затем копирнуть в другую секцию дома и от этих виртуальных коннекторов продолжить трассу! кто чертил в магикаде тот поймет. есть в ревите решения с виртуальными коннекторами?
JON73Участникопределение координат коннекторов! https://forum.dynamobim.com/t/reading-direction-property-of-connectors-on-ducts-pipes/8424/10
КТО СМОЖЕТ сделать виртуальный коннектор , расставив заглушки и заменив их заглушками -оборудованием или автоматом расставить на открытых концах заглушки оборудование??
1.) Вам принципиально нужно соединять вставляемое оборудование с трубой коннекторами ? т.е. нельзя просто на конец трубы поставить ваше оборудование (без соединения коннекторов между собой)?
2.) для каких целей нужно расставлять заглушки?
Я решал подобную задачу для Ревита 2015 (могу выложить пример скрипта). В 2017 и позднее АПИ изменили – надо будет переписать под новые методы, но руки не доходят.
Итак разбиваем задачи.
Хорошим делом было бы взять открытые концы труб и автоматом на них погрузить бачонки:
Программно можно ничего не “подгружать”, а хранить в памяти список точек начала-конца трубы, либо этот список точек сохранить в файл.
“затем копирнуть в другую секцию дома”
Немного не понятно, что значит “копирнуть”? С программной точки зрения, можно добавить смещение к координатам.
например, если “копировать” по уровню, прибавляем к координатам Z высоту смещения.продолжить трассу!
Нет проблем. Правда, придется использовать Питон. Я не знаю стандартных нодов по созданию МЕП-элементов.
Вывод: задача вполне решаема и я даже практиковался в программировании на этой задаче. Считаю, что задача сформулирована несколько не корректно. Прошу подробно продумать механизм реализации. На какие-то простые вопросы я смогу помочь. Писать скрип целиком мне как-то не хочется.
JON73УчастникВиртуальные коннекторы нужны для работы в двух файлах! такая работа например по умолчанию в магикаде под автокад где каждый этаж это отдельный файл. В ревите работают в двух файлах например в жилых домах где башни делают отдельным файлом а подвали и 1 эт в другом файле. При такой раскладке трубы законченные в башне невозможно поймать в подвале.. в магикаде есть такая функция увидить виртуальный коннектор и от него уже чертятся трубы/воздуховоды причем тип системы и расход при этом передается.. Заглушкам невозможно поставить расход они зануляют его на трубах так как это заглушка вот если бы программно все заглушки превратить в сочленение . то было бы классно
JON73УчастникНашел решение как создать заглушки , автомат ревит их умеет ставить затем этим заглушкам дают доп конектор, и преобразовывают их в сочленение и заменяют тогда можно эти заглушки копирнуть в другой проект и от них вести трубу , дальше, но кстати стандартный режим мониторинга в ревите пока недоработан не передаются параметры по экземпляру расходы … нужен плагин проверки и обновления параметров этих элементов ;))
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.