我只是试着用点坐标在谷歌地球上画一些线,除了一个微小的细节外,一切都正常工作。这些线穿过地球,而不是沿着地表,所以它们通常是看不见的,因为我在地球周围都有点。有什么想法吗?
line = kml.newlinestring(coords=[firstcoord, secondcoord])(预先谢谢:)
发布于 2013-12-19 16:56:11
你需要使线几何上的泰塞勒特跟随地球的曲率。
非常大的线应该使镶嵌,使他们遵循地球的曲率(,否则,他们可能会进入地下和隐藏的)。
要启用镶嵌,<altitudeMode>的值必须是clampToGround或clampToSeaFloor,否则将忽略镶嵌标志。
确保生成的KML输出如下所示:
<Placemark>
<name>line with tessellation</name>
<LineString>
<tessellate>1</tessellate>
<altitudeMode>clampToGround</altitudeMode>
<coordinates>
-122.383103,37.617112 -73.782201,40.643612
</coordinates>
</LineString>
</Placemark>Python代码可以这样做:
import simplekml
kml = simplekml.Kml()
firstcoord = (-122.383103, 37.617112)
secondcoord = (-73.782201, 40.643612)
line = kml.newlinestring(tessellate=1,
altitudemode=simplekml.AltitudeMode.clamptoground,
coords=[firstcoord, secondcoord])
print("Output: line.kml")
kml.save("line.kml")https://stackoverflow.com/questions/20663715
复制相似问题