跳至主要內容

Model

小于 1 分钟

Model

模型物体,继承自Thing,拥有ThingTHREE.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 比例
  • 返回:无
// 添加模型
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", () => {
    // 加载完成
});
上次编辑于:
贡献者: dashun