Revision 47576

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.geometry/org.gvsig.expressionevaluator.geometry.lib/org.gvsig.expressionevaluator.geometry.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultGeometryExpressionBuilderHelper.java
4 4
import java.util.Objects;
5 5
import org.cresques.cts.IProjection;
6 6
import org.gvsig.expressionevaluator.ExpressionBuilder;
7
import org.gvsig.fmap.geom.Geometry;
8
import org.gvsig.fmap.geom.primitive.Envelope;
9

  
10 7
import org.gvsig.expressionevaluator.ExpressionBuilder.AbstractValue;
11 8
import org.gvsig.expressionevaluator.ExpressionBuilder.Constant;
12 9
import org.gvsig.expressionevaluator.ExpressionBuilder.Function;
......
16 13
import org.gvsig.expressionevaluator.ExpressionBuilder.Visitor;
17 14
import org.gvsig.expressionevaluator.ExpressionBuilder.VisitorFilter;
18 15
import org.gvsig.expressionevaluator.Formatter;
19
import org.gvsig.fmap.geom.GeometryUtils;
20 16
import org.gvsig.expressionevaluator.GeometryExpressionBuilderHelper;
21 17
import static org.gvsig.expressionevaluator.GeometryExpressionBuilderHelper.PARAMETER_TYPE_GEOMETRY;
18
import org.gvsig.fmap.geom.Geometry;
19
import org.gvsig.fmap.geom.GeometryUtils;
20
import org.gvsig.fmap.geom.primitive.Envelope;
22 21

  
23 22
public class DefaultGeometryExpressionBuilderHelper 
24 23
        implements GeometryExpressionBuilderHelper {
......
84 83
            } else {
85 84
                visitChildren = !filter.skipChildren();
86 85
            }
87
            if(visitChildren){
86
            if (visitChildren) {
88 87
                if (this.srs != null) {
89
                    this.srs.accept(visitor, filter);
88
                    switch (this.type) {
89
                        case PARAMETER_TYPE_CONSTANT:
90
                        case PARAMETER_TYPE_GEOMETRY:
91
                            switch (this.builder.geometry_support_type()) {
92
                                case NATIVE:
93
                                    break;
94
                                case EWKB:
95
                                case WKB:
96
                                case WKT:
97
                                default:
98
                                    this.srs.accept(visitor, filter);
99
                            }
100
                            break;
101
                        case PARAMETER_TYPE_VARIABLE:
102
                        default:
103
                            // No esta claro si aqui debe hacerse un accept o no
104
                            this.srs.accept(visitor, filter);
105
                            break;
106
                    }
90 107
                }
91 108
            }
92 109
        }

Also available in: Unified diff