Revision 40372 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/vectorial/EqualsGeometryEvaluator.java
EqualsGeometryEvaluator.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.Equals; |
|
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; |
... | ... | |
58 | 55 |
|
59 | 56 |
public Object evaluate(EvaluatorData data) throws EvaluatorException { |
60 | 57 |
try { |
61 |
DefaultRelationshipGeometryOperationContext context;
|
|
58 |
Geometry geom = null;
|
|
62 | 59 |
if (isDefault) { |
63 | 60 |
Feature feature = (Feature) data.getContextValue("feature"); |
64 |
context =new DefaultRelationshipGeometryOperationContext(feature |
|
65 |
.getDefaultGeometry()); |
|
61 |
geom =feature.getDefaultGeometry(); |
|
66 | 62 |
|
67 | 63 |
} else { |
68 |
Geometry geom = (Geometry) data.getDataValue(geomName); |
|
69 |
|
|
70 |
context = new DefaultRelationshipGeometryOperationContext(geom); |
|
64 |
geom = (Geometry) data.getDataValue(geomName); |
|
71 | 65 |
} |
72 |
return geometryTrans.invokeOperation(Equals.CODE, context);
|
|
66 |
return new Boolean(geometryTrans.equals(geom));
|
|
73 | 67 |
|
74 | 68 |
} catch (Exception e) { |
75 | 69 |
throw new EvaluatorException(e); |
... | ... | |
83 | 77 |
public String getSQL() { |
84 | 78 |
if (geometryWKT == null) { |
85 | 79 |
try { |
86 |
geometryWKT = (String) geometry.invokeOperation(ToWKT.CODE, |
|
87 |
null); |
|
80 |
geometryWKT = geometry.convertToWKT(); |
|
88 | 81 |
} catch (GeometryOperationNotSupportedException e) { |
89 | 82 |
throw new DataEvaluatorRuntimeException(e); |
90 | 83 |
} catch (GeometryOperationException e) { |
Also available in: Unified diff