Сообщество программистов Autodesk в СНГ

ADN Club => Revit API => Тема начата: 66hertz от 19-10-2017, 15:54:55

Название: Автоматическое создание розеток
Отправлено: 66hertz от 19-10-2017, 15:54:55
Доброго времени суток всем!
Нашей организации очень бы помог инструмент, который способен размещать розетки на стене на заданной высоте за определенным оборудованием (то есть проверять на  наличие стены в пределах 300-200мм и если стена есть - ставить розетку). Программированием на С# занимался давно и чуть чуть. Вопрос к людям, способным оценить такие вещи "на глаз" - насколько трудоемкая будет задача?
Заранее спасибо за ответ, извиняюсь если оффтоп. Хочу разобраться, стоит ли самому сейчас этим заниматься, вникать.
Название: Re: Автоматическое создание розеток
Отправлено: Александр Пекшев aka Modis от 19-10-2017, 16:07:08
Понятие "трудоемкость в Ревит" - это вообще что-то за пределами реальности  ;D
Иногда бывает, что плагин выполняет действие, которое и руками не сложно сделать, но там столько кодить нужно, что аж страшно. Я сталкивался с таким - плагин просто ставил светильник на потолок в определенном месте. экономия времени вообще незначительная! Но когда я начал решать задачу, то там оказались сложные алгоритмические действия, включающие в себя теорию работы с графами. А учитывая, что я не супер-программист, то я потратил на эту задачу неделю времени. И поверьте - это того не стоило!
А бывает, что плагин очень полезный, а в коде достаточно простой. Хотя, в Ревите такого не бывает =))

Так вот - ваше описание не совсем корректно. Предусматривается, что плагин сам ищет оборудование, затем ищет стены рядом, затем ставит розетки? Верно?
В принципе, не так все сложно. Все аналитические действия нужно будет привести к простой геометрии и её анализировать. Однако, можно столкнуться с особыми случаями, когда придется "попотеть"
Название: Re: Автоматическое создание розеток
Отправлено: Александр Пекшев aka Modis от 19-10-2017, 16:07:31
А вообще - нет ничего невозможного! Нужно только захотеть
Название: Re: Автоматическое создание розеток
Отправлено: 66hertz от 19-10-2017, 16:21:14
Александр Пекшев aka Modis, по поводу трудоемкости - помещения не жилые, розеток очень много, в некоторых случаях процесс одной только расстановки занимает несколько часов) Потом подгонка привязок и расстановка марок по красоте еще часа два. Так что инструмент был бы полезный, если бы работал корректно.
Принцип вижу такой - необходимое оборудование имеет некий идентификатор, буквенный, например. Код ищет семейства с этим идентификатором в заданной категории (для экономии ресурсов, т.к. все они в одной категории), начиная с определенных координат проверяет только в одном направлении наличие объектов в категории стен, и если есть - создать семество на высоте, записанной всё в том же семействе, в другом параметре. Звучит и просто и сложно)
Название: Re: Автоматическое создание розеток
Отправлено: Александр Пекшев aka Modis от 19-10-2017, 16:58:36
Главное - начать. А дальше уже по накатанной пойдет.
У меня есть проект, который очень большой (правда под автокад) - вот я его раза три начинал с нуля. И делал наверное пол года. И это только начало проекта!
Так что ничего не бойтесь и начинайте. Вопросы тут спрашивайте - подскажем
Код ищет семейства с этим идентификатором в заданной категории (для экономии ресурсов, т.к. все они в одной категории)
Вот это все достаточно быстро происходит, так что можете не переживать. FilteredElementCollector вообще моментально собирает элементы
Звучит и просто и сложно)
Не так уж и сложно, если разобраться
Название: Re: Автоматическое создание розеток
Отправлено: 66hertz от 19-10-2017, 17:18:44
Не вижу где на этом форуме плюсик) спасибо
Название: Re: Автоматическое создание розеток
Отправлено: Александр Пекшев aka Modis от 19-10-2017, 17:47:38
Не вижу где на этом форуме плюсик)
Под словом "карма" ;)