From c25905d7c4d0547e798e19454815a6ec7a736fcb Mon Sep 17 00:00:00 2001 From: ?? ? <ulysseskao@ximple.com.tw> Date: Thu, 15 May 2008 11:40:02 +0800 Subject: [PATCH] update for EOFM-85 --- xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexShapeElement.java | 19 ++++++++++++------- 1 files changed, 12 insertions(+), 7 deletions(-) diff --git a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexShapeElement.java b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexShapeElement.java index a5491c9..d1df571 100644 --- a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexShapeElement.java +++ b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexShapeElement.java @@ -13,6 +13,7 @@ import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryCollection; import com.vividsolutions.jts.geom.GeometryFactory; +import com.vividsolutions.jts.geom.CoordinateList; /** * ComplexShapeElement @@ -25,7 +26,7 @@ { private static final Logger logger = Logger.getLogger(ComplexShapeElement.class); - ArrayList list = new ArrayList(); + ArrayList<Element> list = new ArrayList<Element>(); public ComplexShapeElement(byte[] raw) { @@ -59,7 +60,7 @@ public boolean add(Object o) { - return list.add(o); + return list.add((Element) o); } public boolean remove(Object o) @@ -89,12 +90,12 @@ public Object set(int index, Object element) { - return list.set(index, element); + return list.set(index, (Element) element); } public void add(int index, Object element) { - list.add(index, element); + list.add(index, (Element) element); } public Object remove(int index) @@ -177,10 +178,14 @@ } } - Geometry[] ga = list.toArray(new Geometry[list.size()]); - GeometryCollection geos = new GeometryCollection(ga, factory); - return geos; + CoordinateList pts = new CoordinateList(); + for (Geometry geom : list) + { + pts.add(geom.getCoordinates(), true); + } + + return factory.createLinearRing(pts.toCoordinateArray()); } public static class ElementHandler extends Element.ElementHandler -- Gitblit v0.0.0-SNAPSHOT