Выяснение хозяина дверей в Revit API - PullRequest
0 голосов
/ 01 октября 2018

ссылка на эту ссылку ... https://forums.autodesk.com/t5/revit-api-forum/door-host-wall/td-p/6951682

И, учитывая следующий фрагмент C #, d не имеет свойства `` d.Host`.

ICollection<Element> doors = new FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_Doors).ToElements();
        foreach (Element d in doors)
        {

        }

Однако вPython ...

    doors = FilteredElementCollector(self.Document).OfCategory( BuiltInCategory.OST_Doors ).WhereElementIsNotElementType().ToElements()

    ...

    t = Transaction(self.Document, 'This is my new transaction')
    t.Start()

    for d in doors:
        ...
        wallTypeId = d.Host.GetTypeId() 
        wall = doc.GetElement(wallTypeId)

У меня нет проблем с получением Host of d.

Просматривая API Revit, я не вижу ссылки на метод Host или свойство элемента, однакоИспользуя RevitLookUp и выискивая дверь, Хост четко определен.

Почему я не могу собрать Хост в C #?И почему это работает в Python, даже если у Element нет свойства с именем Host?

1 Ответ

0 голосов
/ 02 октября 2018

Каждый элемент двери является объектом FamilyInstance, который имеет свойство Host.

...