Revision 42283 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/aggregate/MultiLine2DM.java
MultiLine2DM.java | ||
---|---|---|
34 | 34 |
import org.gvsig.fmap.geom.aggregate.MultiPolygon; |
35 | 35 |
import org.gvsig.fmap.geom.handler.Handler; |
36 | 36 |
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line2DM; |
37 |
import org.gvsig.fmap.geom.jts.primitive.surface.polygon.Polygon2D; |
|
37 | 38 |
import org.gvsig.fmap.geom.operation.GeometryOperationException; |
38 | 39 |
import org.gvsig.fmap.geom.operation.GeometryOperationNotSupportedException; |
39 | 40 |
import org.gvsig.fmap.geom.primitive.GeneralPathX; |
... | ... | |
143 | 144 |
* @see org.gvsig.fmap.geom.jts.aggregate.AbstractMultiLine#fixLine(org.gvsig.fmap.geom.primitive.Line) |
144 | 145 |
*/ |
145 | 146 |
@Override |
146 |
protected Primitive fixPrimitive(Primitive curve) { |
|
147 |
if(!(curve instanceof Line2DM)){ |
|
148 |
String message = "Only Line2DM primitives can be added to a MultiLine2DM"; |
|
149 |
notifyDeprecated(message); |
|
150 |
throw new UnsupportedOperationException(message); |
|
147 |
protected Geometry fixPrimitive(Primitive primitive) { |
|
148 |
if(primitive instanceof Line2DM){ |
|
149 |
return primitive; |
|
151 | 150 |
} |
152 |
return curve; |
|
151 |
|
|
152 |
if(primitive.getGeometryType().getSubType() == Geometry.SUBTYPES.GEOM2DM){ |
|
153 |
try { |
|
154 |
return primitive.toLines(); |
|
155 |
} catch (GeometryException e) { |
|
156 |
String message = "Can't convert primitive to lines"; |
|
157 |
logger.warn(message); |
|
158 |
throw new RuntimeException(message); |
|
159 |
} |
|
160 |
} |
|
161 |
|
|
162 |
String message = "Only 2D primitives can be fixed to MultiLine2DM"; |
|
163 |
notifyDeprecated(message); |
|
164 |
throw new UnsupportedOperationException(message); |
|
153 | 165 |
} |
154 | 166 |
} |
Also available in: Unified diff