Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
T
traff
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 17
    • Issues 17
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge Requests 0
    • Merge Requests 0
  • Requirements
    • Requirements
    • List
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Security & Compliance
    • Security & Compliance
    • Dependency List
    • License Compliance
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • traff
  • traff
  • Issues
  • #10

Closed
Open
Opened Jul 02, 2019 by Michael von Glasow@mvglasowOwner

Routes as location references

Currently TraFF lacks the ability to describe more complex routes where road attributes may change along the way, and/or the route from one point to another is ambiguous even with a (single) via point.

This can be addressed in a more comprehensive manner by supporting routes for locations.

For backward compatibility, these routes should use from and to for their start and end point.

The route between these points should be described as a series of points, encapsulated in a new child element of location.

To describe a route in this way, encoders should first split the route into segments at each junction (i.e. points where ways cross, split or join), then place a point on each segment, preferably close to its middle. It is generally not recommended to omit points, or add extra ones.

To compute a route for a “traditional” location, a routing algorithm has worked well:

  • Each segment of road has a cost based on its length, and optionally how well its attributes match those of the location (good matches have a lower cost).
  • The link between one of the location’s reference points any any other point also has a cost based on its length, with a heavy penalty factor (so roads will be preferred)—this is necessary to handle reference points located slightly off-road (or even on the opposite carriageway).
  • The route is then computed with least-cost routing.

This could be adapted to route descriptions by adjusting the cost of ways based on their distance from the nearest route point (the closer they are to a point, the lower the cost). If encoder and decoder use slightly different map data, the route will thus be approximated as closely as possible.

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: traffxml/traff#10