Revision 45910 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/util/JTSUtils.java
JTSUtils.java | ||
---|---|---|
66 | 66 |
import org.gvsig.fmap.geom.jts.aggregate.MultiPolygon2DM; |
67 | 67 |
import org.gvsig.fmap.geom.jts.aggregate.MultiPolygon3D; |
68 | 68 |
import org.gvsig.fmap.geom.jts.aggregate.MultiPolygon3DM; |
69 |
import org.gvsig.fmap.geom.jts.complex.DefaultComplex; |
|
69 | 70 |
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line2D; |
70 | 71 |
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line2DM; |
71 | 72 |
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line3D; |
... | ... | |
316 | 317 |
multiprimitive = new MultiLine3D(); |
317 | 318 |
} |
318 | 319 |
} |
319 |
} |
|
320 |
if (jtsGeom instanceof MultiPolygon) { |
|
320 |
} else if (jtsGeom instanceof MultiPolygon) { |
|
321 | 321 |
if (jtsGeom.getFactory() instanceof MyMGeometryFactory) { |
322 | 322 |
if (Double.isNaN(coordinate.z)) { |
323 | 323 |
multiprimitive = new MultiPolygon2DM(); |
... | ... | |
331 | 331 |
multiprimitive = new MultiPolygon3D(); |
332 | 332 |
} |
333 | 333 |
} |
334 |
} |
|
335 |
|
|
336 |
if (jtsGeom instanceof MultiPoint) { |
|
334 |
} else if (jtsGeom instanceof MultiPoint) { |
|
337 | 335 |
if (jtsGeom.getFactory() instanceof MyMGeometryFactory) { |
338 | 336 |
if (Double.isNaN(coordinate.z)) { |
339 | 337 |
multiprimitive = new MultiPoint2DM(); |
... | ... | |
355 | 353 |
multiprimitive.addPrimitive((Primitive) createGeometry(proj, geometry)); |
356 | 354 |
} |
357 | 355 |
multiprimitive.setProjection(proj); |
356 |
return multiprimitive; |
|
357 |
} else { |
|
358 |
int subtype; |
|
359 |
if (jtsGeom.getFactory() instanceof MyMGeometryFactory) { |
|
360 |
if (Double.isNaN(coordinate.z)) { |
|
361 |
subtype = Geometry.SUBTYPES.GEOM2DM; |
|
362 |
} else { |
|
363 |
subtype = Geometry.SUBTYPES.GEOM3DM; |
|
364 |
} |
|
365 |
} else { |
|
366 |
if (Double.isNaN(coordinate.z)) { |
|
367 |
subtype = Geometry.SUBTYPES.GEOM2D; |
|
368 |
} else { |
|
369 |
subtype = Geometry.SUBTYPES.GEOM3D; |
|
370 |
} |
|
371 |
} |
|
372 |
DefaultComplex complex = new DefaultComplex(subtype); |
|
373 |
for (int i = 0; i < collection.getNumGeometries(); i++) { |
|
374 |
com.vividsolutions.jts.geom.Geometry geometry = collection.getGeometryN(i); |
|
375 |
complex.addPrimitive((Primitive) createGeometry(proj, geometry)); |
|
376 |
} |
|
377 |
complex.setProjection(proj); |
|
378 |
return complex; |
|
358 | 379 |
} |
359 |
return multiprimitive; |
|
360 | 380 |
} |
361 | 381 |
|
362 | 382 |
return null; |
Also available in: Unified diff