到目前為止,Cesium開(kāi)發(fā)課程的篇幅已經(jīng)學(xué)完四分之三了,大家如果有什么問(wèn)題可以私信我或者加我微信(個(gè)人博客首頁(yè)有)進(jìn)群溝通,有時(shí)會(huì)比較忙來(lái)不及回復(fù)大家,請(qǐng)大家見(jiàn)諒,忙完之后我會(huì)盡量回復(fù)大家的,請(qǐng)大家多留言多溝通,共同學(xué)好Cesium,快速實(shí)現(xiàn)上層應(yīng)用的功能開(kāi)發(fā)。
回顧最近學(xué)習(xí)的工具篇,我們分成了六個(gè)章節(jié),分別學(xué)習(xí)了Cesium的組件(微件)重寫(xiě)、事件應(yīng)用、相機(jī)控制、量測(cè)工具與調(diào)試面板、與第三方庫(kù)的集成,以及源碼編譯打包相關(guān)知識(shí)和實(shí)戰(zhàn)。
第一講: 針對(duì)Cesium自帶的組件homeButton、Geocoder、BaseLayerPicker,我們?cè)诓恍薷脑创a的基礎(chǔ)上,而是通過(guò)重寫(xiě)相關(guān)方法的方式,實(shí)現(xiàn)了這三個(gè)組件功能的覆寫(xiě),滿足了實(shí)際的業(yè)務(wù)需求。詳情可戳Cesium開(kāi)發(fā)工具篇 | 01組件重寫(xiě)
第二講: 主要以鼠標(biāo)事件、相機(jī)事件、場(chǎng)景渲染事件為例,來(lái)講解Cesium的事件應(yīng)用。鼠標(biāo)事件主要是通過(guò)實(shí)例化類ScreenSpaceEventHandler,并注冊(cè)鼠標(biāo)單擊、雙擊、右擊等操作,來(lái)實(shí)現(xiàn)相應(yīng)坐標(biāo)拾取、要素拾取功能,并介紹了直接利用Cesium自帶的selectedEntityChanged事件,直接獲取選中實(shí)體的信息。詳情可戳Cesium開(kāi)發(fā)工具篇 | 02事件應(yīng)用
第三講: 當(dāng)然,在實(shí)際的三維應(yīng)用系統(tǒng)中,相機(jī)的飛行定位是必不可少的,而在這一講中,我詳細(xì)的介紹了Viewer、Camera類中有關(guān)相機(jī)定位的方法和參數(shù)說(shuō)明,尤其是對(duì)相機(jī)的heading、pitch、roll、range參數(shù)進(jìn)行了重點(diǎn)講解,最后,通過(guò)一個(gè)簡(jiǎn)單的示例應(yīng)用,說(shuō)明了建議采用viewer.flyTo方法的原因。詳情可戳Cesium開(kāi)發(fā)工具篇 | 03相機(jī)控制
第四講: 這一講比較簡(jiǎn)單,主要是針對(duì)測(cè)量工具進(jìn)行講解,并以量測(cè)普通的直線距離、多邊形面積為例,說(shuō)明了大概的實(shí)現(xiàn)思路。同時(shí),也給大家介紹了Cesium自帶的工具CesiumInspector和Cesium3DTilesInspector。詳情可戳Cesium開(kāi)發(fā)工具篇 | 04量測(cè)工具與調(diào)試面板
第五講: 為了增強(qiáng)Cesium的可視化能力,本講主要給大家講解了Cesium如何和Three.js、Echarts、heatmap.js以及空間分析庫(kù)Turf.js進(jìn)行集成,發(fā)揮每個(gè)庫(kù)的各自優(yōu)勢(shì),達(dá)到更好的展示效果。詳情可戳Cesium開(kāi)發(fā)工具篇 | 05與第三方庫(kù)的集成
第六講: 工具篇的最后一講,講解了Cesium是如何打包構(gòu)建,生成庫(kù)文件的。有時(shí)候,我們可能需要修改Cesium源碼新增或修改一些功能,這個(gè)時(shí)候就需要我們重新生成庫(kù)文件,重新去引用了。這一講,首先我們簡(jiǎn)單地介紹了常用的打包工具gulp、webpack和rollup,然后詳細(xì)的講解了Cesium打包(執(zhí)行yarn release)過(guò)程中都執(zhí)行了哪些命令以及具體做了什么。詳情可戳Cesium開(kāi)發(fā)工具篇 | 06Cesium源碼編譯打包
Cesium開(kāi)發(fā)工具篇到此就結(jié)束了,下一講我們就開(kāi)始進(jìn)入Cesium開(kāi)發(fā)高級(jí)篇,請(qǐng)大家耐心等待,我們下一講見(jiàn)。