我正在编写一个 cesium 应用程序,我想调用一个内部 cesium 函数来清除所有原语:
function clearAll() {
primitives.removeAll();
}
当我按下按钮时。我知道 cesium 的内置工具栏按钮,但我想使用我已经有的 html 按钮来在单击时调用此函数。它位于:
<script>
require(['Cesium'], function(Cesium) {
function clearAll() {
//code here}
});
</script>
如有任何帮助,我们将不胜感激!
最佳答案
看看我们的Billboards example的顶部。当构建 Cesium.Viewer
时,它提供对 viewer.scene.primitives
的访问,其中包括公共(public)的 .removeAll()
函数。
var viewer = new Cesium.Viewer('cesiumContainer');
var scene = viewer.scene;
var primitives = scene.primitives;
function reset() {
primitives.removeAll();
}
正如 @Bergi 在评论中提到的,通常您不会将其与 onclick
连接起来,因为您需要访问诸如查看器实例之类的作用域变量。相反,为您的按钮提供一个 id
属性,并使用 addEventListener (或 jQuery)监听该范围内的按钮点击。
document.getElementById('myButtonId').addEventListener('click', function() {
primitives.removeAll();
}, false);
关于javascript - 从脚本外部调用内部Cesium函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24660973/