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
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