bc-model-viewer 1.7.7 → 1.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -67,6 +67,43 @@
|
|
|
67
67
|
color: #666;
|
|
68
68
|
margin-top: 15px;
|
|
69
69
|
}
|
|
70
|
+
|
|
71
|
+
.event-log {
|
|
72
|
+
margin-top: 15px;
|
|
73
|
+
padding: 10px;
|
|
74
|
+
background-color: #f0f0f0;
|
|
75
|
+
border-radius: 4px;
|
|
76
|
+
max-height: 150px;
|
|
77
|
+
overflow-y: auto;
|
|
78
|
+
font-size: 12px;
|
|
79
|
+
font-family: monospace;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.event-log-entry {
|
|
83
|
+
margin-bottom: 5px;
|
|
84
|
+
padding: 3px 0;
|
|
85
|
+
border-bottom: 1px solid #ddd;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.event-log-entry:last-child {
|
|
89
|
+
border-bottom: none;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.event-type-start {
|
|
93
|
+
color: #2196F3;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.event-type-progress {
|
|
97
|
+
color: #FF9800;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.event-type-complete {
|
|
101
|
+
color: #4CAF50;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.event-type-error {
|
|
105
|
+
color: #F44336;
|
|
106
|
+
}
|
|
70
107
|
</style>
|
|
71
108
|
</head>
|
|
72
109
|
|
|
@@ -94,6 +131,11 @@
|
|
|
94
131
|
<div class="info">
|
|
95
132
|
点击按钮切换到不同预设场景,每个场景包含不同的相机位置、目标点和可能的图层可见性设置。
|
|
96
133
|
</div>
|
|
134
|
+
<h3 style="margin-top: 20px; font-size: 14px; color: #333;">事件日志</h3>
|
|
135
|
+
<div class="event-log" id="eventLog">
|
|
136
|
+
<!-- 事件日志将在这里动态显示 -->
|
|
137
|
+
事件日志将在此显示...
|
|
138
|
+
</div>
|
|
97
139
|
</div>
|
|
98
140
|
|
|
99
141
|
<script type="module">
|
|
@@ -122,11 +164,49 @@
|
|
|
122
164
|
console.log('模型中的场景:', viewer.scenePageManager.pages);
|
|
123
165
|
console.log('场景数量:', viewer.scenePageManager.pages.length);
|
|
124
166
|
|
|
167
|
+
// 设置场景页面事件监听
|
|
168
|
+
setupScenePageEvents();
|
|
169
|
+
|
|
125
170
|
// 自动加载模型中的场景
|
|
126
171
|
loadAndDisplayModelScenes();
|
|
127
172
|
} catch (error) {
|
|
128
|
-
console.error('模型加载失败,请检查路径是否正确:', error);
|
|
129
|
-
alert('模型加载失败,请确保模型文件路径正确');
|
|
173
|
+
// console.error('模型加载失败,请检查路径是否正确:', error);
|
|
174
|
+
// alert('模型加载失败,请确保模型文件路径正确');
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// 添加场景页面管理器事件监听示例
|
|
178
|
+
function setupScenePageEvents() {
|
|
179
|
+
const eventLog = document.getElementById('eventLog');
|
|
180
|
+
|
|
181
|
+
// 获取ScenePageManager实例
|
|
182
|
+
const scenePageManager = viewer.scenePageManager;
|
|
183
|
+
|
|
184
|
+
// 监听页面切换开始事件
|
|
185
|
+
scenePageManager.addEventListener('pageChangeStart', (event) => {
|
|
186
|
+
console.log('PAGE_CHANGE_START', `开始切换到场景: ${event.page.name}`);
|
|
187
|
+
});
|
|
188
|
+
|
|
189
|
+
// 监听页面切换进度事件
|
|
190
|
+
scenePageManager.addEventListener('pageChangeProgress', (event) => {
|
|
191
|
+
const stageDescriptions = {
|
|
192
|
+
'cameraConfigured': '相机配置完成',
|
|
193
|
+
'cameraPositioned': '相机位置设置完成'
|
|
194
|
+
};
|
|
195
|
+
const stageDesc = stageDescriptions[event.stage] || event.stage;
|
|
196
|
+
console.log('PAGE_CHANGE_PROGRESS', `进度: ${stageDesc}`);
|
|
197
|
+
});
|
|
198
|
+
|
|
199
|
+
// 监听页面切换完成事件
|
|
200
|
+
scenePageManager.addEventListener('pageChangeComplete', (event) => {
|
|
201
|
+
console.log('PAGE_CHANGE_COMPLETE', `成功切换到场景: ${event.page?.name || '未知'}`);
|
|
202
|
+
});
|
|
203
|
+
|
|
204
|
+
// 监听页面切换错误事件
|
|
205
|
+
scenePageManager.addEventListener('pageChangeError', (event) => {
|
|
206
|
+
console.log('PAGE_CHANGE_ERROR', `切换失败: ${event.error.message || '未知错误'}`);
|
|
207
|
+
});
|
|
208
|
+
|
|
209
|
+
console.log('已设置场景页面管理器事件监听器');
|
|
130
210
|
}
|
|
131
211
|
|
|
132
212
|
// 加载并显示模型中的场景
|
|
@@ -210,7 +290,7 @@
|
|
|
210
290
|
}
|
|
211
291
|
|
|
212
292
|
// 辅助函数:获取模型中的场景信息
|
|
213
|
-
function getModelScenes() {
|
|
293
|
+
function getModelScenes() {
|
|
214
294
|
return viewer.scenePageManager.pages;
|
|
215
295
|
}
|
|
216
296
|
|