@desdinova
Sorry to hear that it doesn't work for you. Before posting a did a small scale test, and it worked fine.( 1 wall in empty project) The "code" in my previous post, is intended as a roadmap / pseudocode.
this is my testing code:
StringBuilder s = new StringBuilder();
Document doc = revit.Application.ActiveUIDocument.Document;
Autodesk.Revit.DB.View ActView = doc.ActiveView;
XYZ pt1 = new XYZ(0, 0, 0);
XYZ pt2 = new XYZ(0, 0, 100);
XYZ pt3 = new XYZ(0, 100, 100);
XYZ pt4 = new XYZ(0, 100, 0);
Outline _outline = new Outline(pt1, pt3);
_outline.AddPoint(pt2);
_outline.AddPoint(pt4);
BoundingBoxIntersectsFilter CutPlaneFilter = new BoundingBoxIntersectsFilter(_outline);
List<Element> ElemsInCutPlane =
new FilteredElementCollector(doc, doc.ActiveView.Id)
.WhereElementIsNotElementType()
.WhereElementIsViewIndependent()
.WherePasses(CutPlaneFilter)
.ToList<Element>();
s.AppendLine(string.Format("{0} elements found",ElemsInCutPlane.Count));
s.AppendLine();
foreach (Element e in ElemsInCutPlane)
{
s.AppendLine(string.Format("{0} <{1}> {2}", e.Name,e.Id,e.GetType()));
}
TaskDialog.Show("debug", s.ToString());
//using (Transaction t = new Transaction(doc, "test"))
//{
// t.Start();
// SketchPlane _plane = SketchPlane.Create(doc, new Plane(XYZ.BasisX, XYZ.Zero));
// doc.Create.NewModelCurve(Line.CreateBound(pt1, pt3), _plane);
// t.Commit();
//}