elevation enthält einen Eintrag pro Originalpunkt, geojson.coordinates nur die per Douglas-Peucker vereinfachten Punkte. Ein gemeinsamer Index zeigte deshalb ab rund 3 % des Profils auf das Streckenende. Die neue Distanz-Kopplung nutzt coord_distances (kumulative Distanz je vereinfachter Koordinate), um beim Überfahren des Höhenprofils die nächstgelegene Stelle auf der Karte zu finden. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NBMBfip6BAG8VV9raSf6vu
20 lines
675 B
JavaScript
20 lines
675 B
JavaScript
/// <reference path="../pb_data/types.d.ts" />
|
|
|
|
// Kumulative Distanz je Koordinate der vereinfachten Geometrie. Nötig, weil
|
|
// elevation einen Eintrag pro Originalpunkt hat, geojson aber nur die
|
|
// vereinfachten — ohne diese Brücke zeigt die Hervorhebung aus dem
|
|
// Höhenprofil auf der Karte an die falsche Stelle.
|
|
|
|
migrate((app) => {
|
|
const c = app.findCollectionByNameOrId('trail_versions')
|
|
c.fields.add(new Field({
|
|
name: 'coord_distances',
|
|
type: 'json',
|
|
maxSize: 2000000,
|
|
}))
|
|
app.save(c)
|
|
}, (app) => {
|
|
const c = app.findCollectionByNameOrId('trail_versions')
|
|
c.fields.removeByName('coord_distances')
|
|
app.save(c)
|
|
})
|