From the documentation:
Filter Type | Defines whether a single filter or multiple filters will be given, as well as clarifies the feature order that is expected. - Multiple Filters – the SpatialFilter assumes Candidate and Filter features may come in any mixed order, and must wait until all features have entered before performing any filtering.
- Filters First – the SpatialFilter assumes that all Filter features enter before any Candidate features, and will be able to process the Candidate features immediately as they arrive.
- Single Filter – the SpatialFilter assumes that after the first and only Filter feature has entered, only Candidate features will enter, and will be able to process the Candidate features immediately as they arrive.
|
When set at Filters First, it processes the candidates the moment they enter the SpatialFilter. This can speed up the process as the default, Multiple Filters, waits until all Filters and Candidates have reached the SpatialFilter, this way being a blocking transformer.
So to use this, you need to make sure the filters enter the SpatialFilter before the Candidates, else the candidates will be processed against no filters and being output through the Failed outputport.
You can try this by creating an attribute “order” for filters with value 1 and candidates with value 2, then use a sorter to make sure filters are first and then split filters and candidates using a tester and feed them into the SpatialFilter.
I see you use classic readers. I believe the order of the readers in the navigator determine the order the features are read. So I think the solution for your issue is to change this order. But I never use classic readers, so I might be wrong. Another reason I prefer FeatureReaders over classic readers.
Another way to influence feature order is to right click on a connection where multiple connection come from and click Set Connection Runtime Order...