Opened 5 years ago

Last modified 2 years ago

#20130 assigned enhancement

Use mapcss rules instead of CrossingWays java code to find overlapping areas — at Initial Version

Reported by: GerdP Owned by: team
Priority: normal Milestone:
Component: Core validator Version:
Keywords: crossing Cc: Klumbumbus, simon04

Description

Today we use the java code in CrossingWays to find e.g. "Crossing building/residential area".
This should better be done using a rule like this

/* Building overlapping landuse residential (spatial test) */
area[building][building!~/no|entrance/]  area[landuse=residential]{
  throwWarning: tr("Overlapping buildings/residential area");
}

Reasoning:

  • it also handles multipolygons
  • it marks the overlapping area, not the crossing segments
  • it also handles overlaps where the two areas share nodes

In r17084 CrossingWays also finds crossings between

  • building/waterway=riverbank ("Crossing building/waterway")
  • building/railway=platform ("Crossing building/railway" (false positive?)

It doesn't find other crossing like those between building/natural=water, see #20121

Maybe it is possible to create a single mapcss test to catch different types of areas which shouldn't overlap a building?

I didn't test the impact on performance, I assume it is rather small.

Change History (0)

Note: See TracTickets for help on using tickets.