return "TOUCHES(" + propertyName + "," + wkt + ")";
} else if (binary instanceof WithinInfo) {
return "WITHIN(" + propertyName + "," + wkt + ")";
}
} else if (spatialOps instanceof DistanceBufferTypeInfo) {
DistanceBufferTypeInfo distanceBuffer = (DistanceBufferTypeInfo) spatialOps;
AbstractGeometryInfo geom = distanceBuffer.getGeometry();
GeometryFactory factory = new GeometryFactory();
Geometry geometry = toGeometry(factory, geom);
WKTWriter writer = new WKTWriter();
String wkt = writer.write(geometry);
String units = distanceBuffer.getDistance().getUnits();
String distance = distanceBuffer.getDistance().getValue();
if (distanceBuffer instanceof DWithinInfo) {
return "DWITHIN(" + propertyName + "," + wkt + "," + distance + "," + units + ")";
} else if (distanceBuffer instanceof BeyondInfo) {
return "BEYOND(" + propertyName + "," + wkt + "," + distance + "," + units + ")";
}