Skip to main content

Hi,

I would like to check if some points (around 2,000) overlap with building areas (around 54 million). When running the PonitOnAreaOverlayer it takes about 1.5 h to run as the transformer needs to count all the polygons, too. Is there a possibility to stop the transformer running after the points went through? I am still a beginner to FME, so there is probably only one single click to do...

Best,

Jo

Try using a FeatureReader with a 'Spatial Filter'of intersect.

 

http://docs.safe.com/fme/html/FME_Desktop_Documentation/FME_Transformers/Transformers/featurereader.htm

 

Example process process times for a dummy project I just made with a large shapefile;

 

Feature Reader

170,000 rows intersecting 1 point = 100 results

2.2 seconds

 

Adding as a shapefile reader with PointOnAreaOverlay

170,000 rows intersecting 1 point = 100 results

40.7 seconds

 


@jojojoe​  FeatureReader is probably the answer, as @jlbaker2779​ suggests. But only if your building areas have a spatial index. So if your source is a file based dataset, make sure it has an index file. If it's a database, make sure the index is up-to-date.


Thanks to @jlbaker2779​ , works fine and it takes around 13 minutes, only. I've added the spatial index to the points shapefile, the building areas had one before.


Thanks to @jlbaker2779​ , works fine and it takes around 13 minutes, only. I've added the spatial index to the points shapefile, the building areas had one before.

Excellent! Big improvement!


Reply