2025-03-28 01:32:39
创建物体
在ThingJS中,可以动态创建或删除 Thing、Marker、Box等常见物体,他们大多继承自 BaseObject 。本章先以创建 Thing 物体为例,讲解创建对象时所需要的参数,其他各类对象会在相应章节中进行具体讲解
对象创建与删除
创建物体;
var truck = app.create({type: "Thing",name: "truck",position: [-5, 0, 0],url: "https://www.thingjs.com/static/models/truck/",complete: function() {删除物体
truck.destroy();注意事项:
有时候,我们经常会说制作场景,上传场景,下载场景,加载场景,这里的场景其实就是园区,我们通常也会简称为"场景"。
查看示例
示例效果如下图所示:
创建物体参数
创建的物体参数可以分为以下三种:通用参数、特定物体类型(type)的专属参数、系统其他功能。
通用参数:
注意事项
为了更清晰明确的对用户动态创建的物体对象进行管理,建议创建物体对象时,显式指明该物体对象的 parent。如果没有显式填写parent时:
如果没有开启系统层级,则该物体的父亲默认是 root (不会是园区 Campus )
注册层级后创建物体不再默认指定父物体,若需要添加到父物体上,通过设置parent参数指定父物体,不指定默认添加到root下。
type:该物体用什么物体类来创建
id:该物体的编号
name:物体的名字
position:设置世界位置
localPosition:设置在父物体下的相对位置,和 position 只能输入一个
angles:设置世界坐标系下三轴旋转角度,例如:angles:[90,45,90] ,代表在世界坐标系下物体沿X轴旋转90度,沿Y轴旋转45度,沿Z轴旋转90度
scale:设置相对自身坐标系下的缩放比例
parent:设置父物体是谁
特定物体类型(type)的专属参数,这里只列了 “Thing” 物体专属参数,其他物体种类参数可在 本页下方 中查看
url :物体模型资源路径,这个是 “Thing” 物体需要的参数
系统其他功能:
complete:初始化完成后的函数回调
创建物体参数
ThingJS 中的大多数对象基本上都是继承自 BaseObject ,BaseObject 提供了 ThingJS 对象的基本能力。
BaseObject 派生出很多子类,常见的物体种类详见如下:
模型物体:Thing;
基本形体:Box; Sphere; Plane; Cylinder; Tetrahedron; (点击查看示例)

请点击输入图片描述
建筑相关: Campus; Building; Floor; Room;
界面: UIAnchor; Marker; WebView;
粒子: ParticleSystem
线: Line; RouteLine;
其他: Heatmap;
注意事项
在 CamBuilder 中摆放的园区、建筑、楼层、房间、物体等,同步到 ThingJS 中,会自行判断物体类,分别对应类为:campus、building、floor、room、thing。也可将默认类转换为自定义类。
在ThingJS 中创建的园区、建筑、楼层、房间、物体等,可创建自定义类
判断对象物体类
每个物体类都有它自己的类识别属性。
比如 `Building` 物体,使用 `instanceof THING.Building` 方法进行判断。
2025-03-28 02:44:32
可以自己上传obj模型,jpg,png,gif,js,css,html,json格式的资源文件
客户端上传

thingjs网站上传

2025-03-28 03:18:46