原创 cesium源碼研究關於ShaderSource的replaceMain方法巧妙用處

在做底層擴展開發的時候,有時候我們想從外部傳入一段shader代碼,那該如何將該段shader代碼加入main函數中呢?最笨的方法就是利用正則表達去截取字符串,然後加上需要添加的shader代碼,最後將所有的字符串拼裝到一起。下

原创 傾斜攝影測量單體化思路

摘自:聶贊,文琳,黃山,李鳳華.傾斜攝影的單體化建模研究[J].地理空間信息,2019,17(03):113-114+122+11. 傾斜攝影模型單體化主要包括矢量切割單體化、矢量疊加單體化和模型重建單體化 3 種方式。 思路一

原创 關於postgis創建表指定geom類型的問題

今天在羣裏看到一位同學,在問爲啥創建表格空間字段類型爲geometry,而查詢出來的卻是point類型?以至於在udig中不能配色,下面說一下原因 1 udig中無法配色原因所在? 由於在表中geometry的類型選擇爲G

原创 OpenLayers中的圖片信息跨域你瞭解麼?

或許你都沒有聽說過圖片信息跨域,不是都是請求跨域?圖片跨域幾個意思???當你加載第三方的切片時候想通過點擊獲取該點擊處圖層,這時候就會給你報一個圖片信息跨域錯誤,錯誤如下圖: 錯誤這樣的: 用了啥方法報了該錯誤??使用了以下

原创 Cesium(十二)webpack+vue+cesium加載gltf(不推薦)

最近一直在用webpack+vue+cesium,有時感覺很方便,但是有些東西確實感覺很噁心。對於我這麼一個webpack+vue用的不怎麼熟練的人,報錯總是很頭疼。這還不是令人無語的。最令人無語的是它不報錯,也沒有預期的效果。

原创 Cesium(十三)封裝路徑漫遊類

主要封裝漫遊類,不涉及繪製路線,繪製路線需要另外封裝,以後會貼出代碼,下面給出封裝的類,以及調用示例: 一、調用示例 1、初始化 let roaming=new Roaming(this.viewer,{ 'mod

原创 webpack+vue+cesium加載glTF或者glb(推薦)

一、webpack.dev.conf配置 new CopyWebpackPlugin([ { from: path.join('./static', 'model'), to: 'model3D'}]) 二、目錄樹結構 三、調用

原创 Cesium(十一)計算近似當前層級(2D地圖概念)&&計算當前Extent

下面分享兩個計算層級和Extent的代碼,廢話不多說直接上代碼: 一、計算當前Extent(前提一定要有tile圖層) viewer.clock.onTick.addEventListener(function () {

原创 WebGL關於着色器傳值的幾種方式總結

最近兩週都在看WebGL,至於爲什麼要看WebGL???我是想看Cesium源碼,發現要想看懂Cesium的源碼。需要WebGL知識儲備,因爲Cesium是基於WebGL開發的三維api封裝,但是如果想完全弄懂Cesium,僅靠

原创 頭疼又有趣的座標系

原文鏈接:https://www.cnblogs.com/onsummer/p/7451128.html 原文地址:https://www.cnblogs.com/onsummer/p/

原创 分享一個根據csv表格有地名和權重值的時候如何通過python生成百度熱力圖所要求的數據格式

import pandas as pd import json import csv from urllib.request import urlopen, quote import requests #獲取城市的地理編碼 de

原创 Openlayer加載切片地圖改變地圖樣式

數據是GIS的靈魂,沒有數據GIS一無用處。在我國對地理數據管控極爲嚴格,購買數據也是及其昂貴的,在webgis開發的過程種,爲了節省成本一般選擇加載第三方的底圖,力圖天地圖、谷歌、OSM等。但是這些底圖已經渲染成樣式了。我們如

原创 Cesium(十)通過加載geoserver發佈的數據進行渲染水面(Primitive方式)

本文主要是通過加載geoserver的geojson數據來獲取Primitive的座標來渲染水面,我將效果封裝一個類,方面調用 一、效果 二、封裝類 import Cesium from 'cesium/Cesium' exp

原创 Cesium關於ellipse中的semiMinorAxis和semiMajorAxis使用回調屬性&&Vue中使用圖片

Cesium中使用圓的擴散,可以採用回調函數來進行繪製,這樣可以可以獲得動態擴散的效果。但是做的過程中遇到一個長半軸小於短半軸的報錯,在下面給出報錯以及解決方案 報錯圖片: 錯誤代碼: 錯誤原因: semiMinorAxi

原创 Cesium(九)鷹眼功能

Cesium鷹眼實現的功能,有兩種方式:一種聲明兩個viewer,另一種就是通過Leaflet。這裏我們採用第二種方式,用到一位道友自定義鷹眼插件,這裏我們稍微改進一下(ES6方式),下面我們來介紹一下如何實現 一、效果圖