铯 - 点击后,将地图指向标准标记,并带有图标

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了铯 - 点击后,将地图指向标准标记,并带有图标相关的知识,希望对你有一定的参考价值。

我试图模仿在Cesium中使用Waze LiveMap(https://www.waze.com/livemap)看到的功能。单击某个点时,会将其转换为带有图标的标记。

我已经尝试了几个不同的事情,取得了不同程度的成功,我在我的智慧结束。有没有人对我如何进行有一个很好的建议?

答案

有几种不同的方法可以做到这一点,一些是高级别的,一些是低级别的。高级别是最简单的,所以我会从那里开始。 Cesium Viewer会在其自己的选择发生变化时触发一个名为selectedEntityChanged的事件,您可以将其连接到切换广告牌显示标志的开关。

Here's a demo。对于这个演示,我拿了原来的map pins demo并添加了一些代码:我在开始时关闭了所有广告牌的show标志,我添加了分数代表现在隐藏的广告牌,我添加了以下块用于在选中时切换广告牌显示标志的代码,如下所示:

var lastSelectedPin;
viewer.selectedEntityChanged.addEventListener(function(newEntity) {
    if (lastSelectedPin && lastSelectedPin.billboard) {
        lastSelectedPin.billboard.show = false;
    }
    lastSelectedPin = newEntity;
    if (lastSelectedPin && lastSelectedPin.billboard) {
        lastSelectedPin.billboard.show = true;
    }
});

这使用Cesium Viewer自己的选择系统,但切换广告牌显示标志以在选择时显示,并在取消选择时消失。

或者,您可以深入了解Cesium的较低级别以获得更好的控制,但学习曲线会更长。 Picking Demo展示了几种类型的拣选操作,包括scene.pickscene.drillPickcamera.pickEllipsoid,它们提供了各种方法来检测特定屏幕位置存在的内容。这些函数通常是响应鼠标移动或点击或触摸/指针事件而调用的,以查看用户正在与之交互的内容。

以上是关于铯 - 点击后,将地图指向标准标记,并带有图标的主要内容,如果未能解决你的问题,请参考以下文章

将 CSS 样式标记添加到谷歌地图

如何在同一张地图上使用带有多个标记的谷歌地图 API

点击标记时如何更新谷歌地图标记图像

高德地图——标记

高德地图——标记

调整 Google 地图标记图标图像的大小