Skip to main content
Question

Cut overlapping polygons based on date


I have a polygon layer with overlapping polygons. These polygons have dates. What I would like to have is no more overlapping polygons.

Where two or more polygons overlap, I would like to preserve the youngest polygon. If the size of the overlapping polygons are different, then I would like to cut out the youngest polygon and preserve what is left from the older polygon.

8 replies

danilo_fme
Evangelist
Forum|alt.badge.img+41
  • Evangelist
  • January 17, 2023

Hi @joost​ Please, could you share your example?


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • January 17, 2023

An AreaOnArea Overlayer should work here, if you build a list which includes the date, you can then sort this list in descending order and use the first list element as the date for the polygon


Forum|alt.badge.img+2
  • January 17, 2023

@joost​ Thanks for including some sample data. I think something along the lines of this might get you close:

imageAreaOnAreaOverlayer as mentioned above, but create a list of the dates (DATUM). Use ListSorter to sort the date list then Dissolve on the first date in the list.

Example attached (FME 2022.2)


  • Author
  • February 28, 2023

Hi everyone,

 

I am still trying to get it working. Looks like the date field is not doing what I want it to do. Still looking for the right answer, despite the help I allready got here. I put the databases and the workbench as attachment.

 

What I want as a result is that there are no overlapping areas anymore and that the newwest (by date) polygon stays, and even cuts out of an underlaying bigger polygon.


  • Author
  • February 28, 2023

I forgot the attachment, so here it is


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • February 28, 2023
joost wrote:

Hi everyone,

 

I am still trying to get it working. Looks like the date field is not doing what I want it to do. Still looking for the right answer, despite the help I allready got here. I put the databases and the workbench as attachment.

 

What I want as a result is that there are no overlapping areas anymore and that the newwest (by date) polygon stays, and even cuts out of an underlaying bigger polygon.

Do you have an example where the output is not as you expect? If I look at polygons with ID 18 and 221 which overlap, 221 is more recent so this shape is cut out of 18

 

Edit: i think the step you are missing is making sure the features that are kept have the information of the most recent polygon. I would build a bigger list with all the relevant attributes then use a listindexer after the sorter to retrieve all the information from the most recent polygon in the list


  • Author
  • March 1, 2023
ebygomm wrote:

Do you have an example where the output is not as you expect? If I look at polygons with ID 18 and 221 which overlap, 221 is more recent so this shape is cut out of 18

 

Edit: i think the step you are missing is making sure the features that are kept have the information of the most recent polygon. I would build a bigger list with all the relevant attributes then use a listindexer after the sorter to retrieve all the information from the most recent polygon in the list

You are absolutely right with your edit. It's about the information. Building a bigger list I can do here, i suppose:

imageThe listindexer I will try to explore, never used it.

 

Thanks, for so far, and maybe I will return if I cant get it right.


  • Author
  • March 1, 2023
ebygomm wrote:

Do you have an example where the output is not as you expect? If I look at polygons with ID 18 and 221 which overlap, 221 is more recent so this shape is cut out of 18

 

Edit: i think the step you are missing is making sure the features that are kept have the information of the most recent polygon. I would build a bigger list with all the relevant attributes then use a listindexer after the sorter to retrieve all the information from the most recent polygon in the list

Looks like it is working, with this set up:

image


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings