我试图将填充的多边形放在地面上,但直到现在,我的试验都没有成功。我总是得到一个填充的多边形在某种特定高度(有时会根据该高度切开地形表面),或者单纯的多边形轮廓而没有任何填充。我尝试了
- 将高度信息设置为0(在坐标和标签
altitude
中), - 将
altitudeMode
设置为clampToGround
(和clampToSeaFloor
), - 使用名称空间扩展
gx
,但无济于事。 - 使用标签
tessellate
(0和1), - 使用标签
extrude
(0和1甚至更高的值), - 将多边形点的顺序转动(从顺时针切换到逆时针),
但是什么都没有。
这是我认为正确但行不通的示例(这没有显示多边形的填充,只是大纲):
<?xml version="1.0" encoding="UTF-8"?>
<kml>
<Placemark>
<name>Filled Polygon Example</name>
<visibility>1</visibility>
<Style>
<LineStyle>
<color>FF00FFFF</color>
<width>1</width>
</LineStyle>
<PolyStyle>
<fill>1</fill>
<outline>1</outline>
<color>FF0000FF</color>
</PolyStyle>
</Style>
<Polygon>
<extrude>1</extrude>
<altitudeMode>clampToGround</altitudeMode>
<tessellate>1</tessellate>
<outerBoundaryIs>
<LinearRing>
<coordinates>
13.213,52.793,0
13.202,52.803,0
13.218,52.829,0
13.226,52.807,0
13.213,52.793,0
</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</Placemark>
</kml>
如果您将clampToGround
替换为e。G。relativeToGround
,您可以得到多边形的填充,但它不遵循表面,而是将其切开。
我在Ubuntu 16.04上使用Google Earth版本7.1.8。
很好奇的是,我发现了一些(旧的)论坛帖子,这些论坛帖子说这曾经起作用(2006年左右),不幸的是没有一个完整的例子。这是一个掉落的功能吗?
如果有人可以提供一个示例kml,我会很高兴
@jasonm1在评论中指出,Windows版本中不存在问题。我尝试切换图形选项,但没有任何帮助。然后,我在模拟器(葡萄酒)中尝试了Windows版本。上面的代码和我的真实代码无问题。覆盖填充的多边形与爆炸性的多边形也如预期的那样工作。一般而言,Google Earth似乎得到了葡萄酒的支持,因此现在可以解决我的问题。
在Linux上拥有一个不错的本地Google Earth会更好。