Revision 46894 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.exportto/org.gvsig.exportto.swing/org.gvsig.exportto.swing.prov/org.gvsig.exportto.swing.prov.shape/src/main/java/org/gvsig/export/shape/service/ExportShapeService.java

View differences:

ExportShapeService.java
35 35
import org.gvsig.fmap.geom.Geometry;
36 36
import org.gvsig.fmap.geom.GeometryLocator;
37 37
import org.gvsig.fmap.geom.GeometryManager;
38
import org.gvsig.fmap.geom.GeometryUtils;
38 39
import org.gvsig.fmap.geom.aggregate.Aggregate;
39 40
import org.gvsig.fmap.geom.exception.CreateGeometryException;
40 41
import org.gvsig.fmap.geom.operation.GeometryOperationException;
......
157 158
                String fullPathName = pathName + "_surface" + ".shp";
158 159
                this.getParameters().setFile(new File(fullPathName));
159 160
                this.getTaskStatus().setTitle("Exporting surfaces");
160
                export(featureSet, Geometry.TYPES.SURFACE, true);
161
                export(featureSet, Geometry.TYPES.MULTIPOLYGON, true);
161 162

  
162 163
                // CURVE
163 164
                fullPathName = pathName + "_curve" + ".shp";
164 165
                this.getParameters().setFile(new File(fullPathName));
165 166
                this.getTaskStatus().setTitle("Exporting curves");
166
                export(featureSet, Geometry.TYPES.CURVE, true);
167
                export(featureSet, Geometry.TYPES.MULTILINE, true);
167 168

  
168 169
                // POINT
169 170
                fullPathName = pathName + "_point" + ".shp";
170 171
                this.getParameters().setFile(new File(fullPathName));
171 172
                this.getTaskStatus().setTitle("Exporting points");
172
                export(featureSet, Geometry.TYPES.POINT, true);
173
                export(featureSet, Geometry.TYPES.MULTIPOINT, true);
173 174

  
174 175
            } finally {
175 176
                this.getParameters().setFile(parametersFile);
......
608 609
        }
609 610

  
610 611
        // ============================================
611
        switch (type) {
612
            case Geometry.TYPES.POINT:
612
        
613
        if(GeometryUtils.isSubtype(Geometry.TYPES.POINT, type)){
613 614
                if (in_geom instanceof Point) {
614 615
                    resp.add(in_geom);
615 616
                }
616
                // =======================================================
617
                break;
618
            case Geometry.TYPES.CURVE:
617
        } else if(GeometryUtils.isSubtype(Geometry.TYPES.MULTIPOINT, type)){
618
                if (in_geom instanceof Point) {
619
                    resp.add(in_geom);
620
                }
621
        } else if(GeometryUtils.isSubtype(Geometry.TYPES.CURVE, type)){
619 622
                if (in_geom instanceof Curve) {
620 623
                    resp.add(in_geom);
621 624
                }
622
                // =======================================================
623
                break;
624
            case Geometry.TYPES.SURFACE:
625
        } else if(GeometryUtils.isSubtype(Geometry.TYPES.MULTICURVE, type)){
626
                if (in_geom instanceof Curve) {
627
                    resp.add(in_geom);
628
                }
629
        } else if(GeometryUtils.isSubtype(Geometry.TYPES.SURFACE, type)){
625 630
                if (in_geom instanceof Surface) {
626 631
                    resp.add(in_geom);
627 632
                }
628
                // =======================================================
629
                break;
633
        } else if(GeometryUtils.isSubtype(Geometry.TYPES.MULTISURFACE, type)){
634
                if (in_geom instanceof Surface) {
635
                    resp.add(in_geom);
636
                }
630 637
        }
631 638
        return resp;
632 639
    }

Also available in: Unified diff