Seraphinux
“Lloramos por el lamento de un pájaro pero no por la sangre de un pez, benditos aquellos que tienen voz.”
May 20th, 2008
Visitada: 320 veces, 1 en este dia.

Google libera libkml

Via Maps API Blog:

Google ha lanzado la versión 0.2 de libkml, una biblioteca de código abierto para serializar y deserializar archivos KML. Ahora libkml utiliza un sistema de gestión de memoria basado en "smart pointers" (punteros inteligentes), lo cual deja obsoleto el uso de SCons. En Linux y Mac OS X se puede utilizar el tradicional automake, y en Windows el Microsoft Visual Studio. El "smart pointer" (puntero inteligente) actualmente restringe el soporte para algunos lenguajes, por lo que libkml 0,2 sólo esta disponible para C + +, Java y Python. La versión 0,1 soporta PHP, Perl y Ruby, y está disponible en el repositorio de Subversion si estás interesado. Estamos en plan de restaurar el anterior soporte tan pronto como podamos.

-Ejemplo de uso-

C++:
  1. // createkml.cc
  2. // This program uses the KmlFactory to create a Point Placemark and
  3. // prints the resultant KML on standard output.
  4.  
  5. #include
  6. #include
  7. #include "kml/dom.h"
  8.  
  9. // libkml types are in the kmldom namespace
  10. using kmldom::CoordinatesPtr;
  11. using kmldom::KmlPtr;
  12. using kmldom::KmlFactory;
  13. using kmldom::PlacemarkPtr;
  14. using kmldom::PointPtr;
  15.  
  16. int main() {
  17.   // Get the factory singleton to create KML elements.
  18.   KmlFactory* factory = KmlFactory::GetFactory();
  19.  
  20.   // Create .
  21.   CoordinatesPtr coordinates = factory->CreateCoordinates();
  22.   // Create -122.0816695,37.42052549
  23.   coordinates->add_point2(-122.0816695,37.42052549);
  24.  
  25.   // Create  and give it .
  26.   PointPtr point = factory->CreatePoint();
  27.   point->set_coordinates(coordinates);
  28.  
  29.   // Create  and give it a  and the .
  30.   PlacemarkPtr placemark = factory->CreatePlacemark();
  31.   placemark->set_name("Cool Statue");
  32.   placemark->set_geometry(point);
  33.  
  34.   // Create  and give it .
  35.   KmlPtr kml = factory->CreateKml();
  36.   kml->set_feature(placemark);
  37.  
  38.   // Serialize to XML
  39.   std::string xml = kmldom::SerializePretty(kml);
  40.  
  41.   // Print to stdout
  42.   std::cout <<xml;
  43. }

Posts Relacionados

Dejanos un comentario.