如何在Python中產生新的RevitAPI對象
通過Python節點可以調用RevitAPI的內容,那如何產生新的對象?
一、公開構造函數的類
通過查看RevitAPI可以看到:對於XYZ類給出了公開的API構造函數,如下圖所示:
(Tips:類的構造函數名稱必須與類名稱相同,例如XYZ類的構造函數名稱必須為XYZ(),可以作為查找構造函數的依據)
public XYZ(
double x,
double y,
double z
)
對於C#等其他語言來說,調用類的構造函數是需要添加關鍵字的,在C#中為new,而在Python中調用構造函數則不需要任何關鍵字,像普通方法一樣調用即可;
point=XYZ(0,0,0)
二、未公開構造函數的類
在RevitAPI中還有一些類是沒有公開構造函數的,未公開的原因與程序面向對象設計的原則有關(更好的程序架構),例如:FamilyInstance類,那麼如何構造新的FamilyInstance?
RevitAPI把大部分工廠類放在了Autodesk.Revit.Creation Namespace命名空間下,如果沒有找到合適的構造函數,可以到該命名空間下查找。