基於Web的CAD一張圖協同線上製圖更新輕量級解決方案[示例已開源]
之前相關的博文中介紹瞭如果在Web網頁端展示CAD圖形(
需求分析
需求舉例如下:如下圖所示,圖紙四屬於一張圖,此圖由不同部門的圖形組合而成【圖紙一(圖層1)、圖紙一(圖層3)、圖紙二(圖層2)、圖紙三(圖層3)】, 當圖紙一、圖紙二、圖紙三有更新時,圖形四應及時更新至最新版本,保證檢視一張圖圖紙四時,永遠是最新的圖形版本。
要想實現上面的功能,涉及到版本控制、許可權控制、圖形合併等相關功能。
實現原理介紹
一張圖協同圖形是由不同的部分的子圖形中的相關圖層組合而成。實現圖形的組成檢視有兩種方式。
WMS服務組合圖形
Web 地圖服務 (WMS) 是用於在 Web 上顯示 GIS 資料的 最廣泛使用和最簡單的形式,他能將不同的圖形瓦片根據座標疊加對應到一起。此方式是通過WMS方式,把要疊加顯示的圖通過WMS疊加到一起,把疊加後的瓦片資料返回給前端。
合併CAD圖形建立協同圖形
此方式是通過組合的引數,在後臺根據引數把不同的CAD圖合成一個新的組合圖形。看查一張圖時,檢視的是組合後的圖形。
兩者的優缺點比較如下:
WMS服務組合圖形: 疊加顯示過程中速度快;組合圖形太多時效率低;後期查詢資料時不方便(涉及到多個圖查詢)
合併CAD圖形建立協同圖形: 疊加顯示過程速度較慢(在後臺要重新建立新圖形); 建立完成後和組圖圖形多少沒關係了;後期查詢方便
結論
在實時疊加展示的時候,採用WMS服務組合圖形
,引數選擇完成,真正在建立一張圖協同圖形時,採用合併CAD圖形建立協同圖形
實現步驟
1、上傳基礎圖形
開啟 (
需要注意的是,要想實現圖形疊加組合到一起,應確保上傳的圖形的範圍是同一個座標系範圍的。
2、建立協同圖形
在左側列表中顯示要疊加的圖形和圖層。這裡在選擇疊加的時候,用的是WMS服務組合圖形
選擇完成後,點選建立協同圖形
合併CAD圖形建立協同圖形
,處理完成後,給協同圖形,新建一個名稱即可。
這時候協同圖形已建立好。
3、更新協同圖形
當協同圖形所依賴的圖形更新時,開啟協同圖形會自動更新至最新版本。
要更新協同圖形,需要對所依賴的圖形進行更新。
更新有兩種方式:
(1)在CAD裡面修改圖形,然後在對應圖形那選擇上傳更新圖形即可。
(2) 也可以線上繪圖,儲存至後臺更新CAD圖形
在”儲存“的提示框中選擇”否“,稍等後,圖形會自動在後臺根據繪製的實體建立新的實體物件,並更新CAD圖形,同時更新此圖版本。
這時候,我們點選檢視剛建立的協同圖形,就會自動的更新成最新版本了!(版本有更新時,會自動在後臺處理圖形,需稍等下,下次無需等待)。
自此,一個線上製圖並自動更新協同一張圖的功能就此完成,是不是操作很簡單?!
4、展望
唯傑地圖(vjmap)做為一個平臺,沒有就使用者和許可權部分進行封裝;所以上面的方案只能做為一個輕量級的解決方案。
實際中,會有不同使用者和不同許可權的設定。這就需要利用vjmap提供的sdk對上面的方案進行進一步的封裝。可能需要考慮的幾點有:
(2)在使用者登入後,上傳的圖形可以和使用者名稱相關聯。把圖形名稱和使用者名稱的關係儲存進自己後臺,這樣不同的使用者登入後,能看到的是自己的圖形,沒有許可權或更新其他使用者的圖形。
(3)根據業務需求對許可權進行授權。
有需要的朋友可以在線上傳圖形建立屬於自己的協同圖形。上面的案例程式碼已開源。訪問 (