Revision 2786 org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.split/src/main/java/org/gvsig/vectorediting/lib/prov/split/operation/LineSplitOperation.java
LineSplitOperation.java | ||
---|---|---|
28 | 28 |
import org.gvsig.fmap.geom.GeometryLocator; |
29 | 29 |
import org.gvsig.fmap.geom.aggregate.MultiLine; |
30 | 30 |
import org.gvsig.fmap.geom.aggregate.MultiPoint; |
31 |
import org.gvsig.fmap.geom.complex.Complex; |
|
31 | 32 |
import org.gvsig.fmap.geom.exception.CreateGeometryException; |
32 | 33 |
import org.gvsig.fmap.geom.operation.GeometryOperationException; |
33 | 34 |
import org.gvsig.fmap.geom.operation.GeometryOperationNotSupportedException; |
... | ... | |
64 | 65 |
Line lineToBeSplitted = (Line) geometryToBeSplitted; |
65 | 66 |
|
66 | 67 |
Geometry intersection = geometryToBeSplitted.intersection(splitter); |
68 |
if (intersection instanceof Complex) { |
|
69 |
intersection = ((Complex) intersection).createAggregate( |
|
70 |
Geometry.TYPES.MULTIPOINT, |
|
71 |
(Geometry t) -> t.getGeometryType().getType() == Geometry.TYPES.MULTIPOINT || t.getGeometryType().getType() == Geometry.TYPES.POINT |
|
72 |
); |
|
73 |
} |
|
74 |
|
|
67 | 75 |
MultiLine multilineSplitted = null; |
68 | 76 |
|
69 | 77 |
if (intersection instanceof MultiPoint) { |
Also available in: Unified diff