本發明屬于數據處理,具體涉及一種動態立體光束范圍投影到平面gis地圖的方法、系統、設備和介質。
背景技術:
1、當前系統大多使用bs架構,以瀏覽器作為系統的訪問客戶端,因客戶端的機器性能參差不齊,地圖使用gis的主要信息源呈現,大多還沿用2d的平面投影技術,無法呈現真實3d的立體效果,如光源到光束的立體投影、衛星到波束的立體投影,特別是需要實時動態變化的立體渲染效果,存在動態數據交互量大,客戶端效果渲染慢的問題;需要提供一種立體投影算法和動態數據交互技術,解決立體光束范圍投影到平面gis地圖的動態效果。
技術實現思路
1、本發明針對現有技術中的不足,提供一種動態立體光束范圍投影到平面gis地圖的方法、系統、設備和介質,通過幾何對象的拆分和合并操作,形成光束立體投影坐標范圍,再結合websocket實時通訊、緩存時間變化坐標和gzip壓縮技術,實現立體光束在平面gis地圖的呈現,不需客戶端使用3d技術,降低客戶端的性能要求,實現光束動態投影渲染效果,提高客戶端的響應速度和用戶體驗。
2、為實現上述目的,本發明采用以下技術方案:
3、一種動態立體光束范圍投影到平面gis地圖的方法,包括以下步驟:
4、s1、獲取移動光源和光束范圍的地理坐標;
5、s2、將光束范圍的所有相鄰2個坐標點與光源點坐標相連,形成多個三角形對象;
6、s3、將所有三角形對象合并,形成立體投影幾何對象;
7、s4、將立體投影幾何對象的地理坐標推送給應用層;
8、s5、將立體投影幾何對象的地理坐標轉換成地圖平面坐標,并將光束投影和光束范圍渲染到平面gis地圖。
9、為優化上述技術方案,采取的具體措施還包括:
10、進一步地,s1中,所述獲取移動光源和光束范圍的地理坐標具體為:
11、實時采集移動光源和光束范圍的地理坐標,每個時間點的地理坐標包含光源映射到gis地圖的地理坐標a0(x0,y0)以及光束投射到gis地圖的范圍地理坐標列表a1(x1,y1)、a2(x2,y2)、a3(x3,y3),……,an(xn,yn),式中,an表示光束投射到gis地圖的范圍中的第n個點,xn表示第n個點的橫坐標,yn表示第n個點的縱坐標。
12、進一步地,s2具體為:
13、以光源點為三角形頂點,分別與所有光束范圍的相鄰2個坐標連接,依次遍歷光束范圍的n個坐標點,生成n個geometry格式的三角形對象(a0、a1、a2)、(a0、a2、a3)、……、(a0、an-1、an)和(a0、an、a1)。
14、進一步地,s3具體為:
15、通過unaryunionop.union()方法逐個將geometry格式的三角形對象進行合并,生成一個從光源點到光束范圍的geometry格式的立體投影幾何對象,當光束范圍有n個坐標時,形成的光束投影范圍坐標數為(0.5*n+1)。
16、進一步地,s4具體為:
17、服務器端啟動websocket監聽服務,接收客戶端的實時通信請求,鑒權成功后,建立雙向持久連接通道,實時推送變化的立體投影幾何對象的地理坐標;不同時間點的立體投影幾何對象的地理坐標進行緩存,并利用gzip壓縮技術進行壓縮,對連接成功的客戶端推送壓縮的立體投影幾何對象的地理坐標;客戶端接收到壓縮的立體投影幾何對象的地理坐標后解壓。
18、進一步地,s5具體為:
19、使用openlayers作為平面gis地圖的前端組件,將立體投影幾何對象的地理坐標轉換成地圖平面坐標;
20、使用使用openlayers中的墨卡托投影方法來展示平面gis地圖,將不同時間點的光束投影和光束范圍渲染到平面gis地圖,實現動態追蹤。
21、本發明還提出一種動態立體光束范圍投影到平面gis地圖的系統,包括:
22、地理坐標解析模塊,用于獲取移動光源和光束范圍的地理坐標;
23、地理坐標拆分幾何對象模塊,用于將光束范圍的所有相鄰2個坐標點與光源點坐標相連,形成多個三角形對象;
24、幾何對象合并成地理坐標模塊,用于將所有三角形對象合并,形成立體投影幾何對象;
25、動態實時坐標信息推送模塊,用于將立體投影幾何對象的地理坐標推送給應用層;
26、坐標轉換和地圖渲染模塊,用于將立體投影幾何對象的地理坐標轉換成地圖平面坐標,并將光束投影和光束范圍渲染到平面gis地圖。
27、本發明還提出一種電子設備,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行計算機程序時,實現如上所述的動態立體光束范圍投影到平面gis地圖的方法。
28、一種計算機可讀存儲介質,存儲有計算機程序,所述計算機程序使計算機執行如上所述的動態立體光束范圍投影到平面gis地圖的方法。
29、本發明的有益效果是:
30、本發明通過幾何對象的拆分和合并操作,形成光束立體投影坐標范圍,再結合websocket實時通訊、緩存時間變化坐標和gzip壓縮技術,實現立體光束在平面gis地圖的呈現,不需客戶端使用3d技術,降低客戶端的性能要求,實現光束動態投影渲染效果,提高客戶端的響應速度和用戶體驗。
1.一種動態立體光束范圍投影到平面gis地圖的方法,其特征在于,包括以下步驟:
2.如權利要求1所述的動態立體光束范圍投影到平面gis地圖的方法,其特征在于,s1中,所述獲取移動光源和光束范圍的地理坐標具體為:
3.如權利要求2所述的動態立體光束范圍投影到平面gis地圖的方法,其特征在于,s2具體為:
4.如權利要求2所述的動態立體光束范圍投影到平面gis地圖的方法,其特征在于,s3具體為:
5.如權利要求1所述的動態立體光束范圍投影到平面gis地圖的方法,其特征在于,s4具體為:
6.如權利要求1所述的動態立體光束范圍投影到平面gis地圖的方法,其特征在于,s5具體為:
7.一種動態立體光束范圍投影到平面gis地圖的系統,其特征在于,包括:
8.一種電子設備,其特征在于,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行計算機程序時,實現如權利要求1-6任一項所述的動態立體光束范圍投影到平面gis地圖的方法。
9.一種計算機可讀存儲介質,存儲有計算機程序,其特征在于,所述計算機程序使計算機執行如權利要求1-6任一項所述的動態立體光束范圍投影到平面gis地圖的方法。