1. 程式人生 > >PipeCAD之管道標準庫PipeStd

PipeCAD之管道標準庫PipeStd

PipeCAD之管道標準庫PipeStd

[email protected]

 

Key Words. PipeCAD, PipeStd, 管道設計軟體,管件庫

 

1. Introduction

前不久,兩位老友徐總和毛總在上海浦東金橋的一茶一坐小聚,回想到幾年前我們仨在那裡聚會的情景。他們分別在A公司和I公司,我當時在做SPD的開發。在一起聊的話題也是關於設計軟體的,當時也有一些思想碰撞的火花,想著做出一個什麼軟體,成為CEO,迎娶白富美,走上人生頂峰。結果幾年過去,當年吹過的牛B,沒有實現。其中有一個就是做一個管道標準庫程式,方便管件的定義。定義好之後,可以匯入

AVEVA PDMSIntergraph SmartPlant

看著國內工廠/船舶設計軟體如PDSOFTUESOFTPDMAX還有船舶設計軟體SPD都不溫不火,而且國外的AVEVA PDMS/Marine, Intergraph SmartPlant已經佔據了國內市場,有時我也在想開發一個原來夢想的管道設計軟體的意義和價值。

AVEVA PDMS/Marine我覺得是簡單易用的軟體,一致的操作方式,基於CSG的造型演算法,還提供了二次開發語言PMLC#來對程式進行靈活擴充套件。基於檔案的層次資料庫,並提供了資料庫的增、刪、改及資料回退功能,可以用於大中型專案設計。由於很容易得到和諧版,所以使用者很多。

Intergraph SmartPlant是美國的一款軟體,由於其價格昂貴,在國內的使用者都是不差錢的單位。由於沒有使用過,所以對其不便於評價。但是由於國內外有業主會指定這款軟體,所以國際上使用者也很多。

再看國內的工廠/船舶設計系統PDSOFTUESOFTPDMAXSPD等,都是基於AutoCAD開發的。早期基於AutoCAD,因為AutoCAD比較普及,所以會吸引一些會AutoCAD的使用者。但是基於AutoCAD開發程式弊端之一是AutoCAD版本升級,程式要想適應AutoCAD,也必須跟著升級。弊端二是AutoCAD的提供的開發庫ObjectARX, .NET等都不是開源的,如果是那些庫出現

BUG或是不支援的功能,要麼去和Autodesk公司溝通,要麼只有繞道了。有的使用ObjectARXC++庫開發,雖然程式效能好,還在使用MFCGUI,但是開發效率低。弊端之三是有些功能與AutoCAD的功能糾纏不清,使用者體驗不太友好。

為了實現幾年前的夢想,我決定開發一個管道設計軟體PipeCAD

 

2. PipeCAD

PipeCAD的一個定位就是適用於中小型專案的管道設計軟體。因為大型專案的使用者一般都是用PDMSSmartPlant

使用開源庫OpenCASCADE來進行三維圖形開發,使用開源庫Qt來進行GUI開發,提高程式開發效率。因為使用開源技術,出現BUG可以從根據上解決。不依賴其他閉源的軟體,不會有其他軟體升級帶來的影響。

業務核心功能都自己實現,程式自主可控,方便增加新功能。

 

PipeCAD的初步開發以下功能模組:

管件庫等級庫管理程式PipeStd

三維設計模組PipeCAD

管道軸測圖出圖模組IsoAlgo

 

3. PipeStd

PipeStd主要用來對管件標準資料、管道等級等資料進行管理。有了管件資料,就可以對管件進行三維顯示。有了管道等級,就可以在三維設計模組來使用管件來對管道進行建模。PipeStd的使用方式與PDMSParagon模組類似,通過引數化的方式來定義管件。目前程式的主要功能已經實現,程式介面如下圖所示:

其中還設想的功能有:

匯入、匯出PDMS中的管件及管道等級Piping Specification資料;

匯入、匯出SmartPlant中的管件及管道等級Piping Specification資料;

 

4. Conclusion

兩位友人的提醒,決定開發一個三維管道設計軟體PipeCAD。為中小型專案的管道設計提供了一個選擇。核心功能都自己實現,程式自主可控。不依賴其他軟體,如AutoCAD,提供良好的使用者體驗。