ningshuxia
2025-03-27 afbafeecc1325bff849a17fb63b9b2b65b48ddf1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
var _wt = null;//路径漫游
 
//初始化路径漫游
function initWalkThrough() {
    var config = new Glodon.Bimface.Plugins.Walkthrough.WalkthroughConfig();
    config.viewer = _viewer;
    config.stopCallback = stopWalkThroughCallBack;
    _wt = new Glodon.Bimface.Plugins.Walkthrough.Walkthrough(config);
    _wt.setKeyFrameCallback(keyFrameCallBack);
}
 
//路径漫游停止回调函数
function stopWalkThroughCallBack() {
    callbackObj.walkThroughStoped();
}
 
//播放回调帧
function keyFrameCallBack(index) {
    callbackObj.keyFrameCallBack(JSON.stringify(index));
}
 
//添加关键帧(返回关键帧)
function addKeyFrame() {
    if (_wt == null)
        initWalkThrough();
    var keyFrame = _wt.addKeyFrame();
    //return keyFrame;//后台接收为dynamic类型 ExpandoObject
    return JSON.stringify(keyFrame);
}
 
//清除关键帧
function clearKeyFrames() {
    if (_wt == null)
        return;
    _wt.clearKeyFrames();
}
 
//获取所有关键帧
function getKeyFrames() {
    if (_wt == null)
        return null;
    var allKeyFrames = _wt.getKeyFrames();
    return JSON.stringify(allKeyFrames);
}
 
//暂停路径漫游
function pauseWalkThrough() {
    if (_wt == null)
        return;
    _wt.pause();
}
 
//开始路径漫游
function playWalkThrough(id) {
    if (_wt == null)
        return;
    _wt.play(id);
}
 
//移除关键帧
function removeKeyFrame(index) {
    if (_wt == null)
        return;
    _wt.removeKeyFrame(index);
}
 
//设置关键帧列表
function setKeyFrames(list) {
    if (_wt == null)
        initWalkThrough();
    _wt.setKeyFrames(list);
}
 
//设置路径漫游时间
function setWalkthroughTime(time) {
    if (_wt == null)
        initWalkThrough();
    _wt.setWalkthroughTime(time);
}
 
//开始路径漫游并设置漫游时间
function playWalkThroughWithTime(time, id) {
    setWalkthroughTime(time);
    playWalkThrough(id);
}