hi @ilia.s, below is a sample usage of get_Geometry
method. It is collecting Solid
geometry and extracting Faces
data from Room
elements.
# dynamo version - 1.3.4
import clr
clr.AddReference("RevitAPI");
clr.AddReference("RevitNodes")
import Autodesk, Revit;
clr.ImportExtensions(Revit.Elements);
clr.ImportExtensions(Revit.GeometryConversion);
from Autodesk.Revit.DB import *
rooms = UnwrapElement(IN[0]);
result =[];
for room in rooms:
# geo of room
geo = room.get_Geometry(Options())
# get enum
enum = geo.GetEnumerator()
# skip one
next = enum.MoveNext()
# current geo
solid = enum.Current
# get faces
faces = solid.Faces
count = 0;
sub = []
# each face
for face in faces:
count +=1;
# omit first two (top,btn)
if count>2:
# face to dyn obj
sub.append(face.ToProtoType()[0])
# curves
#sub.append(face.GetEdgesAsCurveLoops()[0])
result.append(sub)
OUT = result