Skip to content

Latest commit

 

History

History
14 lines (8 loc) · 1.86 KB

oceanBleedingCheck.md

File metadata and controls

14 lines (8 loc) · 1.86 KB

Ocean Bleeding Check

This check aims to flag streets, railways, and buildings that bleed into (intersect) ocean features. Intersection includes any geometrical interaction between the ocean feature and the land feature. The only exception to this rule is streets that end at ocean boundaries and are tagged with amenity->ferry_terminal; such streets are not flagged. The definition of streets and railways can be changed in the configuration for the check ("lineItems.offending" for railways, "highway.minimum" and "highway.exclude" for streets). Additionally, tags that describe ocean features are configurable. A valid ocean feature (that is considered for the check) must conform to "ocean.valid" and must not conform to "ocean.invalid", OR must conform to "ocean.boundary". The latter is by default natural->coastline.

Live Examples

  1. Building id:355294262 extends into ocean feature id:243872591 invalidly.
  2. Street id:327223335 extends into ocean feature id:87287185 invalidly.

Code Review

The check starts off by validating certain waterbodies (Atlas Areas or LineItems) as being ocean features. Then it collects all valid buildings, streets, and railways that intersect the given ocean feature. A single flag is created which includes all intersecting land features for the ocean feature. The check repeats this process for every Area and LineItem in the supplied atlas.

Please see the source code for OceanBleedingCheck here: OceanBleedingCheck