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

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

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

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

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