Revision 40372 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/vectorial/IntersectsGeometryEvaluator.java

View differences:

IntersectsGeometryEvaluator.java
9 9
import org.gvsig.fmap.geom.Geometry;
10 10
import org.gvsig.fmap.geom.operation.GeometryOperationException;
11 11
import org.gvsig.fmap.geom.operation.GeometryOperationNotSupportedException;
12
import org.gvsig.fmap.geom.operation.relationship.DefaultRelationshipGeometryOperationContext;
13
import org.gvsig.fmap.geom.operation.relationship.Intersects;
14
import org.gvsig.fmap.geom.operation.towkt.ToWKT;
15 12
import org.gvsig.tools.evaluator.AbstractEvaluator;
16 13
import org.gvsig.tools.evaluator.EvaluatorData;
17 14
import org.gvsig.tools.evaluator.EvaluatorException;
......
53 50

  
54 51
	public Object evaluate(EvaluatorData data) throws EvaluatorException {
55 52
		try {
56
			DefaultRelationshipGeometryOperationContext context;
53
			Geometry geom = null;
57 54
			if (isDefault) {
58 55
				Feature feature = (Feature) data.getContextValue("feature");
59
				context =new DefaultRelationshipGeometryOperationContext(feature
60
						.getDefaultGeometry());
56
				geom =feature.getDefaultGeometry();
61 57

  
62 58
			} else {
63
				Geometry geom = (Geometry) data.getDataValue(geomName);
64

  
65
				context = new DefaultRelationshipGeometryOperationContext(geom);
59
				geom = (Geometry) data.getDataValue(geomName);
66 60
			}
67
			return geometryTrans.invokeOperation(Intersects.CODE, context);
61
			return new Boolean(geometryTrans.intersects(geom));
68 62

  
69 63
		} catch (Exception e) {
70 64
			throw new EvaluatorException(e);
......
78 72
	public String getSQL() {
79 73
		if (geometryWKT == null) {
80 74
			try {
81
				geometryWKT = (String) geometry.invokeOperation(ToWKT.CODE,
82
						null);
75
				geometryWKT = geometry.convertToWKT();
83 76
			} catch (GeometryOperationNotSupportedException e) {
84 77
				throw new DataEvaluatorRuntimeException(e);
85 78
			} catch (GeometryOperationException e) {

Also available in: Unified diff