|
From: maven a. <apa...@gm...> - 2020-10-13 08:04:22
|
public class FilterTest {
static {
ogr.RegisterAll();
}
public static void main(String[] args) throws CQLException, IOException {
Map<String, Object> params = new HashMap<>();
params.put("DriverName", "xxx");
params.put("DatasourceName", xxx);
DataStore dataStore = DataStoreFinder.getDataStore(params);
SimpleFeatureSource sfs = dataStore.getFeatureSource("water");
Filter filter = CQL.toFilter("BBOX(" +
sfs.getSchema().getGeometryDescriptor().getLocalName() + ",
20,30,21,31) and num <= 10");
OGRFilterTranslator ogrFilterTranslator = new
OGRFilterTranslator(sfs.getSchema(), filter);
System.out.println(ogrFilterTranslator.getSpatialFilter());
System.out.println(ogrFilterTranslator.getPostFilter());
System.out.println(ogrFilterTranslator.getAttributeFilter());
}
}
Output:
null
[ the_geom bbox ReferencedEnvelope[20:21,30:31] ]
num <= 10
Seems like that the bbox filter is not recognized by OGRFilterTranslator
|