skyline中有不少自帶的事件能夠進行調用,今天給你們介紹幾種經常使用的事件函數
1、Open() spa
打開指定工程code
//初始化加載TerraExplorer工程 $(window).load(function() { try { var flyPath = "C:\\Users\\admin\\Desktop\\SkyglobeLB.fly"; sgworld.AttachEvent("OnLoadFinished", OnProjectLoadFinished); sgworld.Project.Open(flyPath); } catch(ex) { addLog(ex.message); } });
2、OnProjectLoadFinished()對象
在咱們執行SGWorld的Open方法,加載完成一個FLY工程後,就會觸發這個事件。blog
也就是說,咱們經過這個事件能夠判斷在什麼時間完成了FLY工程的加載,而後,咱們就能夠在這個事件函數裏說上一句「Hello World!」或者,再去執行一些其餘操做,好比飛到某個地點,開啓或者關閉某些圖層等等。事件
//加載事件 function OnProjectLoadFinished(){ //默認飛到某一個位置 var Washington = sgworld.Creator.CreatePosition( 116.3912630081, 39.9074812817, 1000, 0, 0.0, // 偏航角 -43.0); // 俯仰角 sgworld.Navigate.FlyTo(Washington);
alert("Hello World!"); }
3、OnFrame()it
幀被渲染前發送事件,容許客戶端以幀運動方式執行操做(例如,移動地面對象)。每一幀移動都會觸發該方法。io
//添加事件 sgworld.AttachEvent("OnFrame",OnFrame); //進行調用 function OnFrame() { if(lable != null) { lable.Position = lable.Position.Move(100, -90, $("#pitch").val()); } }
4、OnLButtonClicked()function
當用戶點擊鼠標左鍵時觸發class
//註冊鼠標左鍵點擊事件 sgworld.AttachEvent("OnLButtonClicked", OnLButtonClicked); //鼠標左鍵點擊事件 function OnLButtonClicked(Flags, X, Y) { alert(Flags + "===" + X + "===" + Y); } //Flags, 定義各類組合鍵被按下, /*MK_LBUTTON = 1 MK_RBUTTON = 2 MK_SHIFT = 4 MK_CONTROL = 8 MK_MBUTTON =16 */ //X,鼠標的 X 座標。座標爲屏幕座標,三維窗口左上角爲起始座標 //Y,鼠標的 Y 座標。座標爲屏幕座標,三維窗口左上角爲起始座標
5、OnLButtonDblClk()
當用戶雙擊鼠標左鍵時觸發事件
與4、OnLButtonClicked()相似
6、OnLButtonDown()
當用戶按下鼠標左鍵時觸發事件
與4、OnLButtonClicked()相似
7、OnLButtonUp()
用戶釋放鼠標左鍵時觸發事件
與4、OnLButtonClicked()相似
8、OnMButtonDblClk()
用戶雙擊鼠標中鍵時觸發事件
與4、OnLButtonClicked()相似
9、OnMButtonDown()
用戶按下鼠標中鍵時觸發事件
與4、OnLButtonClicked()相似
10、OnMButtonUp()
用戶釋放鼠標中鍵時觸發事件
與4、OnLButtonClicked()相似