我正在编写一个cesium应用程序,我想调用一个清除所有原语的内部cesium函数:
function clearAll() {
primitives.removeAll();
}
当我按下按钮时。我知道cesium内置的工具栏按钮,但我想使用我已经有的html按钮来点击这个功能。它位于:
<script>
require(['Cesium'], function(Cesium) {
function clearAll() {
//code here}
});
</script>
任何帮助将不胜感激!
答案 0 :(得分:1)
查看Billboards example的顶部。构建Cesium.Viewer
后,它可以访问viewer.scene.primitives
,其中包含公共的.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);