24 GeometryFactory fac=
new GeometryFactory();
25 GeometryCollection collection=(GeometryCollection)geom;
28 List<Coordinate> coords=
new ArrayList<Coordinate>();
29 for(
int i=0;i<collection.getNumGeometries();i++) {
30 for(Coordinate coord2:collection.getGeometryN(i).getCoordinates()) {
34 if(coords.size()==1) {
35 return fac.createPoint(coords.get(0));
37 return fac.createMultiPointFromCoords(coords.toArray(
new Coordinate[0]));
39 List<LineString> lines=
new ArrayList<LineString>();
40 for(
int i=0;i<collection.getNumGeometries();i++) {
41 lines.add((LineString)collection.getGeometryN(i));
43 return fac.createMultiLineString(lines.toArray(
new LineString[0]));
45 List<Polygon> polys=
new ArrayList<Polygon>();
46 for(
int i=0;i<collection.getNumGeometries();i++) {
47 polys.add((Polygon)collection.getGeometryN(i));
49 return fac.createMultiPolygon(polys.toArray(
new Polygon[0]));