I would like to define the area in which a transformer should be applied by using a polygon mask. I know this can be done in FME but I can´t find any references to it. Can anyone enlighten me?

  • SpatialFilter? – mkennedy Feb 21 '14 at 21:02
  • As already mentioned here, you can mask those features the transformer should be applied to by a SpatialFilter Transformer. Nevertheless your Workbench will read all Features unless you define a Bounding Box to filter in the reader itself. This is the only way I know to restrict the readers to use the spatial index and only read those features which are in a certain spot that should get processed. This is often done by publishing these parameters and cascading Workbenches (see fmepedia.safe.com/AnswersQuestionDetail?id=906a0000000cmGdAAI) – Jürgen Zornig Feb 22 '14 at 23:08

Immediately prior to your transformer you want to use either the SpatialFilter transformer or the Clipper transformer.

The SpatialFilter will leave your geometries as they are: geometries that touch your bounding polygon can be left intact.

The Clipper will perform a geometric clip of your features at the edges of the bounding polygon.

If you are dealing with large amounts of data you may want to consider using "Use Search Envelope" on your reader (if available) with your bounding polygon's Max and Min x/y's first, then do your Clipper or SpatialFilter as it should be more efficient.


You could use a Clipper transformer to clip out only the area of data to be processed. Is that what you are looking for? There are very few transformers that accept a polygon as a boundary to the transformation to be completed; in fact the only one I can think of is the FeatureReader transformer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.