Revision 43785

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/curve/arc/AbstractArc.java
215 215
        init.reProject(ct);
216 216
        middle.reProject(ct);
217 217
        end.reProject(ct);
218
        this.setProjection(ct.getPDest());
218 219
        } catch (CoordTransRuntimeException e){
219 220
            //Si ha fallado la reproyecci?n de alguno de los puntos, ponemos todas las coordenadas a 0
220 221
            init.setX(0);
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/curve/line/AbstractLine.java
349 349
            }
350 350
        }
351 351
        coordinates=tmpCoordinates;
352
        this.setProjection(ct.getPDest());
352 353
    }
353 354

  
354 355
    /*
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/curve/spline/AbstractSpline.java
357 357
            }
358 358
        }
359 359
        coordinates=tmpCoordinates;
360
        this.setProjection(ct.getPDest());
360 361
    }
361 362

  
362 363
    /*
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/surface/ellipse/AbstractEllipse.java
267 267
            init.reProject(ct);
268 268
            end.reProject(ct);
269 269
            aux.reProject(ct);
270
            this.setProjection(ct.getPDest());
270 271
        } catch (CoordTransRuntimeException e) {
271 272
            //Si no se ha podido reproyectar alguno de los puntos, les asignamos 0 a todas las coordenadas
272 273
            init.setX(0);
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/surface/circle/AbstractCircle.java
381 381
        try {
382 382
            center.reProject(ct);
383 383
            aux.reProject(ct);
384
            this.setProjection(ct.getPDest());
384 385
        } catch (CoordTransRuntimeException e){
385 386
            center.setX(0);
386 387
            center.setY(0);
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/surface/ellipticarc/AbstractEllipticArc.java
269 269
        axis1Start.reProject(ct);
270 270
        axis1End.reProject(ct);
271 271
        aux.reProject(ct);
272
        this.setProjection(ct.getPDest());
272 273
        } catch (CoordTransRuntimeException e) {
273 274
            //Si ha fallado la reproyecci?n de alguno de los puntos, ponemos todas las coordenadas a 0
274 275
            axis1Start.setX(0);
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/primitive/point/AbstractPoint.java
28 28
import java.util.Arrays;
29 29

  
30 30
import org.cresques.cts.ICoordTrans;
31
import org.cresques.cts.IProjection;
31 32

  
32 33
import org.gvsig.fmap.geom.DirectPosition;
33 34
import org.gvsig.fmap.geom.Geometry;
......
199 200
     *
200 201
     * @see org.gvsig.fmap.geom.Geometry#reProject(org.cresques.cts.ICoordTrans)
201 202
     */
203
    @Override
202 204
    public void reProject(ICoordTrans ct) {
203 205
        if (ct == null) {
204 206
            return;
......
208 210
            p = ct.convert(p, p);
209 211
            this.setX(p.getX());
210 212
            this.setY(p.getY());
213
            this.setProjection(ct.getPDest());
211 214
        } catch (Exception exc) {
212 215
            /*
213 216
             * This can happen when the reprojection lib is unable
......
226 229
     * @see
227 230
     * org.gvsig.fmap.geom.Geometry#transform(java.awt.geom.AffineTransform)
228 231
     */
232
    @Override
229 233
    public void transform(AffineTransform at) {
230 234
        if (at == null) {
231 235
            return;
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/AbstractGeometry.java
34 34
import com.vividsolutions.jts.operation.overlay.snap.GeometrySnapper;
35 35
import com.vividsolutions.jts.operation.valid.IsValidOp;
36 36
import com.vividsolutions.jts.operation.valid.TopologyValidationError;
37
import org.cresques.cts.IProjection;
37 38

  
38 39
import org.slf4j.Logger;
39 40
import org.slf4j.LoggerFactory;
......
73 74

  
74 75
    private final GeometryType geometryType;
75 76

  
76

  
77
    private IProjection projection;
78
    
77 79
    /**
78 80
     *
79 81
     */
......
755 757
        return this.getGeometryType().getFullName();
756 758
    }
757 759

  
760
    @Override
761
    public IProjection getProjection() {
762
        return this.projection;
763
    }
758 764

  
765
    @Override
766
    public void setProjectionIffNull(IProjection projection) {
767
        if( this.projection==null ) {
768
            this.projection = projection;
769
        }
770
    }
771

  
772
    @Override
773
    public void setProjection(IProjection projection) {
774
        this.projection = projection;
775
    }
776

  
759 777
}
trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.api/src/main/java/org/gvsig/fmap/geom/Geometry.java
31 31
import java.io.Serializable;
32 32

  
33 33
import org.cresques.cts.ICoordTrans;
34
import org.cresques.cts.IProjection;
34 35

  
35 36
import org.gvsig.fmap.geom.aggregate.MultiLine;
36 37
import org.gvsig.fmap.geom.aggregate.MultiPoint;
......
909 910
     */
910 911
    public boolean canBeReprojected(ICoordTrans ct);
911 912

  
913
    public void setProjection(IProjection projection);
914
    
915
    public void setProjectionIffNull(IProjection projection);
916

  
917
    public IProjection getProjection();
912 918
}

Also available in: Unified diff