public List<MyBoundaries> OpeningsProfile(Wall wall)
{
Reference sideFaceReference = HostObjectUtils.GetSideFaces(wall, ShellLayerType.Exterior).First();
Face face = wall.GetGeometryObjectFromReference(sideFaceReference) as Face;
Transform transform = Transform.CreateTranslation(wall.Orientation.Normalize());
IList<CurveLoop> curveLoops = face.GetEdgesAsCurveLoops();
List<MyBoundaries> bound = new List<MyBoundaries>();
TaskDialog.Show("s", curveLoops.Count.ToString());
foreach (CurveLoop curveLoop in curveLoops)
{
MyBoundaries b = new MyBoundaries();
foreach (Curve curve in curveLoop)
{
b.Curves.Add(curve.CreateTransformed(transform));
}
bound.Add(b);
}
return bound;
}