Editor
2023年6月28日大约 3 分钟
Editor
引擎内置编辑器,继承自BaseEvent,通过Viewer实例访问获取。
注意
如果需要历史记录器生效,物体的所有操作如添加、删除、更新等,应通过editor实现。
属性成员
selected
选中对象
- 类型:
THREE.Object3D
history
历史记录器
- 类型:
VT.History
drawer
绘制控件
- 类型:
VT.DrawControl
绘制控件
方法
setEnable
是否开启编辑器,编辑器默认关闭
- setEnable(enable)
- 类型:
Function
- 参数:
- enable
{Boolean}
控件对象
- enable
- 返回:无
viewer.editor.setEnable(true);
eachSelected
遍历选中物体
- eachSelected(callback)
- 类型:
Function
- 参数:
- callback
{Function}
回调方法,参数为选中物体
- callback
- 返回:无
// 遍历选中物体,并打印出名称
viewer.editor.eachSelected((thing) => {
console.log(thing.name);
});
deleteSelected
删除选中对象
- deleteSelected()
- 类型:
Function
- 参数:无
- 返回:无
draw
激活绘制工具并根据参数绘制
- draw(option)
- 类型:
Function
- 参数:
- option
{Object}
绘制参数,除type为绘制类型,option内的其它参数均为该物体的参数- type
{String}
必选,绘制类型,为THING物体对象
- type
- option
- 返回:无
// 绘制点位
viewer.editor.draw({
type: "billboard",
material: {
map: {
image: "thing-point"
}
}
});
endDraw
结束绘制
- endDraw()
- 类型:
Function
- 参数:无
- 返回:无
objectByUuid
根据UUID获取物体对象
- objectByUuid(uuid)
- 类型:
Function
- 参数:
- uuid
{String}
对象唯一编号
- uuid
- 返回:无
select
选中物体对象
- select(object)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象
- object
- 返回:无
deselect
取消选中
- deselect()
- 类型:
Function
- 参数:无
- 返回:无
removeTransformControls
移除变化控件
- removeTransformControls()
- 类型:
Function
- 参数:无
- 返回:无
updateObject
更新对象,执行本方法将记录到历史记录中。
注意
暂不支持历史记录的更新属性包括:dimensionHelper、shader、video、style、box、edge、userData
- updateObject(object, config)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象 - config
{Object}
配置项,支持的更新如下
- object
- 返回:无
const {
uuid,
name,
visible,
renderOrder,
position,
rotation,
scale,
center,
frustumCulled,
layers,
properties,
interact,
receiveShadow,
castShadow,
box,
edge,
geometry,
style,
userData,
locked,
dimensionHelper,
} = config;
// 更新模型位置
viewer.editor.updateObject(model, {position: [15, 20, 11]});
// 更新模型名称
viewer.editor.updateObject(model, {name: "newName"})
add
添加物体对象
- add(object, parent)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象 - parent
{VT.Thing | THREE.Object3D}
父节点
- object
- 返回:无
move
移动对象
- move(object, parent, before)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象 - parent
{VT.Thing | THREE.Object3D}
父节点 - before
{Integer}
插入的序列号
- object
- 返回:无
remove
删除对象
- remove(object)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象
- object
- 返回:无
clone
克隆对象
- clone(object)
- 类型:
Function
- 参数:
- object
{VT.Thing | THREE.Object3D}
物体对象
- object
- 返回:无
undo
撤消上一步动作
注意
如果需要历史记录器生效,物体的所有操作如添加、删除、更新等,应通过editor实现。
- undo()
- 类型:
Function
- 参数:无
- 返回:无
redo
重新做一次上一次取消的动作
注意
如果需要历史记录器生效,物体的所有操作如添加、删除、更新等,应通过editor实现。
- redo()
- 类型:
Function
- 参数:无
- 返回:无
getRootTree
获取场景树
- getRootTree(option)
- 类型:
Function
- 参数:
- option
{Object}
过滤参数,均可选- keyword
{String}
名称过滤关键字 - type
{String}
物体类型过滤关键字
- keyword
- option
- 返回:
{Array}