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

22/09/2014

Как определить присоединен ли экземпляр семейства к другому элементу

Вопрос: Есть ли какой-нибудь метод, с помощью которого можно определить, присоединен ли экземпляр семейства к чему-либо?

Я попытался с помощью RevitLookup найти что-то похожее, но так и не увидел ничего, что позволило бы это определить.

Ответ: Есть несколько различных способов, которые стоит попробовать:

  • Использовать метод GetJoinedElements класса JoinGeometryUtils.
  • Для бетонных конструкций и стен можно извлечь свойство Location, привести его к классу LocationCurve и посмотреть на коллекцию присоединенных элементов, с помощью свойства ElementsAtJoin
  • Метод Element.GetGeneratingElementIds вернет для заданного геометрического объекта коллекцию элементов, которые образуют этот геометрический объект.
  • И, наконец, вы можете воспользоваться анализом геометрии, например, с помощью класса ReferenceIntersector или фильтра ElementIntersectsSolidFilter.

Список статей на эту тему (на англ.):

В последней ссылке подробно обсуждаются все различные варианты.

Источник: http://thebuildingcoder.typepad.com/blog/2014/09/a-couple-of-recent-issues.html#3

Обсуждение: http://adn-cis.org/forum/index.php?topic=969

Опубликовано 22.09.2014
Отредактировано 22.09.2014 в 10:27:02