itinero / idp

Itinero data processor.
12 stars 10 forks source link

Features/switches #16

Closed pietervdvn closed 5 years ago

pietervdvn commented 5 years ago

This branch adds:

Before merging, a few clarifications are still needed. To me, it is unclear what the following options are:

When fixed, run IDP --? md=CommandLineArgs.md to generate the new documentation.

xivk commented 5 years ago
pietervdvn commented 5 years ago
  • SVC/TVC: This is to identity the first and last vertex of every edge in the shape file. The shapefile only has linestrings in it, the edges. To link them together we need to know the first and last vertex id of each edge.

I'm quite lost here - perhaps because I've not really worked with shapefiles yet. Could you give an example of the correct invocation of this flag? I'll add it to the docs too then.

  • keepWayIds : This keeps the way ids as metadata on an edge.

In order to be able to reference to the original data source?

  • allCore: Every OSM node is converted to a vertex, not just those at intersections.

So this keeps the geometry of the road - e.g. if there is a bend in the road, it will be saved in the routerdb, allowing e.g. correct visualisation afterwards?

  • simplification: The simplification parameter, this can be used to tune simplification.

And what exactly does simplification do? It might be worthwhile to state a little what simplifications are performed.

  • normalize: This is control itinero handling duplicate edges between vertices. This is to disable tag normalization, sometimes a set of tags has the exact same meaning, these can be grouped together in one profile.

Ah, so for example:

highway=trunk & max_speed = 120 would by all practical accounts be the same as highway=motorway & max_speed=120 and thus get the same profile number in the table of properties. Setting this flag to true will enable this feature? IIRC the previous behaviour was 'false' by default.

  • Augment: This is used to store both time and distance in the contracted graph. This allows for very quick calculations of time/and distance at the same time.

Does the default behaviour only store time needed then? I interpret the process now as being 'calculate how long the vehicle would travel over a road, based on distance and tags of the road. Then throw away distance and tags, only to keep time'. With 'augment', distance and tags would be maintained in the routerdb? And is this tag useful to set in combination with contraction?

xivk commented 5 years ago

First of all, keep in mind that these optional parameter are already highly specialized features. 99% of users won't need/use them and there is decent default for all of them. It's a bit overkill to document them in such great detail.

xivk commented 5 years ago

Oh and these are examples of the SVC and TVC:

https://github.com/itinero/routing/blob/develop/samples/Sample.Shape/car.lua#L6