googleearth simpleKML中显示的多边形

2024-10-01 07:44:37 发布

您现在位置:Python中文网/ 问答频道 /正文

背景-我正在尝试创建一个圆形多边形,并使用simpleKML将其添加到kml中。在

kml知道应该添加一个多边形,并且它具有适当的颜色、宽度和描述,但是每当我缩放到该位置时,它会引导我找到坐标0,0,而不是多边形。在

创建多边形的代码如下所示:

pol = kml.newpolygon(name=pnt.name) 
pol.description = ("A buffer for " + pnt.name)
pol.innerboundaryis = [newCoord]
pol.style.linestyle.color = simplekml.Color.green
pol.style.linestyle.width = 5
pol.style.polystyle.color = simplekml.Color.changealphaint(100, simplekml.Color.green)

其中“newCoord”是一个二维数组,其中存储了所有的横向/纵向信息。在

因为我认为数组可能无法正确格式化数据,所以我尝试使用以下代码形成一个简单的三角形多边形:

^{pr2}$

但它和第一个有同样的问题。在

我尝试用.innerboundaryis()和.outerboundaryis()来构造多边形,但没有成功,我的想法都没有了。在

编辑:我应该补充一下,我正在googleearth中打开kml文件


Tags: 代码namestylegreen数组kml多边形color
1条回答
网友
1楼 · 发布于 2024-10-01 07:44:37

网上几乎没有关于这个问题的文档,所以我想我会把我的问题的答案张贴给任何有这个问题的人。在

这是我用来让多边形工作的代码。在

    newCoords = []
    pol = kml.newpolygon(name=pnt.name) 
    pol.description = ("A buffer for " + pnt.name)

    if pnt.name in bufferList:
        bufferRange = input('Enter the buffer range. ' )
        for i in range(360):
            newCoords.append( ( math to calculate Lat, math to calculate Long ) )
            pol.outerboundaryis.coords.addcoordinates([newCoords[i]])


        pol.style.linestyle.color = simplekml.Color.green
        pol.style.linestyle.width = 5
        pol.style.polystyle.color = simplekml.Color.changealphaint(100, simplekml.Color.green)

在使用'坐标添加坐标()'函数。另外,它必须是一维列表,因此纬度和经度坐标必须存储在同一个位置。在

可以直接使用“.outerboundaryis()”输入浮点值,例如:

^{pr2}$

但是“.addcoordinates()”只接受列表和整数。在

相关问题 更多 >