我有一张船只地图,当它们彼此靠近时会聚集在一起,除非您随后将指针悬停在聚集圆圈上。这种聚类是基于OpenLayers示例实现的:
当船只标记没有被聚类时,我使用OpenLayers函数“getFeaturesAtPixel”,检查特征中是否有船只标记,并在找到船只标记时显示有关船只的弹出信息。当它们被聚类时,在暂时“扩展”的聚类内部悬停在标记上不会产生除集群本身以外的任何其他特征。
解决这个问题的一个可能的方法是手动检查悬停在聚类上时的船只特征。我试图使用Extent的“containsCoordinate”来查看船只标记几何的范围是否包含指针像素的坐标。然而,我从船只标记中得到的范围基本上是一个点值(从用于定位标记的点中),而不是整个图标实际覆盖的范围。
可能的挑战是如何手动检查特征是否覆盖像素/坐标?
https://openlayers.org/en/latest/examples/earthquake-clusters.html
聚类功能正常工作。问题在于地图还应该在你悬停在船只标记上时显示弹出信息。这对于独立的、非聚类的船只来说是有效的。然而,当船只被聚类时,我无法确定正在悬停的是哪个船只标记。当船只标记没有被聚类时,我使用OpenLayers函数“getFeaturesAtPixel”,检查特征中是否有船只标记,并在找到船只标记时显示有关船只的弹出信息。当它们被聚类时,在暂时“扩展”的聚类内部悬停在标记上不会产生除集群本身以外的任何其他特征。
解决这个问题的一个可能的方法是手动检查悬停在聚类上时的船只特征。我试图使用Extent的“containsCoordinate”来查看船只标记几何的范围是否包含指针像素的坐标。然而,我从船只标记中得到的范围基本上是一个点值(从用于定位标记的点中),而不是整个图标实际覆盖的范围。
可能的挑战是如何手动检查特征是否覆盖像素/坐标?