网站建设资讯

NEWS

网站建设资讯

TE中如何实现动态对象创建

这篇文章主要为大家展示了“TE中如何实现动态对象创建”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“TE中如何实现动态对象创建”这篇文章吧。

员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。创新互联公司坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供成都网站设计、网站制作、微信公众号开发、电商网站开发,重庆小程序开发公司,软件定制网站等一站式互联网企业服务。

     一般在系统的开发中,TE创建动态对象是用Creator下的CreateDynamicObject,这个方式是sdk封装好的,但是在拐弯方面的调整需要一定的技巧。

     TE的样例中,还提供了另一种方式的动态对象创建,并且有示例的JavaScript脚本代码,这个动态对象的创建思路是通过创建一个模型,根据时间的变化,动态的更改模型的位置,位置的变化在onframe中,变化频率是很高的,显示出来的效果也比较连贯。

     样例JavaScript代码比较简单,如下所示:

//创建一个默认位置

var pos = _sgworld.Creator.CreatePosition(-122.38050, // x

37.62331, // y

40.0, // height

        3, // height type

297.0, // yaw

15.0, // pitch

0, // roll

0 // dist

);

//在默认位置上创建一个模型

model = _sgworld.Creator.CreateModel(pos, "D:\\c5.xpc", 1);

model.Attachment.AutoDetach = false;

//飞到模型

_sgworld.Navigate.FlyTo(model);

//在onframe中实现,具体挂接onframe参见api文档

function sOnFrame() {

//判断model对象不为空

 if(model) {

//根据距离和角度移动模型位置,样例中是绕圈移动模型

var distToMove = (400 * 1000 / 3600) * (new Date().getTime() - time.getTime()) / 1000; 

model.Position = model.Position.Move(distToMove, model.Position.Yaw + 0.1, model.Position.Pitch);

//更新时间

time = new Date();

}

效果图:

TE中如何实现动态对象创建

以上是“TE中如何实现动态对象创建”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网页标题:TE中如何实现动态对象创建
当前URL:http://cdweb.net/article/gohsgg.html