I have a polygon layer representing a habitat type and another polygon layer representing water features. I want to be able to assign to each water feature whether it shares a connection via a habitat polygon with another water feature or not (within a distance radius). A complication is that if I use buffers to represent the distance radius, they overlap. An additional complication is that I've tens of thousands of the water features.
I've experimented with different solutions using intersections, but I've not been able to come to a solution. Anybody have any idea? I think that this is kind of a FRAGSTATS or Patch Analyst problem, but with vector and with many tens of thousands of landscapes to run it on.
In the image below, orange polygons are water features and the green area is the habitat (the black circles are 1 km buffers).
In the map above, water features 20957 and 20882 are obviously not connected via the habitat to any other feature, nor is feature 44444 (which is connected to the habitat but not connected by the habitat to any other feature). On the other hand, there are definitely connections for 21077, 21044, 20993 and 37716, while there is no connection within 1 km for feature 21655. I don't need to know the IDs of the connecting features, or even a count, just whether or not there does exist a connection to another feature within a 1 km buffer.