In revit api versuche ich, auf die ToRoom/FromRoom-Eigenschaften für Türen zuzugreifen. der vereinfachte Code-Schnipsel in Ironpython:revitapi ironpython ToRoom gibt "indexer # object" zurück
fc = FilteredElementCollector(doc)
doors = fc.OfCategory(BuiltInCategory.OST_Doors).WhereElementIsNotElementType().ToElements()
for door in doors:
froom = door.FromRoom
mein Ergebnis ist ein „Indexer # Objekt bei 0x0000000000035“ , wie kann ich den Raum Objekt zugreifen von hier aus?
Ich fürchte, ich weiß nicht die Antwort auf Ihre Frage. Es sieht gut für mich aus. Ihr Aufruf an ToElements ist jedoch unnötig und ineffizient. Der Filterelementkollektor selbst ist bereits iterierbar. ToElements erstellt eine Kopie der gesamten Sammlung. Hier ist eine detaillierte Diskussion über die ähnliche Ineffizienz von ToElementIds: http://thebuildingcoder.typepad.com/blog/2012/12/toelementids-performance.html –
Bitte beachten Sie, dass die gleiche Frage auch im Thread revit api Diskussionsforum diskutiert wird http://forums.autodesk.com/t5/revit-api/toroom-fromroom-python-issue/mp/6507328 –
Jeremy danke für den Hinweis bezüglich des gefilterten Element-Kollektors. – user3460882