Ignore:
Timestamp:
2019-09-04T11:43:24+02:00 (5 years ago)
Author:
GerdP
Message:

fix #18051 and #18106
This is more or less a rewrite of the code, I hope I didn't introduce too many new problems.

  • always consider all ways with matching tag when calculating unconnected nodes
  • for partial tests filter the calculated errors (this means a small additional delay for this test when uploading data)
  • fix recursion problem in isConnectedTo so that it doesn't stop too early
  • remove code which excluded eg. ways with highway=cycleway + railway=abandoned or waterway=river + boundary=administrative
  • improve performance, esp. use HashSet when calculating types of nodes in method addNode() and QuadBuckets only when searching is done. Together with other changes this reduces runtime by ~50%, so I hope the delay for the upload is not too high.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/osm/Node.java

    r14964 r15335  
    373373                for (final Node n : w.getNodes()) {
    374374                    final boolean containsN = visited.contains(n);
    375                     visited.add(n);
    376375                    if (!containsN && (predicate == null || predicate.test(n))
    377376                            && n.isConnectedTo(otherNodes, hops - 1, predicate, visited)) {
Note: See TracChangeset for help on using the changeset viewer.