我一直在尝试获得一个简单的示例,其中谷歌地图中的 kml 图层将自动更新每个缩放/平移的内容。我一直在使用一个简单的服务器 php 文件进行测试,该文件在指定的 bbox 中间返回一个地标;我们的目标是使用这个模型来执行服务器端集群。我已经使用通过网络 kml 链接的 php 文件在 google earth 中工作了示例。
网络 KML 文件: http ://crv.vividsolutions.com/test/kml/layer2.kml
当我在谷歌地图中添加与图层相同的网络 kml 时,服务器上的 php 文件仅在第一次访问时才被访问。图层按预期出现并显示在屏幕中间的点,但是在平移地图后数据没有刷新(点没有移动到地图的中心)。根据访问日志,第一个请求将 bbox 传递到 kml 服务器,但是没有任何后续请求。我的测试地图可以在这里找到: http ://crv.vividsolutions.com/test/kml/index.php
我发现了一个看起来相关的问题(id=2697)。[我只能在这篇文章中包含 2 个链接,否则会链接它]。
在尝试了几件事之后,我确实设法获得了所需的行为,但是解决方案涉及删除现有的 JS 图层对象并在每个平底锅上添加一个新对象。这似乎有点沉重。我希望有人可能有替代解决方案来获得相同的行为,而不会产生与在每个平移/缩放上创建新图层对象相关的开销。
图层交换示例(有效但笨拙):与 index.php 相同的服务器 ...只需重命名为 index2.php [遇到 smap bot 链接限制]。