持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第11天,点击查看活动详情
“金秋十月,我要连续30天更文,做劳模,拿手机摄影神器!点击查看活动详情 “即可成功参与
ThingJs开发教程
APP对象
App 对象是 ThingJS 库的功能入口,用于 3D 场景初始化
1、创建APP对象的语法:
var app = new THING.App(); //通过创建APP对象,对3D场景进行初始化
2、加载园区场景代码:
var app = new THING.App({
url: 'https://www.thingjs.com/static/models/factory', // 场景地址,园区的相对路径
background: '#000000',
env: 'Seaside',
});
3、加载地图场景代码:
var app = new THING.App(); // 3D场景初始化
app.background = [0, 0, 0]; // 设置场景背景为黑色
//引用地图组件脚本
THING.Utils.dynamicLoad(['https://www.thingjs.com/uearth/uearth.min.js'], function () {
app.create({
type: 'Map',
url: 'myMapDirectory',
complete: function (event) {
console.log(event.object.userLayers.length);//日志窗口显示地图层级数量
}
});
});
常用APP对象属性:
常用APP对象方法:
创建/销毁物体
在 3D 场景初始化后,我们可以通过 create() 方法来创建物体,例如,加载模型、添加标记、创建基本形体等。我们还可以通过 create() 方法来加载园区,例如,添加多个园区。通过 destroy() 方法,可以销毁物体,即在场景中删除物体
创建物体:
//通过 create() 方法创建物体,并通过对象名称和属性,来添加所创建的物体属性
var obj = app.create({
name: value,
})
销毁物体:
obj.destroy();
创建物体示例代码:
var app = new THING.App(); // 3D场景初始化
app.background = '#F0FFFF'; //设置背景颜色
//创建物体(即货车)
var obj = app.create({
type: "Thing", //模型类型
name: "truck", //模型名称
position: [0, 0, 0],
url: "models/truck/", //模型的相对路径
complete: function() {
console.log("truck created!"); //创建完成后日志窗口显示返回信息
}
});
app.camera.position = [-15, 5, -20] //设置摄像机位置来调整预览视角
//运行项目后,在预览窗口,可以展示出创建的物体
这里,需要说明的是:我们通过最后一行代码设置摄像机的位置,来调整预览视角。如果不添加此行代码,则默认状态下摄像机的位置跟所创建的物体一致,也就是说摄像机的镜头贴在物体上,那么,此时我们可以将鼠标滚轮回滚,进行缩放调节,这样就可以在预览窗口显示出所加载的模型了
销毁物体示例代码:
// 创建按钮,点击按钮可销毁物体
var button = new THING.widget.Button('销毁物体', function() {
obj.destroy();
});
在上面的代码的基础上,将下面的代码输入项目文件中,即可为场景添加销毁物体的按钮。点击按钮,可以销毁物体