From 7d814a571f8054a5a394c6a0190854203551ecc8 Mon Sep 17 00:00:00 2001 From: Denis Date: Mon, 28 Jul 2025 20:57:51 +0300 Subject: [PATCH] Preferring vertices over midpoints --- src/lib/sort_features.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/lib/sort_features.js b/src/lib/sort_features.js index 85229584c..2cd85ee19 100644 --- a/src/lib/sort_features.js +++ b/src/lib/sort_features.js @@ -8,6 +8,12 @@ const FEATURE_SORT_RANKS = { Polygon: 2 }; +const POINT_META_RANKS = { + vertex: 0, + midpoint: 1, + feature: 2 +}; + function comparator(a, b) { const score = FEATURE_SORT_RANKS[a.geometry.type] - FEATURE_SORT_RANKS[b.geometry.type]; @@ -15,6 +21,11 @@ function comparator(a, b) { return a.area - b.area; } + // Always consider vertices before midpoints! + if (score === 0 && a.geometry.type === Constants.geojsonTypes.POINT) { + return POINT_META_RANKS[a.properties.meta] - POINT_META_RANKS[b.properties.meta]; + } + return score; }