Сообщество программистов Autodesk в СНГ
ADN Club => Revit API => Тема начата: Олег от 23-02-2017, 16:03:11
-
Добрый день.
Есть некая идея как сделать но не знаю верно ли и есть ли способ.
Есть в документе объект DirectShape и надо ему придать какоето определение.
Для этого создаю новое семейство на основе типовой модели с одним типом (как пример) но ничего не рисую,
т.е. графики нету. Далее загружаю созданное семейство и вставляю в документ новый элемент с помощью метода
NewFamilyInstance.
Так вот далее такая идея чтобы взять графику из DirectShape и применить ее к FamilyInstanse.
Но никак не могу найти способа как вообще изменить графику нового элемента.
Подскажите, пожалуйста, как можно в этой ситуации поступить?
-
Олег, в Revit нет способа менять геометрию напрямую. Геометрия элемента в проекте может меняться только изменением параметров. Таким образом, графику из DirectShape никак неудастся применить к экземпляру семейства.
Есть в документе объект DirectShape и надо ему придать какоето определение.
Вот тут по подробней. что понимается под "придать какое то определение"? При создании DirectShape указывается категория. И у данного объекта типа DirectShape появляются все свойства выбранной категории. Возможно это то что вам нужно.
-
Виктор, благодарю за ответ.
Суть проблемы - из файла DWG импортируется графика состоящая из набора блоков. Эти блоки там, в Автокаде, имеют определенное значение, ну например система воздуховодов. Причем они из некой спецификации, имеют свою геометрию и размеры. Когда происходит импорт этой графики то есть возможность разбить через API всю графику на блоки из которых она состояла и получим такую же графику в Revit но уже из наборов объектов DirecShape класса.
Да категорию можно им придать. Но все блоки получают одинаковые параметры. А они отличаются размерами и графикой, ну например один там прямой а другой делает угол на 45 градусов.
Вот и задача сделать автоматическое формирование семейства с подсемействами и параметрами для импортируемого содержимого из DWG файла.
-
решение данной проблемы в переборе Geometry в импортированном объекте и вставке геометрии в создаваемое семейство. так получаем не целый кусок импорта а разбиение на мелкие детали и еще и создаем нужные семейства.
ну а целый кусок просто потом удаляем.