上一篇,我們介紹了當(dāng)我們添加一個(gè)Entity時(shí),通過Graphics封裝其對(duì)應(yīng)參數(shù),通過EntityCollection.Add方法,將EntityCollection的Entity傳遞到DataSourceDisplay.Visualizer中。本篇?jiǎng)t從Visualizer開始,介紹數(shù)據(jù)的處理,并最終實(shí)現(xiàn)渲染的過程。

萬(wàn)碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

CesiumWidget.prototype.render = function() {    if (this._canRender) {        this._scene.initializeFrame();        var currentTime = this._clock.tick();        this._scene.render(currentTime);
    } else {        this._clock.tick();
    }
};

萬(wàn)碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

       如上,在渲染階段,分別調(diào)用了clock.tick()和scene.render()。在這兩個(gè)階段中都有很多跟Entity相關(guān)的方面,我們分別闡述其大概過程

Viewer.prototype._onTick

       我們先溫習(xí)一下上篇的兩個(gè)知識(shí)點(diǎn):DataSourceDisplay初始化的時(shí)候會(huì)調(diào)用defaultVisualizersCallback,會(huì)針對(duì)所有Geometry的Type創(chuàng)建對(duì)應(yīng)的Visualizer;EntityCollection.Add每次添加一個(gè)Entity,會(huì)通過一系列事件傳遞,將該Entity傳遞到每一個(gè)Visualizer,保存到Visualizer中_addedObjects隊(duì)列中。

萬(wàn)碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

function Viewer(container, options) {
    event
        
		

網(wǎng)友評(píng)論