Ruby:KML库?

时间:2011-11-17 14:22:24

标签: ruby kml

我正在搜索ruby库以将位置数据导出到KML文件中。要导出的数据主要包含纬度和经度的简单点,但我也希望能够导出更复杂的多边形。

我尝试了kamelopard,但由于缺少教程而没有找到它。对我来说,从哪里开始使用该库并不明显。还有另一个名为kamel的候选人。不幸的是我无法安装那个,因为缺少依赖,我无法解决。

那么,您使用哪个库以编程方式在Ruby中创建KML文件?或者您使用the builder gem并自己创建XML?

1 个答案:

答案 0 :(得分:9)

我使用schleyfox-ruby_kml解决了我的问题,这是一个分支 kmlr。有了这个,很容易为一组地标生成一个kml。请参阅自述文件中的以下示例:

require 'kml'

kml = KMLFile.new
folder = KML::Folder.new(:name => 'Melbourne Stations')
[
  ["Flinders St",    -37.818078, 144.966811],
  ["Southern Cross", -37.818358, 144.952417],
].each do |name, lat, lng|
  folder.features << KML::Placemark.new(
    :name => name, 
    :geometry => KML::Point.new(:coordinates => {:lat => lat, :lng => lng})
  )
end
kml.objects << folder
puts kml.render

gem还提供了生成多边形等的类。