0

我希望能够使用 geoxml3 将图层叠加到地图上。我一直在努力试图了解可能出了什么问题,因为它适用于点,但在涉及多边形和线串时它什么也不显示。虽然它似乎正在通过geoxml3解析器,因为缩放正在根据数据进行调整,但不会显示任何内容。

我尝试过的所有三个版本的 geoxml3,结果都是一样的。

以下是我的线串 kml 文件。请注意,该文件在谷歌地图和谷歌地球上运行良好。

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <Name>route</Name>
    <Placemark>
      <Style>
        <LineStyle>
          <color>ff0000ff</color>
        </LineStyle>
      </Style>
      <LineString>
        <coordinates>14.5077989214673,35.8935010311257 14.5077613878199,35.8935045284545 14.5077103878199,35.8935219284544 14.5076594878199,35.8935697284545 14.5076594878199,35.8935697284545 14.506821184327,35.894410303289 14.5066562791164,35.8947140342037 </coordinates>
      </LineString>
    </Placemark>
  </Document>
</kml>

以下是处理解析的javascript方法。

function displayKml() {
    geo = new geoXML3.parser({
        map: map,
        zoom: true,
        singleInfoWindow: true        
    });
    geo.parse("Uploads/" + document.getElementById('<%= text2.ClientID %>').value);
}

感谢您提供任何帮助,因为我已经花了三天时间试图弄清楚。

4

1 回答 1

1

您的<LineString>KML 中的 没有宽度

  <Style>
    <LineStyle>
      <color>ff0000ff</color>
    </LineStyle>
  </Style>

添加:

  <Style>
    <LineStyle>
      <width>1</width> 
      <color>ff0000ff</color>
    </LineStyle>
  </Style>

geoxml3 的 polys 分支目前没有默认宽度(所以它是零,这意味着你看不到它):

没有宽度的 polys 分支: http ://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmltest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlB.xml

具有宽度的 polys 分支: http ://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmltest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlC.xml

geoxml3 的 kmz 分支确实有一个默认的宽度,应该可以工作:

使用原始 KML 的 kmz 分支: http ://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmztest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlB.xml

针对 geoxml3 打开了一个问题

Fixed the issue (so the examples above all work and no longer show the problem)

于 2013-03-16T15:12:52.770 回答