All Projects → twpayne → go-kml

twpayne / go-kml

Licence: MIT license
Package kml provides convenience methods for creating and writing KML documents.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to go-kml

Go Geom
Package geom implements efficient geometry types for geospatial applications.
Stars: ✭ 456 (+580.6%)
Mutual labels:  encoding, geospatial, gis
EarthSim
Tools for working with and visualizing environmental simulations.
Stars: ✭ 61 (-8.96%)
Mutual labels:  geospatial, gis
invest
InVEST: models that map and value the goods and services from nature that sustain and fulfill human life.
Stars: ✭ 71 (+5.97%)
Mutual labels:  geospatial, gis
leafmap
A Python package for interactive mapping and geospatial analysis with minimal coding in a Jupyter environment
Stars: ✭ 1,299 (+1838.81%)
Mutual labels:  geospatial, gis
awesome-geospatial-data-download-sites
This is the repo for open source geospatial data download sites.
Stars: ✭ 19 (-71.64%)
Mutual labels:  geospatial, gis
importer-exporter
3D City Database client for high-performance import and export of 3D city model data
Stars: ✭ 104 (+55.22%)
Mutual labels:  gis, kml
georaster-layer-for-leaflet
Display GeoTIFFs and soon other types of raster on your Leaflet Map
Stars: ✭ 168 (+150.75%)
Mutual labels:  geospatial, gis
localtileserver
🌐 dynamic tile server for visualizing rasters in Jupyter with ipyleaflet or folium
Stars: ✭ 190 (+183.58%)
Mutual labels:  geospatial, gis
whiteboxgui
An interactive GUI for WhiteboxTools in a Jupyter-based environment
Stars: ✭ 94 (+40.3%)
Mutual labels:  geospatial, gis
geoscript-py
A Python GeoScript Implementation
Stars: ✭ 52 (-22.39%)
Mutual labels:  geospatial, gis
turf-go
A Go language port of Turf.js
Stars: ✭ 41 (-38.81%)
Mutual labels:  geospatial, gis
tidyUSDA
An interface to USDA Quick Stats data with mapping capabilities.
Stars: ✭ 36 (-46.27%)
Mutual labels:  geospatial, gis
pyGISS
📡 A lightweight GIS Software in less than 100 lines of code
Stars: ✭ 114 (+70.15%)
Mutual labels:  geospatial, gis
aruco-geobits
geobits: ArUco Ground Control Point Targets and Detection for Aerial Imagery (UAV/MAV).
Stars: ✭ 32 (-52.24%)
Mutual labels:  geospatial, gis
topo
A Geometry library for Elixir that calculates spatial relationships between two geometries
Stars: ✭ 125 (+86.57%)
Mutual labels:  geospatial, gis
GMT.jl
Generic Mapping Tools Library Wrapper for Julia
Stars: ✭ 148 (+120.9%)
Mutual labels:  geospatial, gis
pyturf
A modular geospatial engine written in python
Stars: ✭ 15 (-77.61%)
Mutual labels:  geospatial, gis
spatial efd
A spatial aware implementation of elliptical Fourier analysis
Stars: ✭ 19 (-71.64%)
Mutual labels:  geospatial, gis
deegree3
Official deegree repository providing geospatial core libraries, data access and advanced OGC web service implementations
Stars: ✭ 118 (+76.12%)
Mutual labels:  geospatial, gis
eodag
Earth Observation Data Access Gateway
Stars: ✭ 183 (+173.13%)
Mutual labels:  geospatial, gis

go-kml

PkgGoDev

Package kml provides convenience methods for creating and writing KML documents.

Key Features

  • Simple API for building arbitrarily complex KML documents.
  • Support for all KML elements, including Google Earth gx: extensions.
  • Compatibilty with the standard library encoding/xml package.
  • Pretty (neatly indented) and compact (minimum size) output formats.
  • Support for shared Style and StyleMap elements.
  • Simple mapping between functions and KML elements.
  • Convenience functions for using standard KML icons.
  • Convenience functions for spherical geometry.

Example

func ExampleKML() {
    k := kml.KML(
        kml.Placemark(
            kml.Name("Simple placemark"),
            kml.Description("Attached to the ground. Intelligently places itself at the height of the underlying terrain."),
            kml.Point(
                kml.Coordinates(kml.Coordinate{Lon: -122.0822035425683, Lat: 37.42228990140251}),
            ),
        ),
    )
    if err := k.WriteIndent(os.Stdout, "", "  "); err != nil {
        log.Fatal(err)
    }
}

Output:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
    <name>Simple placemark</name>
    <description>Attached to the ground. Intelligently places itself at the height of the underlying terrain.</description>
    <Point>
      <coordinates>-122.0822035425683,37.42228990140251</coordinates>
    </Point>
  </Placemark>
</kml>

There are more examples in the documentation corresponding to the examples in the KML tutorial.

Subpackages

  • icon Convenience functions for using standard KML icons.
  • sphere Convenience functions for spherical geometry.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].