我正在编写一个带有 WebBrowser 控件的 WinForms 应用程序。我在这个应用程序中使用了谷歌地球插件,并且需要在谷歌地球上创建一些地标。根据当前范围(缩放级别),某些地标在屏幕上可能彼此非常接近(当地球足够缩小时)。在这种情况下,我想创建的不是所有地标,而是一些地标,以避免屏幕上的地标过度拥挤地图。
例如,假设我有 1000 个点要创建地标。当我遍历要创建的地标的所有点时,我想将每个点的纬度/经度转换为 WebBrowser 控件的客户端坐标,以便我可以检查它是否非常接近(在屏幕上)已创建的其他地标. 如果它非常接近其他地标,我将跳过创建此地标。因此,如果用户缩小到一定程度,实际创建的地标数量可能远小于 1000 个(例如 400 个)。
这是我有困难的地方。我不知道是否有办法将纬度/经度转换为托管 Google 地球插件的 WebBrowser 控件的客户端坐标。我知道对于鼠标事件,我可以使用客户端坐标,但在这种情况下不涉及鼠标事件。
有人知道如何实现这一目标吗?谢谢!