Question

Populate one attribute based on spatial overlap to existing attribute

  • 25 November 2013
  • 1 reply
  • 9 views

Badge
I'm trying to populate an attribute value from one feature to the next based what points are contained by certain areas.   I am using the SpatialRelator to find all my points that overlap my polygon, then I would like to map the value from my polygon onto the points existing Attirbute.   I have connected an AttributeValueMapper transformer to the output of my Spatial Relator but it does not seem to overwrite or transfer the attrubtes?

 

 

Example:

 

Point file

 

Attribute: Mapsheet

 

 

Polygon file 

 

Attribute: WMS_Mapsheet

 

 

I would like to populate the Mapsheet attribute from the Polygons WMS_Mapsheet  based on the spatial relation the points are contained within the polygon.  

 

 

 

1 reply

Userlevel 2
Badge +17
Hi,

 

 

Output features from the SpatialRelator will contain attributes of related CANDIDATE features as a complex list attribute named "_relationships" by default. For example, if you send points to BASE port and send polygons to CANDIDATE port, each output point will have "_relationships{}.WMS_Mapsheet" when one or more polygons are related spatially. Since output features also have "_related_candidates" (default name) attribute which indicates the number of related CANDIDATE features (0 or more), you can see how many CANDIDATE features are related with this attribute.

 

 

In addition, if a point cannot be related to multiple polygons simultaneously (in other words, polygons are not overlapped each other), you can also consider using the SpatialFilter. 

 

 

Takashi

Reply