Skip to content

Direction-based lane offset for train markers #21

Description

@Jorioz

What to build

When two trains are close together it is hard to tell them apart or read their directions: the current overlap adjustment only reacts once markers collide, shrinking both to half size and nudging them by a small perpendicular offset, which leaves them mostly stacked.

Replace this with a structural rule: every train marker always rides a consistent side of its line based on the train's direction, like double-track railways (e.g. inbound on one side, outbound on the other, consistently across the whole map). Opposite-direction trains then never overlap by construction, and direction becomes readable spatially at a glance. Keep a much milder residual adjustment (small stagger, no aggressive shrink) for same-direction bunching only.

Acceptance criteria

  • A moving train renders offset to the side of its line determined by its direction, consistently across all lines and segments (including line extensions)
  • Two trains passing in opposite directions render as two clearly separate markers on opposite sides of the line
  • Same-direction trains that bunch up remain individually distinguishable without shrinking to illegibility
  • Markers still track the line correctly through corners/bends at the offset
  • Selection highlight, dimming, and click targets keep working at the offset position

Blocked by

None - can start immediately

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions