4

这是我的 kml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
     <name>Pentagon</name>
     <Polygon>
       <extrude>1</extrude>
       <altitudeMode>relativeToGround</altitudeMode>
       <outerBoundaryIs>
         <LinearRing>
           <coordinates>
             -77.05788457660967,38.87253259892824,100 
             -77.05465973756702,38.87291016281703,100 
             -77.05315536854791,38.87053267794386,100 
             -77.05552622493516,38.868757801256,100 
             -77.05844056290393,38.86996206506943,100 
             -77.05788457660967,38.87253259892824,100
           </coordinates>
         </LinearRing>
       </outerBoundaryIs>
       <innerBoundaryIs>
         <LinearRing>
           <coordinates>
             -77.05668055019126,38.87154239798456,100 
             -77.05542625960818,38.87167890344077,100 
             -77.05485125901024,38.87076535397792,100 
             -77.05577677433152,38.87008686581446,100 
             -77.05691162017543,38.87054446963351,100 
             -77.05668055019126,38.87154239798456,100
           </coordinates>
         </LinearRing>
       </innerBoundaryIs>
     </Polygon>
   </Placemark>
</kml>

我将它导入谷歌地图(我的地图)或谷歌地球,但没有显示“洞”。代码取自页面KML 教程 - 高级 KML 文档

4

3 回答 3

0

奇怪的。我确实在 Google 地球中看到了一个凸出的多边形,但似乎 Google 地图没有正确绘制outerBoundaryIsinnerBoundaryIs元素的交集(尽管我确实看到了内部边界,但不一定是具有完全空心中心的多边形)。我认为在这种情况下,谷歌地图覆盖似乎并不完全符合 KML 规范。

于 2011-02-24T03:02:44.977 回答
0

我可以看到中间有一个漂亮洞的挤压五边形......但只是在谷歌地球中。在谷歌地图(普通地图,没有通过geoxml3使用它)中没有出现这个洞。可能,正如 Wyatt Anderson 所说,谷歌地图并不完全符合这个 KML 功能......但如果你使用 geoxml3,你会得到它。我有同样的问题,我用 geoxml3.js 解决了它。祝你好运!

于 2013-05-14T09:04:00.783 回答
0

截至今天,Google 地球专业版正确显示了具有内边界的多边形。但是,您的文件缺少 < Document > 元素。这可能会导致其他更严格的解析器出现问题。也许这就是谷歌地图问题的原因。

于 2020-03-23T11:12:52.187 回答