kopia lustrzana https://github.com/JOSM/MapWithAI
FIXUP: Don't try to use non-highway objects when adding a node to another way
Signed-off-by: Taylor Smock <taylor.smock@kaart.com>pull/1/head
rodzic
c8264da706
commit
d8969f38eb
|
@ -190,12 +190,12 @@ public class MissingConnectionTags extends AbstractConflationCommand {
|
||||||
for (Way way : Utils.filteredCollection(possiblyAffectedPrimitives, Way.class)) {
|
for (Way way : Utils.filteredCollection(possiblyAffectedPrimitives, Way.class)) {
|
||||||
Collection<OsmPrimitive> seenFix = new HashSet<>();
|
Collection<OsmPrimitive> seenFix = new HashSet<>();
|
||||||
crossingWays.startTest(NullProgressMonitor.INSTANCE);
|
crossingWays.startTest(NullProgressMonitor.INSTANCE);
|
||||||
way.getDataSet().searchWays(way.getBBox()).forEach(crossingWays::visit);
|
way.getDataSet().searchWays(way.getBBox()).stream().filter(w -> w.hasKey(HIGHWAY))
|
||||||
|
.forEach(crossingWays::visit);
|
||||||
crossingWays.endTest();
|
crossingWays.endTest();
|
||||||
for (TestError error : crossingWays.getErrors()) {
|
for (TestError error : crossingWays.getErrors()) {
|
||||||
if (seenFix.containsAll(error.getPrimitives())
|
if (seenFix.containsAll(error.getPrimitives()) || error.getPrimitives().stream()
|
||||||
|| error.getPrimitives().stream().filter(Way.class::isInstance).map(Way.class::cast)
|
.filter(Way.class::isInstance).map(Way.class::cast).noneMatch(w -> w.hasKey(HIGHWAY))) {
|
||||||
.filter(w -> w.hasKey(HIGHWAY)).count() == 0L) {
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
TestError.Builder fixError = TestError.builder(error.getTester(), error.getSeverity(), error.getCode())
|
TestError.Builder fixError = TestError.builder(error.getTester(), error.getSeverity(), error.getCode())
|
||||||
|
@ -229,7 +229,7 @@ public class MissingConnectionTags extends AbstractConflationCommand {
|
||||||
Collection<Command> commands = new ArrayList<>();
|
Collection<Command> commands = new ArrayList<>();
|
||||||
if (intersectionNodes.stream().anyMatch(way::containsNode)) {
|
if (intersectionNodes.stream().anyMatch(way::containsNode)) {
|
||||||
Collection<Way> searchWays = way.getDataSet().searchWays(way.getBBox()).parallelStream()
|
Collection<Way> searchWays = way.getDataSet().searchWays(way.getBBox()).parallelStream()
|
||||||
.collect(Collectors.toList());
|
.filter(w -> w.hasKey(HIGHWAY)).collect(Collectors.toList());
|
||||||
searchWays.remove(way);
|
searchWays.remove(way);
|
||||||
for (Way potential : searchWays) {
|
for (Way potential : searchWays) {
|
||||||
for (Node node : way.getNodes()) {
|
for (Node node : way.getNodes()) {
|
||||||
|
|
Ładowanie…
Reference in New Issue