Model
小于 1 分钟
Model
模型物体,继承自Thing,拥有Thing
、THREE.Object3D
一切属性和方法。
构造器
new VT.Model({
// 模型类型,支持 gltf、fbx、obj
modelType: "gltf",
// 模型地址
src: "",
// 可选择层级
selectLevel: 1,
// 动画时间比例
animationTimeScale: 1,
// 是否开启动画
animationEnable: false,
// 模型大小
size: null,
// 是否存入离线数据库,页面刷新后优先从离线数据库加载
cache: false,
})
属性成员
isSync
- 类型:
{Boolean}
是否异步对象,是,不可修改
isModel
- 类型:
{Boolean}
是否模型物体,是,不可修改
selectLevel
- 类型:
{Integer}
选择层级
animations
- 类型:
{Array}
动画数组
src
- 类型:
{String}
模型地址
方法
initExplode
初始化展开效果模型,在调用explodeModel
展开模型方法前,必须要先调用本方法。
- initExplode()
- 类型:
Function
- 参数:无
- 返回:无
explode
展开模型,模型构件爆炸效果
- explode(scalar)
- 类型:
Function
- 参数:
- scalar
Number
比例
- scalar
- 返回:无
// 添加模型
const model = new VT.Model({
modelType: "gltf",
src: "./resources/models/1.gltf"
});
viewer.scene.add(model);
// 初始化和展开模型
model.on("loaded", () => {
model.initExplode();
model.explode(2.0);
});
// 展开模型
事件
loaded
从远程加载到本地后触发
model.addEventListener("loaded", () => {
// 加载完成
});