forked from joto/osmium
C++/Javascript framework for working with OSM files
License
GPL-3.0, LGPL-3.0 licenses found
Licenses found
GPL-3.0
LICENSE-GPLv3
LGPL-3.0
LICENSE-LGPLv3
hholzgra/osmium
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Osmium ====== http://wiki.openstreetmap.org/wiki/Osmium Osmium is a C++ framework for working with OSM data files. Osmium can read OSM data in XML or binary format (PBF) and can call different handlers for each OSM object. Available handlers include: * Javascript handler (calls Javascript callbacks you provide) * Multipolygon handler (assembles multipolygons from relations and ways) * NodeLocationStore handler (stores node locations and builds way geometries from them) * Statistics handler (does some general statistics) * (others...) Of course, you can also write your own handlers. There are a few applications that use Osmium in the examples directory. The osmjs directory contains the osmjs application that calls your Javascript code which can then work with the OSM data. It can, for instance, be used to convert OSM data into Shapefiles. Note that OSM input files must contain objects in the right order for Osmium to work properly: first nodes, then ways, then relations. Normally OSM files are sorted this way, but if yours aren't, you can use Osmosis with the --sort option to do this. PREREQUISITES ------------- Different parts of Osmium and the applications build on top of it need different libraries: zlib (for PBF support) http://www.zlib.net/ Debian/Ubuntu: zlib1g zlib1g-dev shapelib (for shapefile support in osmjs) http://shapelib.maptools.org/ Debian/Ubuntu: libshp1 libshp-dev libsqlite3 (for some applications only) http://sqlite.org/ Debian/Ubuntu: libsqlite3-0 libsqlite3-dev libgd (for tagstats and nodedensity applications only) http://www.libgd.org/ Debian/Ubuntu: libgd2-xpm libgd2-xpm-dev Expat (for parsing XML files) http://expat.sourceforge.net/ Debian/Ubuntu: libexpat1 libexpat1-dev GEOS (for assembling multipolygons etc.) http://trac.osgeo.org/geos/ Debian/Ubuntu: libgeos-3.2.0 (older versions might work) libgeos-dev Google sparsehash http://code.google.com/p/google-sparsehash/ Debian/Ubuntu: libsparsehash-dev Google V8 Javascript engine (for Javascript support) http://code.google.com/apis/v8/ Debian/Ubuntu: libv8-2.2.18 libv8-dev LibICU (for UTF-8/UTF-16 conversion, only for Javascript support) http://site.icu-project.org/ Debian/Ubuntu: libicu42 libicu-dev Google protocol buffers (for PBF support) http://code.google.com/p/protobuf/ (at least Version 2.3.0 needed) Debian/Ubuntu: libprotobuf6 libprotobuf-dev protobuf-compiler Also see http://wiki.openstreetmap.org/wiki/PBF_Format OSMPBF (for PBF support) https://github.com/joto/OSM-binary You need to build this first. You need to either install the Debian/Ubuntu packages (or equivalent for other distributions) or install those libraries from source. Most libraries should be available in all distributions. The Google libs (V8, protobuf, sparsehash) are only available in newer distributions (Ubuntu since Maverick). FILES ----- Doxyfile - Needed for building the Osmium C++ docs, call "make doc" to build. include - C/C++ include files. All of Osmium is in those header files which are needed for building Osmium applications. osmjs - Osmium application "osmjs". osmjs/js - Example Javascript handlers. examples - Osmium example applications. BUILDING -------- First you need to (build and) install all the prerequisites. Osmium is a header-only library, so there is nothing to build for the library itself. Call "make doc" in the top-level directory to build the Osmium C++ docs. Call "make install" to install the include files and documentation. To build the example applications go into the "examples" directory and call "make". See "osmjs/README" for build instructions of osmjs. Call "make clean" in any of those places to clean up. LICENSE ------- Osmium is available under the GNU LGPL version 3 or later, or - at your option - the GNU GPL version 3 or later. See http://eigen.tuxfamily.org/index.php?title=Licensing_FAQ for a good description of what that means. AUTHORS ------- Osmium was mainly written and is maintained by Jochen Topf <jochen@topf.org>. Other authors: * Frederik Ramm <frederik@remote.org> (Multipolygon code, ...) * Christian Vetter <veaac.fdirct@gmail.com> (PBF parser) * Scott A. Crosby <scott@sacrosby.com> (PBF format) * Peter Körner <github@mazdermind.de> (XML and PBF writer, ...)
About
C++/Javascript framework for working with OSM files
Resources
License
GPL-3.0, LGPL-3.0 licenses found
Licenses found
GPL-3.0
LICENSE-GPLv3
LGPL-3.0
LICENSE-LGPLv3
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published