Revit API簡(jiǎn)介——Dynamo Python系列教程(九)

Revit的API已經(jīng)開(kāi)發(fā)了近二十年。

Revit API簡(jiǎn)介

Revit在本世紀(jì)初就有了一個(gè)可訪問(wèn)的API,可以用來(lái)驅(qū)動(dòng)軟件的幾乎所有方面。由于Revit應(yīng)用程序非常復(fù)雜,而且是為適應(yīng)多種受眾(結(jié)構(gòu)、MEP等)而構(gòu)建的,所以它的API非常大,需要一段時(shí)間才能直觀地掌握,也就不足為奇了。

我經(jīng)常發(fā)現(xiàn),最簡(jiǎn)單的方法是把Revit看作一個(gè)數(shù)據(jù)庫(kù),我們?cè)谑褂脩?yīng)用程序時(shí)不斷更新它。數(shù)據(jù)庫(kù)存儲(chǔ)我們的內(nèi)容(它的元素ID、類別、位置等)。在此之上是一個(gè)GUI,它表示元素在3D空間中的幾何/位置,并允許我們與元素交互。最后,還有一點(diǎn)網(wǎng)絡(luò)魔法,允許我們通過(guò)本地網(wǎng)絡(luò)/ Revit服務(wù)器/ BIM360建立工作共享。

以這種方式思考Revit與大多數(shù)用戶體驗(yàn)軟件的方式是完全不同的。實(shí)際上,當(dāng)我們編寫(xiě)針對(duì)Revit API的腳本時(shí),我們只是對(duì)數(shù)據(jù)庫(kù)進(jìn)行一系列調(diào)用,受API規(guī)則的約束。

版本和歷史

對(duì)于Revit的每個(gè)發(fā)行版和子發(fā)行版,Autodesk Revit團(tuán)隊(duì)都會(huì)對(duì)其API進(jìn)行細(xì)微的更新或添加。這些變化主要與軟件本身的功能變化有關(guān)(例如,Revit2020的最短路徑分析API)。

悠久的歷史有時(shí)意味著Revit API看起來(lái)可能不一致或以意想不到的方式構(gòu)造——這通常發(fā)生在較老的API上,如果不影響很多人,這些API就不能改變。

Revit API的結(jié)構(gòu)

考慮到它的大小,它可以幫助我們后退一步,了解這個(gè)API通常是如何構(gòu)造的。Revit API公開(kāi)了大約1700個(gè)類、50個(gè)接口和500個(gè)枚舉,幾乎涵蓋了應(yīng)用程序的所有方面和功能。這些類被細(xì)分為幾個(gè)名稱空間,通常與特定的用法相關(guān)(例如,管道或結(jié)構(gòu)鋼)。絕大多數(shù)類駐留在Autodesk.Revit.DB名稱空間中。

在您的計(jì)算機(jī)上,API類分為兩個(gè).dll文件:RevitAPI.dllRevitAPIUI.dll,可以在以下位置找到:C:\Program Files\Autodesk\Revit[版本]

Revit SDK和API文檔

軟件開(kāi)發(fā)套件(SDK)是軟件供應(yīng)商向開(kāi)發(fā)人員分發(fā)有關(guān)其API的信息的常用方法。官方Revit SDK可以點(diǎn)擊下面鏈接找到

1、https://www.autodesk.com/developer-network/platform-technologies/revit

2、https://knowledge.autodesk.com/zh-hans/search-result/caas/sfdcarticles/sfdcarticles/kA23A000000ZZ1z.html。

所有API都需要技術(shù)文檔,這樣程序員就可以學(xué)習(xí)如何使用代碼驅(qū)動(dòng)應(yīng)用程序。Revit SDK包含.chm文件中的官方API文檔以及示例代碼(用Visual Basic和C#編寫(xiě))。(https://www.revitapidocs.com/

但是,我建議閱讀http://APIDocs.cohttps://apidocs.co/)網(wǎng)站上的Revit API ,這比打開(kāi).chm文件方便得多,建議將其收藏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容