logo separator

[mkgmap-dev] [locator] Osmosis parameters required

From Adrian ar2988-os at yahoo.co.uk on Sun May 1 00:25:01 BST 2011

You could solve this with multiple runs of osmosis (but it might take
some time). The idea is that on the first run, you retain just the
relations tagged with boundary=administrative, the ways referred to in
those relations, and the nodes used in those ways and relations. This
gives you everything you want except for ways tagged with
boundary=administrative, that are not referred to in any relation. So
you do a second run on the Europe extract and retain ways tagged
boundary=administrative. On the third run, you merge the two sets of
results. This is similar to the advice from the osmosis mailing list,
but I have filled in some details.

Suggested commands (I haven't tried this):
First create named pipes rel and way using mkfifo. You also need to
create a file dummy.osm.pbf which contains the bounding box you want, to
work round the bounding box problem in the merge function. See
http://www.mkgmap.org.uk/pipermail/mkgmap-dev/2011q2/011229.html
osmosis --rb europe.osm.pbf \
   --tf accept-relations boundary=administrative \
   --used-way idTrackerType=BitSet \
   --used-node outPipe.0=rel idTrackerType=BitSet \
   \
   --rb europe.osm.pbf \
   --tf accept-ways boundary=administrative \
   --tf reject-relations \
   --used-node outPipe.0=way idTrackerType=BitSet \
   \
   --rb dummy.osm.pbf \
   --merge inPipe.1=rel \
   --merge inPipe.1=way \
   --wb boundary.osm.pbf

An alternative that does not use named pipes (may be quicker because it
only reads the input file once):
osmosis --rb europe.osm.pbf \
   --tee \
   --tf accept-relations boundary=administrative \
   --used-way idTrackerType=BitSet \
   --used-node idTrackerType=BitSet \
   --wb rel.osm.pbf
   \
   --tf accept-ways boundary=administrative \
   --tf reject-relations \
   --used-node idTrackerType=BitSet \
   --wb way.osm.pbf
osmosis --rb dummy.osm.pbf \
   --rb rel.osm.pbf \
   --rb way.osm.pbf \
   --merge \
   --merge \
   --wb boundary.osm.pbf




More information about the mkgmap-dev mailing list