Skyline WEB端开发4——添加事件
skyline中有很多自带的事件可以进行调用,今天给大家介绍几种常用的事件
一、Open()
打开指定工程
//初始化加载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); } });
二、OnProjectLoadFinished()
在我们执行SGWorld的Open方法,加载完成一个FLY工程后,就会触发这个事件。
也就是说,我们通过这个事件可以判断在什么时间完成了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!"); }
三、OnFrame()
帧被渲染前发送事件,允许客户端以帧运动方式执行操作(例如,移动地面对象)。每一帧移动都会触发该方法。
//添加事件 sgworld.AttachEvent("OnFrame",OnFrame); //进行调用 function OnFrame() { if(lable != null) { lable.Position = lable.Position.Move(100, -90, $("#pitch").val()); } }
四、OnLButtonClicked()
当用户点击鼠标左键时触发
//注册鼠标左键点击事件 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 坐标。坐标为屏幕坐标,三维窗口左上角为起始坐标
五、OnLButtonDblClk()
当用户双击鼠标左键时触发事件
与四、OnLButtonClicked()类似
六、OnLButtonDown()
当用户按下鼠标左键时触发事件
与四、OnLButtonClicked()类似
七、OnLButtonUp()
用户释放鼠标左键时触发事件
与四、OnLButtonClicked()类似
八、OnMButtonDblClk()
用户双击鼠标中键时触发事件
与四、OnLButtonClicked()类似
九、OnMButtonDown()
用户按下鼠标中键时触发事件
与四、OnLButtonClicked()类似
十、OnMButtonUp()
用户释放鼠标中键时触发事件
与四、OnLButtonClicked()类似
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端