1. 爆炸效果

位于:BOS3D. Plugins. Blast, 爆炸效果类继承自火焰效果类,火焰效果类中的参数、方法都可以使用。以下的接口说明为爆炸效果独有的内容。

1.1. 实例化

初始化爆炸效果

名称 说明 类型 是否必须 示例
opt 爆照效果参数对象 对象 Object {}
opt.risingSpeed 爆炸上升速度 Float 300.0
opt.firelifeAge 火焰粒子生命周期 Float 6.0
opt.fireParticles 火焰粒子数目 Number 300
opt.fireOpacityTween 火焰粒子透明时间插值对象 对象 Object { "times": [0.7, 2.5], "values": [0.8, 0.0] }
opt.smokelifeAge 烟雾粒子生命周期 Float 6.0
opt.smokeParticles 烟雾粒子数目 Number 300
opt.smokeOpacityTween 烟雾粒子透明时间插值对象 对象 Object { "times": [0.7, 2.5], "values": [0.8, 0.0] }
var blast = new BOS3D.Plugins.Blast(opt);
viewer3D.addExternalObject("blast", blast);

1.2. 属性

1.3. 方法

1.3.1. run

执行一次火焰爆炸效果

名称 说明 类型 是否必须 示例
null null null null
返回值说明 类型 示例
null null

调用方式:

/**
 * 执行一次火焰爆炸效果
 * @function run
 * @return {void}
 */
var blast = new BOS3D.Plugins.Blast();
viewer3D.addExternalObject("blast", blast);
blast.run(4);

1.3.2. runLoop

执行多次或者循环执行爆炸效果

名称 说明 类型 是否必须 示例
timerManager 时间控制器 对象 Object viewer3D.getTimerManager()
interval 循环间隔 Number 毫秒 8000
times 执行次数,0或者<0时,将循环执行 Number 8
返回值说明 类型 示例
null null

调用方式:

/**
 * 执行一次火焰爆炸效果
 * @function runLoop
 * @return {void}
 */
var blast = new BOS3D.Plugins.Blast();
blast.setPosition({
    x: 81154.5416313465,
    y: 65333.943611312025,
    z: 3600
});
viewer3D.addExternalObject("blast", blast);
blast.runLoop(viewer3D.getTimerManager(), 8000, 0);

1.3.3. stop

停止爆炸效果执行,将恢复到初始状态

名称 说明 类型 是否必须 示例
null null null null
返回值说明 类型 示例
null null

调用方式:

/**
 * 停止爆炸效果执行,将恢复到初始状态
 * @function stop
 * @return {void}
 */
var blast = new BOS3D.Plugins.Blast();
blast.stop();

1.3.4. pause

暂停爆炸执行,保留爆炸当前效果状态

名称 说明 类型 是否必须 示例
null null null null
返回值说明 类型 示例
null null

调用方式:

/**
 * 暂停爆炸执行,保留爆炸当前效果状态
 * @function pause
 * @return {void}
 */
var blast = new BOS3D.Plugins.Blast();
blast.pause();

1.3.5. continue

继续执行爆炸效果,恢复暂停的爆炸动画

名称 说明 类型 是否必须 示例
null null null null
返回值说明 类型 示例
null null

调用方式:

/**
 * 继续执行爆炸效果,恢复暂停的爆炸动画
 * @function pause
 * @return {void}
 */
var blast = new BOS3D.Plugins.Blast();
blast.continue();
<!DOCTYPE html>
<html lang="zh-cn">

<head>
    <meta charset="UTF-8">
    <title>demo</title>
    <style>
        body {
            margin: 0;
            overflow: hidden;
            position: fixed;
        }
    </style>
    <link href="http://bos3d.bimwinner.com/static/UI/latest/BOS3DUI.min.css" rel="stylesheet">
</head>

<body>
    <div id="viewport" class="viewport"></div>
    <script>
        const html = document.querySelector("html");
        document.querySelector(".viewport").style.width = html.clientWidth + 'px';
        document.querySelector(".viewport").style.height = html.clientHeight - 1 + 'px';
    </script>
    <script type="application/javascript" src="BOS3D.min.js"></script>
    <script>
        var option = {
            host: "http://bos3d.bimwinner.com",
            viewport: "viewport"
        };
        var viewer3D = new BOS3D.Viewer(option);
        viewer3D.addView("M1598257565598", "he3285593fdc4ea3b91784c5741ff8aa");
        viewer3D.registerModelEventListener(BOS3D.EVENTS.ON_LOAD_COMPLETE, function(event) {
            var blast = new BOS3D.Plugins.Blast();
            blast.setPosition({
                x: 81154.5416313465,
                y: 65333.943611312025,
                z: 3600
            });
            viewer3D.addExternalObject((new Date()).getTime(), blast);
            blast.runLoop(viewer3D.getTimerManager(), 8000, 0);
        });
    </script>
</body>

</html>
版权所有@盈嘉互联(北京)科技有限公司 京ICP备15051988号-9 Copyright © 2022 all right reserved,powered by Gitbook该文件修订时间: 2022-06-27 15:28:06

results matching ""

    No results matching ""