2

Ok, I guess this should be not too hard, but I can't figure it out:

I have a layer "A" resulting from a layer "0" which was intersected with itself. So layer "A" contains all intersects.

The relevant columns in the table are: "Value" and "ShapeArea" I can see which features(polygons) in "A" are matching with each other as they have the same Shape_Area. The Intersecting parts have (sometimes) different values in the field "Value" However, what I need are not both intersecting features (polygons) but only the one with the higher value.

And also I not only have intersections containing 2 polygons but sometimes 3 or more.

As there are 2000 features in the table I can't select them manual...

enter image description here

So in the example in the picture: Objectid 1 and 2 --> I would only need one of them (which one is not relevant as they have th same value) Objectid 3 and 4 --> I need Objectid 3 as the value is higher

As a side note I wonder why you can intersect a layer with itself but you can't merge a layer with itself so you could use the combining rules...

3
  • 1
    You should probably add a screenshot and/or table of what you have and the desired results
    – Bera
    Commented Oct 11, 2016 at 8:51
  • Done - I hope this helps :)
    – M.S.
    Commented Oct 11, 2016 at 9:08
  • Spatial join followed by the dissolve should do the job
    – fatih_dur
    Commented Oct 11, 2016 at 9:48

2 Answers 2

2

First use your layer as both target and join features in spatial join. Pick the maximum operator as merge rule for the Value field in the field mapping (similar to Merge tool as you referred).

Then dissolve the output of the previous by area and value fields.

3
  • Perfect! This was the perfect solution!
    – M.S.
    Commented Oct 11, 2016 at 10:52
  • I should admit though, using Area field as the dissolve field is not a robust practice. It's only (relatively) safe if the number of your shapes are not vast or their shapes are distinct in most cases.
    – fatih_dur
    Commented Oct 11, 2016 at 23:58
  • 1
    yes, that's true, but in this case, as I dissolve by area and value field the result is 100% of what I need
    – M.S.
    Commented Oct 17, 2016 at 13:57
1

I think want you probably want is Union, not Intersect? See this question: How can I keep only the maximal value of two overlapping polygon, keeping also the initial value where they don't?

3
  • Yeah, I somehow wanted to avoid union (for no particular reason) but I think this is the best method to do.
    – M.S.
    Commented Oct 11, 2016 at 9:39
  • Addition: But this only works if I have not already calculated my layer "A" --> so you mean I need to do Union on my layern"0"? (and not intersect?) But what is if you would only have the layer "A"?
    – M.S.
    Commented Oct 11, 2016 at 9:47
  • You can perform Union on a single feature class
    – Bera
    Commented Oct 11, 2016 at 10:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.