Revision 47432 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/coerce/CoerceToGeometry.java
CoerceToGeometry.java | ||
---|---|---|
117 | 117 |
case Geometry.TYPES.MULTIPOINT: |
118 | 118 |
geom = geom.toPoints(); |
119 | 119 |
break; |
120 |
case Geometry.TYPES.MULTICURVE: |
|
121 |
if(geom.getGeometryType().getSubType() != Geometry.TYPES.MULTICURVE){ |
|
122 |
geom = geom.toLines(); |
|
123 |
} |
|
124 |
break; |
|
120 | 125 |
case Geometry.TYPES.MULTILINE: |
121 | 126 |
geom = geom.toLines(); |
122 | 127 |
break; |
128 |
case Geometry.TYPES.MULTISURFACE: |
|
129 |
if(geom.getGeometryType().getSubType() != Geometry.TYPES.MULTISURFACE){ |
|
130 |
geom = geom.toPolygons(); |
|
131 |
} |
|
132 |
break; |
|
123 | 133 |
case Geometry.TYPES.MULTIPOLYGON: |
124 | 134 |
geom = geom.toPolygons(); |
125 | 135 |
break; |
126 | 136 |
case Geometry.TYPES.POINT: |
127 | 137 |
geom = this.convertToPoint(targetGeometryType, geom); |
128 | 138 |
break; |
139 |
case Geometry.TYPES.CURVE: |
|
140 |
if(geom.getGeometryType().getSubType() != Geometry.TYPES.CURVE){ |
|
141 |
geom = this.convertToLine(targetGeometryType, geom); |
|
142 |
} |
|
143 |
break; |
|
129 | 144 |
case Geometry.TYPES.LINE: |
130 | 145 |
geom = this.convertToLine(targetGeometryType, geom); |
131 | 146 |
break; |
147 |
case Geometry.TYPES.SURFACE: |
|
148 |
if(geom.getGeometryType().getSubType() != Geometry.TYPES.SURFACE){ |
|
149 |
geom = this.convertToPolygon(targetGeometryType, geom); |
|
150 |
} |
|
151 |
break; |
|
132 | 152 |
case Geometry.TYPES.POLYGON: |
133 | 153 |
geom = this.convertToPolygon(targetGeometryType, geom); |
134 | 154 |
break; |
... | ... | |
139 | 159 |
geom = null; |
140 | 160 |
break; |
141 | 161 |
} |
162 |
|
|
163 |
if (geom.getGeometryType().getSubType() != targetGeometryType.getSubType()) { |
|
164 |
geom = geom.forceSubtype(targetGeometryType.getSubType()); |
|
165 |
} |
|
166 |
|
|
142 | 167 |
if (geom != null) { |
143 | 168 |
// Return converted geometry |
144 | 169 |
return geom; |
Also available in: Unified diff