OsmPoiCreator

From OpenStreetMap Wiki
Jump to navigation Jump to search


Current State

This tool was never completed. In case you want to get POIs out of the database, use PostGIS and extract POIs by using Hstore (as http://brewpubs.openstreetmap.de/ does) or fiddle around with spatialite.


OsmPoiCreator is a tool to extract POIs from a osm file. As I'm a hobby hacker without any experience, the code looks, uhm, ugly. Thus it never has been officially released.

Meanwhile other tools should be able to do the job. Osmosis can extract polygons from an osm file and there are ready to use extracts on various locations like on geofabrik.de. The last step, finally extracting the POIs, probably can be done using Jochen Topf's osmlib for Ruby.

In short, I decided to discontinue OsmPoiCreator :) .

Features

  • Written in C++ using Trolltech's amazing Qt4 class library
  • Thus running on all three major platforms, Win, Mac and Lin
  • The GUI still does nothing as I consider to make it a command line only program which can be driven by task schedulers such as cron
  • It takes an osm file as source
  • It reads a polygon file (or takes a bounding box) as found at PennState
  • It filters nodes in the given area according to the polygon file
  • It finally outputs POIs as GPX waypoints
  • The categories it creates are configurable via a configuration file in ini style format. An example configuration gets created during first application startup

Areas (polygonal or bounding box)

The polygon files mentioned above are rather detailed. Using one of them will cost a lot of CPU cycles. I thus recommend to use a bounding box instead or to build your own polygon file, using as less vertices as possible. The format of the polygon files is rather weird and contains a lot of blanks. If you want to create your own polygon files, a simply CSV style format should be sufficient, but I didn't test it yet. It should even be possible to use decimal coords insted of the scientific notation, but this also is untested. The files may contain an arbitrary amount of polygons, so it even is possible to define non-contiguous regions. Coords are given in lon lat, not lat lon.

Custom polygon files that should work could look like:

  • The first line contains an arbitrary name of the polygon, like Europe, France or Island
  • After that a (not necessarily subsequent) number defines the start of a polygon
  • Then the coords are listed
  • The polygon gets ended wih END
  • The next polygon may start with a number
  • It may end with END

The file gets ended with a final END

If you do not want to use the many blanks of the original file format, try something like

Foo region
01
50,10
51,11
...
51,12
END
02
53,12
54,12
54,13
...
END
END

Category Definitions

Categories are fully configurable. Simply add your favourite POI definitions to the config file:

[Restaurants]
GetsUsed=true
Icon=Restaurant
IdentifierTags\amenity=restaurant
NameFallbackTag=amenity
NameTag=name
proximity=20

Screenshots

I plan to make it a command line only version so it can be run by task schedulers such as cron. But anyway, here's the current GUI: