Skip to main content

Is it possible to find out thetopological  relationship between the polygons from one layer compared to other ones?

Basically, the outcone should be: Polygon X intersects Polygon a, Polygon X contains Polygon b,c,d and so on.

(params DISJOINT, TOUCH, OVERLAP-DISJOINT, OVERLAP-INTERSECT, EQUAL, CONTAINS and so on). I am not sure which tool I should use.

Thank you,

Hi,

 

 

have you looked at the SpatialRelator?

 

 

David
Yes, All I got was one column with numbers in it. I am not quite sure what I have to do in order to know which is related to which, and what is the relationship type. I tried to copy attributes from transformer but it does not provide the info.
Hi,

 

 

The SpatialRelator will return a list in which the spatial relationship will be stated.

 

 

Itay
Hi Robert,

 

 

Itay is right. FME defines 5 spatial relationship types between 2 polygons, except Disjoint. i.e. Contains, Equals, Overlaps, Touches and Within. You can see detailed description here. FME Transformers

 

> All Workbench Transformers > Spatial Relations Defined http://docs.safe.com/fme/html/FME_Transformers/Default.htm#Transformers/spatialrelations.htm   Select appropriate relationship(s) to your purpose for the SpatialRelator. The SpatialRelator appends "_relationships{}" to output features, and "_relationships{}.pass{}" contains relationship type(s).

 

 

Takashi
In addition to the other answer: inside the list records is an attribute called "de9im". In this attribute the is a code which refers to the "dimensionally enhanced nine intersection model".  From this you can obtain every possible relation between the two objects.

 

 

The downside is is that the code is incedribly hard to interpret. You can search the interweb for more information. I use a set of creators which generate objects with specific relations in order to understand the de9im information.

Reply