Hello,
I'm having difficulty getting the results I want out of the Spatial Relator and AreaOnAreaOverlayer. Essentially, I'm trying to identify overlapping polygons within the same layer, where the overlap area is of a significant size, so that I can separate these out into separate layers in a fan out at the end of the process.
I want to do this by creating a field and populating that with a value, where the first / bottom polygon remains in the original layer, but additional overlapping polygons are allocated an increasing number so they can be separated into a new layer - all the '0's, '1's and '2's together.
I don't want to identify or attribute what are essentially topology errors (very slight overlaps), as these need to be reviewed and fixed manually, just what are considered 'legal' overlaps so they can be topologically cleaned separately.
I have an (incredibly bulky and inefficient) solution, using both SpatialRelator and AreaOnAreaOverlayer and a hefty amount of conditional value calculations for attributes, but there's got to be a better way.
The SpatialRelator seems to identify not only areas that overlap but also lines and points, and these should fall into the 'insignificant / topology error' category. If there was some way to only select area cardinality from the SpatialRelator, and then check the size of these overlaps, I think that might work.
The AreaOnAreaOverlayer only gives me the intersection of the overlapping areas, whereas I need to select the whole of the original polygon and allocate it an attribute, so this can only be used as a supplier in a merge or the like. Also, it occasionally throws out a rejected feature which stops the translation, and I'm stumped as to what to do to fix that.
Any ideas?
My build is 2018.0. I'm attaching the current mess of a workflow and three shapefiles. The 'Licences' shapefile produces what I want to see, but only if you disable the feature merger, and only because it doesn't overlap any adjacent polygons. For the other two, the final AttributeManager creates an attribute OVERLAPS_LAYER_NUMBER_2, which is almost right, but doesn't create the right sequence of numbers - ie, it starts at '2' rather than '1'.
Any help much appreciated!