nextcloud / nextcloud/maps

LOD for vector track data (adaptive rendering)

Open
#1,422 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage enhancement feature: :mountain_biking_woman: tracks
Dominant language
JavaScript
Stars
598
Forks
113
PR merge metrics
No merged PRs in 30d

Description

How to use GitHub
  • Use the 👍 reaction to show that you are interested in the same feature.
  • Don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Is your feature request related to a problem? Please describe.

I like to see all my tracks on the map, so I can see where I have been hiking in Europe. But the map is really struggling trying to show all the tracks when zooming out.

Describe the solution you'd like

I think it would help to have some line simplification or path generalization by data decimation so fewer points need to be drawn when zooming out. One popular algorithm is the Ramer-Douglas-Peucker, and one library implementing this is simplify.js.

Additional context

I found one related closed issue, but the solution is to hide/filter whole tracks in stead of the points within the tracks:
https://github.com/nextcloud/maps/issues/777

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No implementation files or tests are named. Start by locating the JavaScript code that renders vector track data and review the suggested simplify.js or Ramer–Douglas–Peucker approach. Done means tracks remain visible while zooming out with fewer points drawn and improved map performance.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.