Posted on 2021-07-11 20:27
eryar 閱讀(523)
評論(0) 編輯 收藏 引用 所屬分類:
1.PipeCAD
PipeCAD - Admin
eryar@163.com
Key Words. PipeCAD, 三維管道設計軟件,項目管理
1. Introduction
PipeCAD管理模塊Admin主要實現項目數據的管理:創建組Team,用戶User和工作區數據集MDB,項目數據庫DB等,并給用戶分配權限。
通過數據庫的設計,使其結構兼容PDMS數據庫。兼容PDMS數據有很多優點,如可以導入PDMS項目數據,做到PDMS項目復用。也可以導出PDMS數據,使PipeCAD項目可以導入到PDMS中。
2. Reference Number

在PDMS中有Reference Number概念,實際上也是項目數據庫中每個對象唯一標示。上圖所示為其Reference Number生成算法。Reference Number由兩部分組成:第一部分由數據庫文件編號和bucket號組成。bucket號是表示同時使用一個數據庫文件的用戶數。第二部分是從0開始的一個遞增序號。

通過這兩部分來組成一個唯一的標識,確保一個Reference Number在項目中唯一。這個編號相當于數據庫的OID,即對象唯一標示號。以前還考慮過Twitter的雪花snowflake算法,對于分布式系統中,需要使用全局唯一ID的場景,snowflake算法還是不錯的選擇的。OID的生成對數據庫的設計影響還是比較大的。把PDMS生成Reference Number摘出來做個筆記,也是方便自己加深印象和查找。
3. Login
PipeCAD啟動也通過批處理來配置項目信息,方便項目統一配置管理。啟動后,選擇項目及用戶,MDB,模塊,輸入密碼等就可以登錄相應模塊,目前只需要三大模塊就可以完成管道設計功能:管理模塊Admin;元件庫模塊Paragon和設計模塊Design。統一在Design模塊完成模型設計及自動出圖、出材料。

4.Admin
PipeCAD的管理模塊Admin也做相應的簡化處理。通過數據庫的設計,每種類型的數據模式Schema保持一致。如Admin模塊中使用到的System數據庫;Paragon模塊使用的CATA數據庫;Design模塊使用的DESI數據庫。雖然數據庫中內容不同,但是基本Schema是類似的。
PipeCAD的Admin模塊數據也是樹結構,每個樹結點對應一種類型,不同類型會有不同的屬性數據。整個數據結構簡單,清晰。

5. Conclusion
初步實現PipeCAD項目管理功能,為后面的用戶登錄,元件庫數據存儲及設計數據保存做好基礎。
完成PipeCAD數據庫設計,使其簡單、易維護。基本做到可以兼容PDMS數據,包括Reference Number的生成,一些具有引用關系的屬性處理等。雖然現在使用SQLite,后面也可以快速切換到PostgreSQL數據庫,為大型項目的設計提供數據支持。
致力于不依賴AutoCAD的國產三維管道設計軟件的開發,若您有任何意見、建議,歡迎交流。
為了方便大家在移動端也能看到我的博文和討論交流,現已注冊微信公眾號,歡迎大家掃描下方二維碼關注。