RevitAPI: 如何創建雲線?How to create RevisionCloud

首先通過RevitLooup工具,我們可以看到雲線的類是RevisionCloud,那麼創建雲線的方法不是在Document.Create裏面尋找,就是在自己的靜態方法裏面尋找。

果然,被我們發現有一個靜態的Create函數,如下:

public static RevisionCloud Create(Document document, View view, ElementId revisionId, IList<Curve> curves)

大多數參數我們應該能夠猜出來它們是幹什麼的,唯一一個參數就是revisionId,這個從哪裏來呢?


首先,我試了一下傳入ElementId.InvalidElementId,發現拋出異常:

Autodesk.Revit.Exceptions.ArgumentException: revisionId is not a valid Revision.  Parameter name: revisionId

所以這裏必然是傳入真實的Id。

此時我發現,RevisionCloud是有一個屬性叫RevisionId的,於是查看了一下這個Id代表的是什麼,那就是Revision。

再看Revision也有一個Create的靜態方法,於是解決方案就明瞭了,也很簡單:

var revision = Revision.Create(RevitDoc);
var revisionCloud = RevisionCloud.Create(RevitDoc, 
    RevitDoc.ActiveView, ElementId.InvalidElementId, 
    new List<Curve>() { 
    Line.CreateBound(XYZ.Zero, new XYZ(10,0,0))
});


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章