From 9b6aba820c55e365386c374aed153e11297ba8d7 Mon Sep 17 00:00:00 2001
From: ?? ? <ulysseskao@ximple.com.tw>
Date: Wed, 07 May 2008 17:15:04 +0800
Subject: [PATCH] update for EOFM-42

---
 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/TWD97GeometryConverterDecorator.java |   14 +++-----------
 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/TWDDatumConverter.java               |    5 ++++-
 2 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/TWD97GeometryConverterDecorator.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/TWD97GeometryConverterDecorator.java
index 17655d4..3bf59cf 100644
--- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/TWD97GeometryConverterDecorator.java
+++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/TWD97GeometryConverterDecorator.java
@@ -38,40 +38,32 @@
         Geometry geom = converter.toGeometry(factory);
         if (geom == null) return null;
         geom.apply(coordinatesFilter);
-        geom.geometryChanged();
         return geom;
     }
 
     class TWD97ConvertFilter implements CoordinateSequenceFilter
     {
-        private boolean done = false;
-        private boolean geometryChanged = false;
-
         public void filter(CoordinateSequence coordinateSequence, int i)
         {
-            Coordinate pt = coordinateSequence.getCoordinateCopy(i);
+            Coordinate pt =coordinateSequence.getCoordinate(i);
             Coordinate pt97 = TWDDatumConverter.fromTM2ToTWD97(pt);
             pt.x = pt97.x;
             pt.y = pt97.y;
             pt.z = pt97.z;
-            done = (i >= coordinateSequence.size());
-            geometryChanged = true;
         }
 
         public boolean isDone()
         {
-            return done;
+            return false;
         }
 
         public boolean isGeometryChanged()
         {
-            return geometryChanged;
+            return true;
         }
 
         public void reset()
         {
-            done = false;
-            geometryChanged = false;
         }
     }
 }
diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/TWDDatumConverter.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/TWDDatumConverter.java
index 9a13352..739938b 100644
--- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/TWDDatumConverter.java
+++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/TWDDatumConverter.java
@@ -497,6 +497,9 @@
      */
     public static Coordinate fromTM2ToTWD97(Coordinate pt)
     {
-         return  fromTM2(TWD97_A,TWD97_ECC,TWD97_ECC2, 0, 121, TWD97_TM2, pt.x - 250000.0, pt.y);
+        Coordinate ptTWD97 = toTWD97(fromTM2(TWD67_A, TWD67_ECC, TWD67_ECC2, 0, 121, TWD67_TM2, pt.x - 250000.0, pt.y));
+        Coordinate pt97TM2 = toTM2(TWD97_A, TWD97_ECC, TWD97_ECC2, 0, 121, TWD97_TM2, ptTWD97.x, ptTWD97.y);
+        pt97TM2.x += 250000;
+        return pt97TM2;
     }
 }

--
Gitblit v0.0.0-SNAPSHOT