Skip to main content
I have two Datasets a PointFile & PolygonFile, both have the same Attribute.

 

Ex: Mapsheet

 

 

I need to find all the points that are contained within the polygon where the Mapsheet does not equal one another? I need to output the points that do not match the Mapsheet .... 

 

 

I'm not sure the order in which to use a SpatialFilter or use another method?

 

 

 

 

Hi,

 

 

When the polygons are not overlapped each other, the SpatialFilter can do that. Send the polygons to BASE port, send the points to CANDIDATE port. Specify "Mapsheet" to "Group By" parameter. Then, every point which "intersects a polygon but not matches on Mapsheet, or does not intersect any polygon" will go to FAILED port.

 

 

If you need to get only points which "intersect a polygon but not match on Mapsheet": Not specify "Group By". Specify "Yes" to "Merge Attribute", and any prefix (e.g. base_) to "Attribute Prefix" parameter. Output points from PASSED port will have attributes of the related polygon with the prefixed name (base_***), so you can determine if "base_Mapsheet" matches with "Mapsheet" with the Tester transformer.

 

Takashi

 


Alternatively, you can also consider using the SpatialRelator transformer with specifying "Mapsheet" to "Attribute(s) that Must Differ" parameter.
Thanks for the response Takashi, after some testing, it was the PointOnAreaOverlayer with the Point outputs connected to a tester that ended up doing the job.  The Spatial filter only isolated the points that did not match if the Attribute was Null.    

Reply