發現Revit創建的天花板平面默認是沒有工作平面的,使用例如Selection.PickPoint()這類需要工作平面的方法會報錯,需要設置一下工作平面。
代碼實現起來也很簡單,讀取天花板平面的標高,用標高生成一個SketchPlane,再將這個SketchPlane設置到視圖中就可以了。
代碼:
activeView.SketchPlane = SketchPlane.Create(doc, activeView.GenLevel.Id);
一點強迫症,跑完命令後我希望把視圖恢復到本來沒設置工作平面的狀態,找了找沒發現對應的方法,最後發現刪掉SketchPlan就可以了。
doc.Delete(activeView.SketchPlane.Id);