0
点赞
收藏
分享

微信扫一扫

谷歌气球 simplekml 入门《四》

日月同辉9908 2022-03-13 阅读 43
python

如何创建线串。我们将创建不同的线串来展示altitudemode 和extrude 属性

一、 应用场景

  • 普通线段如何设置
  • 悬停在空中的线如何设置
  • 地面到空中的线如何设置
  • 不断起伏的线如何设置
  • 倾斜的线段如何设置

二、代码示例

import os
import simplekml

# 创建 KML 对象
kml = simplekml.Kml(open=1)   # open=1  文件夹将在目录中打开



# 线段1   创建一个带有两点的线串(即一条线)
linestring = kml.newlinestring(name="A Line")
linestring.coords = [(-122.364383, 37.824664),(-122.364152,37.824322)]

# 线段2   创建悬停在离地面50米处的线串
linestring = kml.newlinestring(name="A Hovering Line")
linestring.coords = [(-122.364167,37.824787, 50), (-122.363917,37.824423,50)]
linestring.altitudemode = simplekml.AltitudeMode.relativetoground  # 每个顶点的高度是相对于地面的

# 线段3   创建一条线串,该线串将悬停在距离地面100米的地方,并延伸至地面
linestring = kml.newlinestring(name="An Extended Line")
linestring.coords = [(-122.363965,37.824844,100), (-122.363747,37.824501,100)]
linestring.altitudemode = simplekml.AltitudeMode.relativetoground   
linestring.extrude = 1         # 将线串连接到地面 extrude 设置为 1

# 创建一条线串,该线串将延伸至地面,但从地面倾斜至100米
linestring = kml.newlinestring(name="A Sloped Line")
linestring.coords = [(-122.363604, 37.825009, 0), (-122.363331, 37.824604, 100)]
linestring.altitudemode = simplekml.AltitudeMode.relativetoground
linestring.extrude = 1

# Save the KML
kml.save(os.path.splitext(__file__)[0] + ".kml")
  • 线段1, 即一个普通的线
  • 线段2,设置一个悬浮在空中高度50米高度的线段
  • 线段3, 设置一个线段从空中延伸到地面的线, 类似于长城
  • 线段4,创建一个线从地面 延伸到天上100m的线

三、注意参数

  • coords (经度, 纬度, 高度) 东经为正,西经为负
  • linestring.altitudemode = simplekml.AltitudeMode.relativetoground 每个顶点相对于地面的高度
  • 是否将线串连接到地面 extrude 设置为 1
举报

相关推荐

0 条评论