2011-11-17 11 views
7

Sto cercando una libreria ruby ​​per esportare i dati sulla posizione in file KML. I dati da esportare contengono principalmente punti semplici con latitudine e longitudine, ma mi piacerebbe anche poter esportare poligoni più complessi.Ruby: libreria KML?

Ho provato kamelopard, ma non l'ho trovato soddisfacente in quanto manca un tutorial. Non era ovvio per me da dove iniziare a usare la libreria. C'è un altro candidato che si chiama kamel. Purtroppo non ho potuto installare quello, a causa di una dipendenza mancante che non riuscivo a risolvere.

Quindi, quale libreria stai usando per creare un file KML a livello di codice in Ruby? O usi the builder gem e crei tu stesso l'XML?

risposta

9

Ho risolto il problema utilizzando schleyfox-ruby_kml, che è un fork di kmlr. Con questo, è facile generare un kml per una serie di segnaposto. Vedere il seguente esempio dal README:

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 

La gemma fornisce anche classi per generare poligoni e così via.

Problemi correlati