Revision 40372 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/vectorial/IntersectsGeometryEvaluator.java
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