mirror of
https://github.com/FoggedLens/iD.git
synced 2026-05-16 05:49:16 +02:00
Allow the layer and level tag to differentiate very close points (close #6612)
This commit is contained in:
@@ -1558,6 +1558,8 @@ en:
|
||||
title: Use a bridge or tunnel
|
||||
use_different_layers:
|
||||
title: Use different layers
|
||||
use_different_layers_or_levels:
|
||||
title: Use different layers or levels
|
||||
use_different_levels:
|
||||
title: Use different levels
|
||||
use_tunnel:
|
||||
|
||||
Vendored
+3
@@ -1952,6 +1952,9 @@
|
||||
"use_different_layers": {
|
||||
"title": "Use different layers"
|
||||
},
|
||||
"use_different_layers_or_levels": {
|
||||
"title": "Use different layers or levels"
|
||||
},
|
||||
"use_different_levels": {
|
||||
"title": "Use different levels"
|
||||
},
|
||||
|
||||
@@ -134,6 +134,19 @@ export function validationCloseNodes(context) {
|
||||
if (nearby.loc === node.loc ||
|
||||
geoSphericalDistance(node.loc, nearby.loc) < pointThresholdMeters) {
|
||||
|
||||
// allow very close points if the z-axis varies
|
||||
var zAxisKeys = { layer: true, level: true };
|
||||
var zAxisDifferentiates = false;
|
||||
for (var key in zAxisKeys) {
|
||||
var nodeValue = node.tags[key] || '0';
|
||||
var nearbyValue = nearby.tags[key] || '0';
|
||||
if (nodeValue !== nearbyValue) {
|
||||
zAxisDifferentiates = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (zAxisDifferentiates) continue;
|
||||
|
||||
issues.push(new validationIssue({
|
||||
type: type,
|
||||
severity: 'warning',
|
||||
@@ -151,6 +164,10 @@ export function validationCloseNodes(context) {
|
||||
new validationIssueFix({
|
||||
icon: 'iD-operation-disconnect',
|
||||
title: t('issues.fix.move_points_apart.title')
|
||||
}),
|
||||
new validationIssueFix({
|
||||
icon: 'iD-icon-layers',
|
||||
title: t('issues.fix.use_different_layers_or_levels.title')
|
||||
})
|
||||
]
|
||||
}));
|
||||
|
||||
Reference in New Issue
Block a user