[geos-commits] [SCM] GEOS branch master updated. db0c456ed60ea7543d0d7fa508d387990f58a865

git at osgeo.org git at osgeo.org
Mon Aug 10 11:14:35 PDT 2020


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, master has been updated
       via  db0c456ed60ea7543d0d7fa508d387990f58a865 (commit)
      from  e7f97483c3db06cccd33362e0439ee3eaaaa4106 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit db0c456ed60ea7543d0d7fa508d387990f58a865
Author: Paul Ramsey <pramsey at cleverelephant.ca>
Date:   Mon Aug 10 11:14:27 2020 -0700

    Remove precisionModel from test files to harmonize with JTS. Move failing tests to Prec files, where they are run under a precisionModel again.

diff --git a/tests/xmltester/tests/general/TestFunctionAA.xml b/tests/xmltester/tests/general/TestFunctionAA.xml
index 2783ddf..3dd5ebf 100644
--- a/tests/xmltester/tests/general/TestFunctionAA.xml
+++ b/tests/xmltester/tests/general/TestFunctionAA.xml
@@ -1,5 +1,4 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
 
 <case>
   <desc>AA - simple polygons</desc>
@@ -296,41 +295,6 @@
 </test>
 </case>
 
-<case>
-  <desc>AA - simple polygons with holes</desc>
-  <a>
-    POLYGON(
-      (160 330, 60 260, 20 150, 60 40, 190 20, 270 130, 260 250, 160 330),
-      (140 240, 80 190, 90 100, 160 70, 210 130, 210 210, 140 240))
-  </a>
-  <b>
-    POLYGON(
-      (300 330, 190 270, 150 170, 150 110, 250 30, 380 50, 380 250, 300 330),
-      (290 240, 240 200, 240 110, 290 80, 330 170, 290 240))
-  </b>
-<test>
-  <op name="intersection" arg1="A" arg2="B">
-    POLYGON(
-      (251 104, 217 57, 176 89, 210 130, 210 210, 172 226, 190 270, 217 285, 260 250,
-      263 218, 240 200, 240 110, 251 104))
-  </op>
-</test>
-<test>
-  <op name="symdifference" arg1="A" arg2="B">
-    MULTIPOLYGON(
-      (
-        (217 57, 190 20, 60 40, 20 150, 60 260, 160 330, 217 285, 190 270, 172 226,
-        140 240, 80 190, 90 100, 160 70, 176 89, 217 57)),
-      (
-        (217 57, 251 104, 290 80, 330 170, 290 240, 263 218, 260 250, 217 285, 300 330,
-        380 250, 380 50, 250 30, 217 57)),
-      (
-        (263 218, 270 130, 251 104, 240 110, 240 200, 263 218)),
-      (
-        (172 226, 210 210, 210 130, 176 89, 150 110, 150 170, 172 226)))
-  </op>
-</test>
-</case>
 
 <case>
   <desc>AA - simple polygons with hole touching shell</desc>
diff --git a/tests/xmltester/tests/general/TestFunctionAAPrec.xml b/tests/xmltester/tests/general/TestFunctionAAPrec.xml
index 608e6b1..daf49fd 100644
--- a/tests/xmltester/tests/general/TestFunctionAAPrec.xml
+++ b/tests/xmltester/tests/general/TestFunctionAAPrec.xml
@@ -25,7 +25,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (90 10, 10 10, 10 11, 90 10)), 
+        (90 10, 10 10, 10 11, 90 10)),
       (
         (90 10, 90 200, 200 200, 200 0, 90 0, 90 10)))
   </op>
@@ -40,7 +40,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (90 10, 10 10, 10 11, 90 10)), 
+        (90 10, 10 10, 10 11, 90 10)),
       (
         (90 10, 90 200, 200 200, 200 0, 90 0, 90 10)))
   </op>
@@ -91,7 +91,7 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     POLYGON(
-      (50 20, 50 10, 10 10, 10 30, 40 30, 10 31, 10 50, 50 50, 50 40, 
+      (50 20, 50 10, 10 10, 10 30, 40 30, 10 31, 10 50, 50 50, 50 40,
       60 40, 60 20, 50 20))
   </op>
 </test>
@@ -99,7 +99,7 @@
   <op name="difference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (50 20, 50 10, 10 10, 10 30, 40 30, 40 20, 50 20)), 
+        (50 20, 50 10, 10 10, 10 30, 40 30, 40 20, 50 20)),
       (
         (40 30, 10 31, 10 50, 50 50, 50 40, 40 40, 40 30)))
   </op>
@@ -108,9 +108,9 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (50 20, 50 10, 10 10, 10 30, 40 30, 40 20, 50 20)), 
+        (50 20, 50 10, 10 10, 10 30, 40 30, 40 20, 50 20)),
       (
-        (50 20, 50 40, 60 40, 60 20, 50 20)), 
+        (50 20, 50 40, 60 40, 60 20, 50 20)),
       (
         (40 30, 10 31, 10 50, 50 50, 50 40, 40 40, 40 30)))
   </op>
@@ -121,7 +121,7 @@
   <desc>AA - hole close to shell</desc>
   <a>
     POLYGON(
-      (10 100, 10 10, 100 10, 100 100, 10 100), 
+      (10 100, 10 10, 100 10, 100 100, 10 100),
       (90 90, 11 90, 10 10, 90 11, 90 90))
   </a>
   <b>
@@ -136,7 +136,7 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (10 30, 10 10), 
+      (10 30, 10 10),
       (10 10, 30 10))
   </op>
 </test>
@@ -144,7 +144,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (30 10, 30 0, 0 0, 0 30, 10 30, 30 30, 30 10)))
   </op>
@@ -159,7 +159,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (30 10, 30 0, 0 0, 0 30, 10 30, 30 30, 30 10)))
   </op>
@@ -171,7 +171,7 @@
   <a>
     MULTIPOLYGON(
       (
-        (0 0, 100 0, 100 20, 0 20, 0 0)), 
+        (0 0, 100 0, 100 20, 0 20, 0 0)),
       (
         (0 40, 0 21, 100 20, 100 40, 0 40)))
   </a>
@@ -187,7 +187,7 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(100 20, 90 20), 
+      LINESTRING(100 20, 90 20),
       POLYGON(
         (100 20, 100 10, 90 10, 90 20, 90 30, 100 30, 100 20)))
   </op>
@@ -195,7 +195,7 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     POLYGON(
-      (100 10, 100 0, 0 0, 0 20, 90 20, 0 21, 0 40, 100 40, 100 30, 
+      (100 10, 100 0, 0 0, 0 20, 90 20, 0 21, 0 40, 100 40, 100 30,
       110 30, 110 10, 100 10))
   </op>
 </test>
@@ -203,7 +203,7 @@
   <op name="difference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (100 10, 100 0, 0 0, 0 20, 90 20, 90 10, 100 10)), 
+        (100 10, 100 0, 0 0, 0 20, 90 20, 90 10, 100 10)),
       (
         (90 20, 0 21, 0 40, 100 40, 100 30, 90 30, 90 20)))
   </op>
@@ -212,9 +212,9 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (100 10, 100 0, 0 0, 0 20, 90 20, 90 10, 100 10)), 
+        (100 10, 100 0, 0 0, 0 20, 90 20, 90 10, 100 10)),
       (
-        (100 10, 100 20, 100 30, 110 30, 110 10, 100 10)), 
+        (100 10, 100 20, 100 30, 110 30, 110 10, 100 10)),
       (
         (90 20, 0 21, 0 40, 100 40, 100 30, 90 30, 90 20)))
   </op>
@@ -245,7 +245,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (100 10, 20 10, 100 11, 100 10)), 
+        (100 10, 20 10, 100 11, 100 10)),
       (
         (0 10, 0 20, 20 20, 20 10, 20 0, 0 0, 0 10)))
   </op>
@@ -260,7 +260,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (100 10, 20 10, 100 11, 100 10)), 
+        (100 10, 20 10, 100 11, 100 10)),
       (
         (0 10, 0 20, 20 20, 20 10, 20 0, 0 0, 0 10)))
   </op>
@@ -291,7 +291,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (100 10, 20 10, 90 11, 90 20, 100 20, 100 10)), 
+        (100 10, 20 10, 90 11, 90 20, 100 20, 100 10)),
       (
         (0 10, 0 20, 20 20, 20 10, 20 0, 0 0, 0 10)))
   </op>
@@ -302,7 +302,7 @@
   <desc>AA - hole close to shell, B coincident with A</desc>
   <a>
     POLYGON(
-      (10 100, 10 10, 100 10, 100 100, 10 100), 
+      (10 100, 10 10, 100 10, 100 100, 10 100),
       (90 90, 11 90, 10 10, 90 11, 90 90))
   </a>
   <b>
@@ -317,7 +317,7 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (10 30, 10 10), 
+      (10 30, 10 10),
       (10 10, 30 10))
   </op>
 </test>
@@ -325,7 +325,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 0, 10 10)))
   </op>
@@ -340,7 +340,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 0, 10 10)))
   </op>
@@ -351,7 +351,7 @@
   <desc>AA - A hole close to shell, B coincident with A</desc>
   <a>
     POLYGON(
-      (10 100, 10 10, 100 10, 100 100, 10 100), 
+      (10 100, 10 10, 100 10, 100 100, 10 100),
       (90 90, 11 90, 10 10, 90 11, 90 90))
   </a>
   <b>
@@ -366,7 +366,7 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (10 30, 10 10), 
+      (10 30, 10 10),
       (10 10, 30 10))
   </op>
 </test>
@@ -374,7 +374,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 10)))
   </op>
@@ -389,7 +389,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 10)))
   </op>
@@ -404,7 +404,7 @@
   </a>
   <b>
     POLYGON(
-      (10 100, 10 10, 100 10, 100 100, 10 100), 
+      (10 100, 10 10, 100 10, 100 100, 10 100),
       (90 90, 11 90, 10 10, 90 11, 90 90))
   </b>
 <test>
@@ -415,7 +415,7 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (10 30, 10 10), 
+      (10 30, 10 10),
       (10 10, 30 10))
   </op>
 </test>
@@ -423,7 +423,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 10)))
   </op>
@@ -438,7 +438,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)), 
+        (10 30, 10 100, 100 100, 100 10, 30 10, 90 11, 90 90, 11 90, 10 30)),
       (
         (10 10, 10 30, 30 30, 30 10, 10 10)))
   </op>
@@ -469,7 +469,7 @@
   <op name="union" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (139 60, 200 0, 0 0, 0 198, 139 60)), 
+        (139 60, 200 0, 0 0, 0 198, 139 60)),
       (
         (280 60, 139 60, 280 70, 280 60)))
   </op>
@@ -484,7 +484,7 @@
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (139 60, 200 0, 0 0, 0 198, 139 60)), 
+        (139 60, 200 0, 0 0, 0 198, 139 60)),
       (
         (280 60, 139 60, 280 70, 280 60)))
   </op>
@@ -513,13 +513,13 @@
   <a>
     MULTIPOLYGON(
       (
-        (1 4, 1 1, 2 1, 2 4, 1 4)), 
+        (1 4, 1 1, 2 1, 2 4, 1 4)),
       (
-        (3 4, 3 1, 4 1, 4 4, 3 4)), 
+        (3 4, 3 1, 4 1, 4 4, 3 4)),
       (
-        (5 4, 5 1, 6 1, 6 4, 5 4)), 
+        (5 4, 5 1, 6 1, 6 4, 5 4)),
       (
-        (7 4, 7 1, 8 1, 8 4, 7 4)), 
+        (7 4, 7 1, 8 1, 8 4, 7 4)),
       (
         (9 4, 9 1, 10 1, 10 4, 9 4)))
   </a>
@@ -536,12 +536,12 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(1 2, 2 2), 
-      LINESTRING(3 2, 4 2), 
+      LINESTRING(1 2, 2 2),
+      LINESTRING(3 2, 4 2),
       POLYGON(
-        (6 3, 6 2, 5 2, 6 3)), 
+        (6 3, 6 2, 5 2, 6 3)),
       POLYGON(
-        (7 2, 7 3, 8 3, 8 2, 7 2)), 
+        (7 2, 7 3, 8 3, 8 2, 7 2)),
       POLYGON(
         (9 2, 9 3, 10 3, 10 2, 9 2)))
   </op>
@@ -549,35 +549,35 @@
 <test>
   <op name="union" arg1="A" arg2="B">
 GEOMETRYCOLLECTION(
-  LINESTRING(0 2, 1 2), 
-  LINESTRING(2 2, 3 2), 
-  LINESTRING(4 2, 5 2), 
+  LINESTRING(0 2, 1 2),
+  LINESTRING(2 2, 3 2),
+  LINESTRING(4 2, 5 2),
   POLYGON(
-    (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)), 
+    (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)),
   POLYGON(
-    (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)), 
+    (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)),
   POLYGON(
-    (5 2, 5 4, 6 4, 6 3, 7 3, 7 4, 8 4, 8 3, 9 3, 
-    9 4, 10 4, 10 3, 11 3, 11 2, 10 2, 10 1, 9 1, 9 2, 8 2, 
+    (5 2, 5 4, 6 4, 6 3, 7 3, 7 4, 8 4, 8 3, 9 3,
+    9 4, 10 4, 10 3, 11 3, 11 2, 10 2, 10 1, 9 1, 9 2, 8 2,
     8 1, 7 1, 7 2, 6 2, 6 1, 5 1, 5 2)))  </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)), 
+        (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)),
       (
-        (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)), 
+        (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)),
       (
-        (5 2, 5 4, 6 4, 6 3, 5 2)), 
+        (5 2, 5 4, 6 4, 6 3, 5 2)),
       (
-        (6 2, 6 1, 5 1, 5 2, 6 2)), 
+        (6 2, 6 1, 5 1, 5 2, 6 2)),
       (
-        (7 3, 7 4, 8 4, 8 3, 7 3)), 
+        (7 3, 7 4, 8 4, 8 3, 7 3)),
       (
-        (8 2, 8 1, 7 1, 7 2, 8 2)), 
+        (8 2, 8 1, 7 1, 7 2, 8 2)),
       (
-        (9 3, 9 4, 10 4, 10 3, 9 3)), 
+        (9 3, 9 4, 10 4, 10 3, 9 3)),
       (
         (10 2, 10 1, 9 1, 9 2, 10 2)))
   </op>
@@ -585,29 +585,29 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="symdifference" arg1="A" arg2="B">
 GEOMETRYCOLLECTION(
-  LINESTRING(0 2, 1 2), 
-  LINESTRING(2 2, 3 2), 
-  LINESTRING(4 2, 5 2), 
+  LINESTRING(0 2, 1 2),
+  LINESTRING(2 2, 3 2),
+  LINESTRING(4 2, 5 2),
   POLYGON(
-    (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)), 
+    (1 2, 1 4, 2 4, 2 2, 2 1, 1 1, 1 2)),
   POLYGON(
-    (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)), 
+    (3 2, 3 4, 4 4, 4 2, 4 1, 3 1, 3 2)),
   POLYGON(
-    (5 2, 5 4, 6 4, 6 3, 5 2)), 
+    (5 2, 5 4, 6 4, 6 3, 5 2)),
   POLYGON(
-    (6 2, 6 1, 5 1, 5 2, 6 2)), 
+    (6 2, 6 1, 5 1, 5 2, 6 2)),
   POLYGON(
-    (6 2, 6 3, 7 3, 7 2, 6 2)), 
+    (6 2, 6 3, 7 3, 7 2, 6 2)),
   POLYGON(
-    (7 3, 7 4, 8 4, 8 3, 7 3)), 
+    (7 3, 7 4, 8 4, 8 3, 7 3)),
   POLYGON(
-    (8 2, 8 1, 7 1, 7 2, 8 2)), 
+    (8 2, 8 1, 7 1, 7 2, 8 2)),
   POLYGON(
-    (8 2, 8 3, 9 3, 9 2, 8 2)), 
+    (8 2, 8 3, 9 3, 9 2, 8 2)),
   POLYGON(
-    (9 3, 9 4, 10 4, 10 3, 9 3)), 
+    (9 3, 9 4, 10 4, 10 3, 9 3)),
   POLYGON(
-    (10 2, 10 1, 9 1, 9 2, 10 2)), 
+    (10 2, 10 1, 9 1, 9 2, 10 2)),
   POLYGON(
     (10 2, 10 3, 11 3, 11 2, 10 2)))
   </op>
@@ -618,7 +618,7 @@ GEOMETRYCOLLECTION(
   <desc>AA - Polygon with hole with outward sliver, cut by polygon</desc>
   <a>
     POLYGON(
-      (20 40, 20 200, 180 200, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 40, 20 40),
       (180 120, 120 120, 120 160, 60 120, 120 80, 120 119, 180 120))
   </a>
   <b>
@@ -634,7 +634,7 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="intersection" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(180 120, 160 120), 
+      LINESTRING(180 120, 160 120),
       POLYGON(
         (180 160, 180 120, 180 80, 160 80, 160 120, 160 160, 180 160)))
   </op>
@@ -642,15 +642,15 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="union" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 160, 200 160, 200 80, 180 80, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 160, 200 160, 200 80, 180 80, 180 40, 20 40),
       (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 160, 160 160, 160 120, 160 80, 180 80, 180 40, 
-      20 40), 
+      (20 40, 20 200, 180 200, 180 160, 160 160, 160 120, 160 80, 180 80, 180 40,
+      20 40),
       (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120))
   </op>
 </test>
@@ -658,9 +658,9 @@ GEOMETRYCOLLECTION(
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (20 40, 20 200, 180 200, 180 160, 160 160, 160 120, 160 80, 180 80, 180 40, 
-        20 40), 
-        (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120)), 
+        (20 40, 20 200, 180 200, 180 160, 160 160, 160 120, 160 80, 180 80, 180 40,
+        20 40),
+        (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120)),
       (
         (180 120, 180 160, 200 160, 200 80, 180 80, 180 120)))
   </op>
@@ -671,7 +671,7 @@ GEOMETRYCOLLECTION(
   <desc>AA - Polygon with hole with outward sliver, cut by line</desc>
   <a>
     POLYGON(
-      (20 40, 20 200, 180 200, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 40, 20 40),
       (180 120, 120 120, 120 160, 60 120, 120 80, 120 119, 180 120))
   </a>
   <b>
@@ -686,28 +686,28 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (160 140, 160 120), 
+      (160 140, 160 120),
       (160 120, 160 100))
   </op>
 </test>
 <test>
   <op name="union" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40),
       (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40),
       (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 120, 180 40, 20 40),
       (160 120, 120 120, 120 160, 60 120, 120 80, 120 119, 160 120))
   </op>
 </test>
@@ -717,7 +717,7 @@ GEOMETRYCOLLECTION(
   <desc>AA - Polygon with inward sliver touching hole, cut by polygon</desc>
   <a>
     POLYGON(
-      (20 40, 20 200, 180 200, 180 120, 140 120, 180 119, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 120, 140 120, 180 119, 180 40, 20 40),
       (140 160, 80 120, 140 80, 140 160))
   </a>
   <b>
@@ -734,7 +734,7 @@ GEOMETRYCOLLECTION(
   <op name="intersection" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (180 160, 180 120, 150 120, 150 160, 180 160)), 
+        (180 160, 180 120, 150 120, 150 160, 180 160)),
       (
         (150 120, 180 119, 180 80, 150 80, 150 120)))
   </op>
@@ -742,15 +742,15 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="union" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 160, 200 160, 200 80, 180 80, 180 40, 20 40), 
+      (20 40, 20 200, 180 200, 180 160, 200 160, 200 80, 180 80, 180 40, 20 40),
       (140 160, 80 120, 140 80, 140 120, 140 160))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     POLYGON(
-      (20 40, 20 200, 180 200, 180 160, 150 160, 150 120, 150 80, 180 80, 180 40, 
-      20 40), 
+      (20 40, 20 200, 180 200, 180 160, 150 160, 150 120, 150 80, 180 80, 180 40,
+      20 40),
       (140 160, 80 120, 140 80, 140 120, 140 160))
   </op>
 </test>
@@ -758,9 +758,9 @@ GEOMETRYCOLLECTION(
   <op name="symdifference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (20 40, 20 200, 180 200, 180 160, 150 160, 150 120, 150 80, 180 80, 180 40, 
-        20 40), 
-        (140 160, 80 120, 140 80, 140 120, 140 160)), 
+        (20 40, 20 200, 180 200, 180 160, 150 160, 150 120, 150 80, 180 80, 180 40,
+        20 40),
+        (140 160, 80 120, 140 80, 140 120, 140 160)),
       (
         (150 120, 180 120, 180 160, 200 160, 200 80, 180 80, 180 119, 150 120)))
   </op>
@@ -796,10 +796,10 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(78 39, 83 39), 
-      LINESTRING(83 33, 83 39), 
+      LINESTRING(78 39, 83 39),
+      LINESTRING(83 33, 83 39),
       POLYGON(
-        (83 39, 62 402, 68 402, 83 39)), 
+        (83 39, 62 402, 68 402, 83 39)),
       POLYGON(
         (83 39, 574 76, 576 60, 83 39)))
   </op>
@@ -807,7 +807,7 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="difference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(83 33, 83 39), 
+      LINESTRING(83 33, 83 39),
       POLYGON(
         (83 39, 62 402, 68 402, 83 39)))
   </op>
@@ -815,14 +815,51 @@ GEOMETRYCOLLECTION(
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(78 39, 83 39), 
-      LINESTRING(83 33, 83 39), 
+      LINESTRING(78 39, 83 39),
+      LINESTRING(83 33, 83 39),
       POLYGON(
-        (83 39, 62 402, 68 402, 83 39)), 
+        (83 39, 62 402, 68 402, 83 39)),
       POLYGON(
         (83 39, 574 76, 576 60, 83 39)))
   </op>
 </test>
 </case>
 
+
+<case>
+  <desc>AA - simple polygons with holes</desc>
+  <a>
+    POLYGON(
+      (160 330, 60 260, 20 150, 60 40, 190 20, 270 130, 260 250, 160 330),
+      (140 240, 80 190, 90 100, 160 70, 210 130, 210 210, 140 240))
+  </a>
+  <b>
+    POLYGON(
+      (300 330, 190 270, 150 170, 150 110, 250 30, 380 50, 380 250, 300 330),
+      (290 240, 240 200, 240 110, 290 80, 330 170, 290 240))
+  </b>
+<test>
+  <op name="intersection" arg1="A" arg2="B">
+    POLYGON(
+      (251 104, 217 57, 176 89, 210 130, 210 210, 172 226, 190 270, 217 285, 260 250,
+      263 218, 240 200, 240 110, 251 104))
+  </op>
+</test>
+<test>
+  <op name="symdifference" arg1="A" arg2="B">
+    MULTIPOLYGON(
+      (
+        (217 57, 190 20, 60 40, 20 150, 60 260, 160 330, 217 285, 190 270, 172 226,
+        140 240, 80 190, 90 100, 160 70, 176 89, 217 57)),
+      (
+        (217 57, 251 104, 290 80, 330 170, 290 240, 263 218, 260 250, 217 285, 300 330,
+        380 250, 380 50, 250 30, 217 57)),
+      (
+        (263 218, 270 130, 251 104, 240 110, 240 200, 263 218)),
+      (
+        (172 226, 210 210, 210 130, 176 89, 150 110, 150 170, 172 226)))
+  </op>
+</test>
+</case>
+
 </run>
diff --git a/tests/xmltester/tests/general/TestFunctionLA.xml b/tests/xmltester/tests/general/TestFunctionLA.xml
index 898b1ea..091f7b7 100644
--- a/tests/xmltester/tests/general/TestFunctionLA.xml
+++ b/tests/xmltester/tests/general/TestFunctionLA.xml
@@ -1,157 +1,19 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
-
-<case>
-  <desc>LA - A and B simple</desc>
-  <a>
-    LINESTRING(240 190, 120 120)
-  </a>
-  <b>
-    POLYGON(
-      (110 240, 50 80, 240 70, 110 240))
-  </b>
-<test>
-  <op name="intersection" arg1="A" arg2="B">
-    LINESTRING(177 153, 120 120)
-  </op>
-</test>
-<test>
-  <op name="union" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(240 190, 177 153), 
-      POLYGON(
-        (177 153, 240 70, 50 80, 110 240, 177 153)))
-  </op>
-</test>
-<test>
-  <op name="difference" arg1="A" arg2="B">
-    LINESTRING(240 190, 177 153)
-  </op>
-</test>
-<test>
-  <op name="symdifference" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(240 190, 177 153), 
-      POLYGON(
-        (177 153, 240 70, 50 80, 110 240, 177 153)))
-  </op>
-</test>
-</case>
-
-<case>
-  <desc>LA - A intersects B-hole</desc>
-  <a>
-    LINESTRING(0 100, 100 100, 200 200)
-  </a>
-  <b>
-    POLYGON(
-      (30 240, 260 30, 30 30, 30 240), 
-      (80 140, 80 80, 140 80, 80 140))
-  </b>
-<test>
-  <op name="intersection" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (30 100, 80 100), 
-      (110 110, 140 140))
-  </op>
-</test>
-<test>
-  <op name="union" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(0 100, 30 100), 
-      LINESTRING(80 100, 100 100, 110 110), 
-      LINESTRING(140 140, 200 200), 
-      POLYGON(
-        (30 240, 140 140, 260 30, 30 30, 30 100, 30 240), 
-        (80 140, 80 100, 80 80, 140 80, 110 110, 80 140)))
-  </op>
-</test>
-<test>
-  <op name="difference" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (0 100, 30 100), 
-      (80 100, 100 100, 110 110), 
-      (140 140, 200 200))
-  </op>
-</test>
-<test>
-  <op name="symdifference" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(0 100, 30 100), 
-      LINESTRING(80 100, 100 100, 110 110), 
-      LINESTRING(140 140, 200 200), 
-      POLYGON(
-        (30 240, 140 140, 260 30, 30 30, 30 100, 30 240), 
-        (80 140, 80 100, 80 80, 140 80, 110 110, 80 140)))
-  </op>
-</test>
-</case>
-
-<case>
-  <desc>LA - A intersects B-hole #2</desc>
-  <a>
-    LINESTRING(40 340, 200 250, 120 180, 160 110, 270 40)
-  </a>
-  <b>
-    POLYGON(
-      (160 330, 60 260, 20 150, 60 40, 190 20, 270 130, 260 250, 160 330), 
-      (140 240, 80 190, 90 100, 160 70, 210 130, 210 210, 140 240))
-  </b>
-<test>
-  <op name="intersection" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (114 298, 200 250, 173 226), 
-      (182 96, 225 68))
-  </op>
-</test>
-<test>
-  <op name="union" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(40 340, 114 298), 
-      LINESTRING(173 226, 120 180, 160 110, 182 96), 
-      LINESTRING(225 68, 270 40), 
-      POLYGON(
-        (114 298, 160 330, 260 250, 270 130, 225 68, 190 20, 60 40, 20 150, 60 260, 
-        114 298), 
-        (140 240, 80 190, 90 100, 160 70, 182 96, 210 130, 210 210, 173 226, 140 240)))
-  </op>
-</test>
-<test>
-  <op name="difference" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (40 340, 114 298), 
-      (173 226, 120 180, 160 110, 182 96), 
-      (225 68, 270 40))
-  </op>
-</test>
-<test>
-  <op name="symdifference" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      LINESTRING(40 340, 114 298), 
-      LINESTRING(173 226, 120 180, 160 110, 182 96), 
-      LINESTRING(225 68, 270 40), 
-      POLYGON(
-        (114 298, 160 330, 260 250, 270 130, 225 68, 190 20, 60 40, 20 150, 60 260, 
-        114 298), 
-        (140 240, 80 190, 90 100, 160 70, 182 96, 210 130, 210 210, 173 226, 140 240)))
-  </op>
-</test>
-</case>
 
 <case>
   <desc>mLmA - A and B complex, disjoint</desc>
   <a>
     MULTIPOLYGON(
       (
-        (60 320, 60 80, 300 80, 60 320), 
-        (80 280, 80 100, 260 100, 80 280)), 
+        (60 320, 60 80, 300 80, 60 320),
+        (80 280, 80 100, 260 100, 80 280)),
       (
         (120 160, 140 160, 140 140, 120 160)))
   </a>
   <b>
     MULTILINESTRING(
-      (100 240, 100 180, 160 180, 160 120, 220 120), 
-      (40 360, 40 60, 340 60, 40 360, 40 20), 
+      (100 240, 100 180, 160 180, 160 120, 220 120),
+      (40 360, 40 60, 340 60, 40 360, 40 20),
       (120 120, 120 140, 100 140, 100 120, 140 120))
   </b>
 <test>
@@ -163,23 +25,23 @@
 <test>
   <op name="getboundary" pattern="FFFFFFFFF" arg1="A">
     MULTILINESTRING(
-      (60 320, 60 80, 300 80, 60 320), 
-      (80 280, 80 100, 260 100, 80 280), 
+      (60 320, 60 80, 300 80, 60 320),
+      (80 280, 80 100, 260 100, 80 280),
       (120 160, 140 160, 140 140, 120 160))
   </op>
 </test>
 <test>
   <op name="symdifference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(100 240, 100 180, 160 180, 160 120, 220 120), 
-      LINESTRING(40 360, 40 60), 
-      LINESTRING(40 60, 340 60, 40 360), 
-      LINESTRING(40 60, 40 20), 
-      LINESTRING(120 120, 120 140, 100 140, 100 120, 120 120), 
-      LINESTRING(120 120, 140 120), 
+      LINESTRING(100 240, 100 180, 160 180, 160 120, 220 120),
+      LINESTRING(40 360, 40 60),
+      LINESTRING(40 60, 340 60, 40 360),
+      LINESTRING(40 60, 40 20),
+      LINESTRING(120 120, 120 140, 100 140, 100 120, 120 120),
+      LINESTRING(120 120, 140 120),
       POLYGON(
-        (60 320, 300 80, 60 80, 60 320), 
-        (80 280, 80 100, 260 100, 80 280)), 
+        (60 320, 300 80, 60 80, 60 320),
+        (80 280, 80 100, 260 100, 80 280)),
       POLYGON(
         (120 160, 140 160, 140 140, 120 160)))
   </op>
@@ -188,8 +50,8 @@
   <op name="difference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (60 320, 300 80, 60 80, 60 320), 
-        (80 280, 80 100, 260 100, 80 280)), 
+        (60 320, 300 80, 60 80, 60 320),
+        (80 280, 80 100, 260 100, 80 280)),
       (
         (120 160, 140 160, 140 140, 120 160)))
   </op>
@@ -197,15 +59,15 @@
 <test>
   <op name="union" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(100 240, 100 180, 160 180, 160 120, 220 120), 
-      LINESTRING(40 360, 40 60), 
-      LINESTRING(40 60, 340 60, 40 360), 
-      LINESTRING(40 60, 40 20), 
-      LINESTRING(120 120, 120 140, 100 140, 100 120, 120 120), 
-      LINESTRING(120 120, 140 120), 
+      LINESTRING(100 240, 100 180, 160 180, 160 120, 220 120),
+      LINESTRING(40 360, 40 60),
+      LINESTRING(40 60, 340 60, 40 360),
+      LINESTRING(40 60, 40 20),
+      LINESTRING(120 120, 120 140, 100 140, 100 120, 120 120),
+      LINESTRING(120 120, 140 120),
       POLYGON(
-        (60 320, 300 80, 60 80, 60 320), 
-        (80 280, 80 100, 260 100, 80 280)), 
+        (60 320, 300 80, 60 80, 60 320),
+        (80 280, 80 100, 260 100, 80 280)),
       POLYGON(
         (120 160, 140 160, 140 140, 120 160)))
   </op>
@@ -222,23 +84,23 @@
   <a>
     MULTIPOLYGON(
       (
-        (60 260, 60 120, 220 120, 220 260, 60 260), 
-        (80 240, 80 140, 200 140, 200 240, 80 240)), 
+        (60 260, 60 120, 220 120, 220 260, 60 260),
+        (80 240, 80 140, 200 140, 200 240, 80 240)),
       (
-        (100 220, 100 160, 180 160, 180 220, 100 220), 
+        (100 220, 100 160, 180 160, 180 220, 100 220),
         (120 200, 120 180, 160 180, 160 200, 120 200)))
   </a>
   <b>
     MULTILINESTRING(
-      (40 260, 240 260, 240 240, 40 240, 40 220, 240 220), 
+      (40 260, 240 260, 240 240, 40 240, 40 220, 240 220),
       (120 300, 120 80, 140 80, 140 300, 140 80, 120 80, 120 320))
   </b>
   <test>
     <op name="getboundary" arg1="A">
       MULTILINESTRING(
-        (60 260, 60 120, 220 120, 220 260, 60 260), 
-        (80 240, 80 140, 200 140, 200 240, 80 240), 
-        (100 220, 100 160, 180 160, 180 220, 100 220), 
+        (60 260, 60 120, 220 120, 220 260, 60 260),
+        (80 240, 80 140, 200 140, 200 240, 80 240),
+        (100 220, 100 160, 180 160, 180 220, 100 220),
         (120 200, 120 180, 160 180, 160 200, 120 200))
           </op>
   </test>
@@ -251,57 +113,57 @@
   <test>
     <op name="intersection" arg1="A" arg2="B">
       MULTILINESTRING(
-        (220 260, 140 260), 
-        (140 260, 120 260), 
-        (120 260, 60 260), 
-        (200 240, 140 240), 
-        (140 240, 120 240), 
-        (120 240, 80 240), 
-        (180 220, 140 220), 
-        (140 220, 120 220), 
-        (120 220, 100 220), 
-        (120 200, 120 180), 
-        (220 240, 200 240), 
-        (80 240, 60 240), 
-        (60 220, 80 220), 
-        (200 220, 220 220), 
-        (120 260, 120 240), 
-        (120 220, 120 200), 
-        (120 180, 120 160), 
-        (120 140, 120 120), 
-        (140 120, 140 140), 
-        (140 160, 140 180), 
-        (140 200, 140 220), 
+        (220 260, 140 260),
+        (140 260, 120 260),
+        (120 260, 60 260),
+        (200 240, 140 240),
+        (140 240, 120 240),
+        (120 240, 80 240),
+        (180 220, 140 220),
+        (140 220, 120 220),
+        (120 220, 100 220),
+        (120 200, 120 180),
+        (220 240, 200 240),
+        (80 240, 60 240),
+        (60 220, 80 220),
+        (200 220, 220 220),
+        (120 260, 120 240),
+        (120 220, 120 200),
+        (120 180, 120 160),
+        (120 140, 120 120),
+        (140 120, 140 140),
+        (140 160, 140 180),
+        (140 200, 140 220),
         (140 240, 140 260))
           </op>
   </test>
   <test>
     <op name="union" arg1="A" arg2="B">
       GEOMETRYCOLLECTION(
-        LINESTRING(40 260, 60 260), 
-        LINESTRING(220 260, 240 260, 240 240, 220 240), 
-        LINESTRING(60 240, 40 240, 40 220, 60 220), 
-        LINESTRING(80 220, 100 220), 
-        LINESTRING(180 220, 200 220), 
-        LINESTRING(220 220, 240 220), 
-        LINESTRING(120 300, 120 260), 
-        LINESTRING(120 240, 120 220), 
-        LINESTRING(120 160, 120 140), 
-        LINESTRING(120 120, 120 80), 
-        LINESTRING(120 80, 140 80), 
-        LINESTRING(140 80, 140 120), 
-        LINESTRING(140 140, 140 160), 
-        LINESTRING(140 180, 140 200), 
-        LINESTRING(140 220, 140 240), 
-        LINESTRING(140 260, 140 300), 
-        LINESTRING(120 300, 120 320), 
+        LINESTRING(40 260, 60 260),
+        LINESTRING(220 260, 240 260, 240 240, 220 240),
+        LINESTRING(60 240, 40 240, 40 220, 60 220),
+        LINESTRING(80 220, 100 220),
+        LINESTRING(180 220, 200 220),
+        LINESTRING(220 220, 240 220),
+        LINESTRING(120 300, 120 260),
+        LINESTRING(120 240, 120 220),
+        LINESTRING(120 160, 120 140),
+        LINESTRING(120 120, 120 80),
+        LINESTRING(120 80, 140 80),
+        LINESTRING(140 80, 140 120),
+        LINESTRING(140 140, 140 160),
+        LINESTRING(140 180, 140 200),
+        LINESTRING(140 220, 140 240),
+        LINESTRING(140 260, 140 300),
+        LINESTRING(120 300, 120 320),
         POLYGON(
-          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120, 
-          120 120, 60 120, 60 220, 60 240), 
-          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240, 
-          120 240, 80 240)), 
+          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120,
+          120 120, 60 120, 60 220, 60 240),
+          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240,
+          120 240, 80 240)),
         POLYGON(
-          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160), 
+          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160),
           (120 200, 120 180, 140 180, 160 180, 160 200, 140 200, 120 200)))
           </op>
   </test>
@@ -309,42 +171,42 @@
     <op name="difference" arg1="A" arg2="B">
       MULTIPOLYGON(
         (
-          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120, 
-          120 120, 60 120, 60 220, 60 240), 
-          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240, 
-          120 240, 80 240)), 
+          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120,
+          120 120, 60 120, 60 220, 60 240),
+          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240,
+          120 240, 80 240)),
         (
-          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160), 
+          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160),
           (120 200, 120 180, 140 180, 160 180, 160 200, 140 200, 120 200)))
           </op>
   </test>
   <test>
     <op name="symdifference" arg1="A" arg2="B">
       GEOMETRYCOLLECTION(
-        LINESTRING(40 260, 60 260), 
-        LINESTRING(220 260, 240 260, 240 240, 220 240), 
-        LINESTRING(60 240, 40 240, 40 220, 60 220), 
-        LINESTRING(80 220, 100 220), 
-        LINESTRING(180 220, 200 220), 
-        LINESTRING(220 220, 240 220), 
-        LINESTRING(120 300, 120 260), 
-        LINESTRING(120 240, 120 220), 
-        LINESTRING(120 160, 120 140), 
-        LINESTRING(120 120, 120 80), 
-        LINESTRING(120 80, 140 80), 
-        LINESTRING(140 80, 140 120), 
-        LINESTRING(140 140, 140 160), 
-        LINESTRING(140 180, 140 200), 
-        LINESTRING(140 220, 140 240), 
-        LINESTRING(140 260, 140 300), 
-        LINESTRING(120 300, 120 320), 
+        LINESTRING(40 260, 60 260),
+        LINESTRING(220 260, 240 260, 240 240, 220 240),
+        LINESTRING(60 240, 40 240, 40 220, 60 220),
+        LINESTRING(80 220, 100 220),
+        LINESTRING(180 220, 200 220),
+        LINESTRING(220 220, 240 220),
+        LINESTRING(120 300, 120 260),
+        LINESTRING(120 240, 120 220),
+        LINESTRING(120 160, 120 140),
+        LINESTRING(120 120, 120 80),
+        LINESTRING(120 80, 140 80),
+        LINESTRING(140 80, 140 120),
+        LINESTRING(140 140, 140 160),
+        LINESTRING(140 180, 140 200),
+        LINESTRING(140 220, 140 240),
+        LINESTRING(140 260, 140 300),
+        LINESTRING(120 300, 120 320),
         POLYGON(
-          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120, 
-          120 120, 60 120, 60 220, 60 240), 
-          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240, 
-          120 240, 80 240)), 
+          (60 240, 60 260, 120 260, 140 260, 220 260, 220 240, 220 220, 220 120, 140 120,
+          120 120, 60 120, 60 220, 60 240),
+          (80 240, 80 220, 80 140, 120 140, 140 140, 200 140, 200 220, 200 240, 140 240,
+          120 240, 80 240)),
         POLYGON(
-          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160), 
+          (120 160, 100 160, 100 220, 120 220, 140 220, 180 220, 180 160, 140 160, 120 160),
           (120 200, 120 180, 140 180, 160 180, 160 200, 140 200, 120 200)))
           </op>
   </test>
@@ -353,16 +215,16 @@
   <a>
     MULTIPOLYGON(
       (
-        (60 320, 60 120, 280 120, 280 320, 60 320), 
-        (120 260, 120 180, 240 180, 240 260, 120 260)), 
+        (60 320, 60 120, 280 120, 280 320, 60 320),
+        (120 260, 120 180, 240 180, 240 260, 120 260)),
       (
-        (280 400, 320 400, 320 360, 280 360, 280 400)), 
+        (280 400, 320 400, 320 360, 280 360, 280 400)),
       (
         (300 240, 300 220, 320 220, 320 240, 300 240)))
   </a>
   <b>
     MULTILINESTRING(
-      (80 300, 80 160, 260 160, 260 300, 80 300, 80 140), 
+      (80 300, 80 160, 260 160, 260 300, 80 300, 80 140),
       (220 360, 220 240, 300 240, 300 360))
   </b>
 <test>
@@ -374,24 +236,24 @@
 <test>
   <op name="getboundary" pattern="FFFFFFFFF" arg1="A">
     MULTILINESTRING(
-      (60 320, 60 120, 280 120, 280 320, 60 320), 
-      (120 260, 120 180, 240 180, 240 260, 120 260), 
-      (280 400, 320 400, 320 360, 280 360, 280 400), 
+      (60 320, 60 120, 280 120, 280 320, 60 320),
+      (120 260, 120 180, 240 180, 240 260, 120 260),
+      (280 400, 320 400, 320 360, 280 360, 280 400),
       (300 240, 300 220, 320 220, 320 240, 300 240))
   </op>
 </test>
 <test>
   <op name="symdifference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(220 360, 220 320), 
-      LINESTRING(220 260, 220 240, 240 240), 
-      LINESTRING(280 240, 300 240), 
-      LINESTRING(300 240, 300 360), 
+      LINESTRING(220 360, 220 320),
+      LINESTRING(220 260, 220 240, 240 240),
+      LINESTRING(280 240, 300 240),
+      LINESTRING(300 240, 300 360),
       POLYGON(
-        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240), 
-        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)), 
+        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240),
+        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)),
       POLYGON(
-        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)), 
+        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)),
       POLYGON(
         (300 240, 320 240, 320 220, 300 220, 300 240)))
   </op>
@@ -400,10 +262,10 @@
   <op name="difference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240), 
-        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)), 
+        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240),
+        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)),
       (
-        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)), 
+        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)),
       (
         (300 240, 320 240, 320 220, 300 220, 300 240)))
   </op>
@@ -411,15 +273,15 @@
 <test>
   <op name="union" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(220 360, 220 320), 
-      LINESTRING(220 260, 220 240, 240 240), 
-      LINESTRING(280 240, 300 240), 
-      LINESTRING(300 240, 300 360), 
+      LINESTRING(220 360, 220 320),
+      LINESTRING(220 260, 220 240, 240 240),
+      LINESTRING(280 240, 300 240),
+      LINESTRING(300 240, 300 360),
       POLYGON(
-        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240), 
-        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)), 
+        (280 240, 280 120, 60 120, 60 320, 220 320, 280 320, 280 240),
+        (120 260, 120 180, 240 180, 240 240, 240 260, 220 260, 120 260)),
       POLYGON(
-        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)), 
+        (280 400, 320 400, 320 360, 300 360, 280 360, 280 400)),
       POLYGON(
         (300 240, 320 240, 320 220, 300 220, 300 240)))
   </op>
@@ -427,16 +289,16 @@
 <test>
   <op name="intersection" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(300 240), 
-      POINT(300 360), 
-      LINESTRING(80 300, 80 160), 
-      LINESTRING(80 160, 260 160, 260 240), 
-      LINESTRING(260 240, 260 300, 220 300), 
-      LINESTRING(220 300, 80 300), 
-      LINESTRING(80 160, 80 140), 
-      LINESTRING(220 320, 220 300), 
-      LINESTRING(220 300, 220 260), 
-      LINESTRING(240 240, 260 240), 
+      POINT(300 240),
+      POINT(300 360),
+      LINESTRING(80 300, 80 160),
+      LINESTRING(80 160, 260 160, 260 240),
+      LINESTRING(260 240, 260 300, 220 300),
+      LINESTRING(220 300, 80 300),
+      LINESTRING(80 160, 80 140),
+      LINESTRING(220 320, 220 300),
+      LINESTRING(220 300, 220 260),
+      LINESTRING(240 240, 260 240),
       LINESTRING(260 240, 280 240))
   </op>
 </test>
@@ -447,14 +309,14 @@
   <a>
     MULTIPOLYGON(
       (
-        (120 180, 60 80, 180 80, 120 180)), 
+        (120 180, 60 80, 180 80, 120 180)),
       (
         (100 240, 140 240, 120 220, 100 240)))
   </a>
   <b>
     MULTILINESTRING(
-      (180 260, 120 180, 60 260, 180 260), 
-      (60 300, 60 40), 
+      (180 260, 120 180, 60 260, 180 260),
+      (60 300, 60 40),
       (100 100, 140 100))
   </b>
 <test>
@@ -466,21 +328,21 @@
 <test>
   <op name="getboundary" pattern="FFFFFFFFF" arg1="A">
     MULTILINESTRING(
-      (120 180, 60 80, 180 80, 120 180), 
+      (120 180, 60 80, 180 80, 120 180),
       (100 240, 140 240, 120 220, 100 240))
   </op>
 </test>
 <test>
   <op name="symdifference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(180 260, 120 180), 
-      LINESTRING(120 180, 60 260), 
-      LINESTRING(60 260, 180 260), 
-      LINESTRING(60 300, 60 260), 
-      LINESTRING(60 260, 60 80), 
-      LINESTRING(60 80, 60 40), 
+      LINESTRING(180 260, 120 180),
+      LINESTRING(120 180, 60 260),
+      LINESTRING(60 260, 180 260),
+      LINESTRING(60 300, 60 260),
+      LINESTRING(60 260, 60 80),
+      LINESTRING(60 80, 60 40),
       POLYGON(
-        (60 80, 120 180, 180 80, 60 80)), 
+        (60 80, 120 180, 180 80, 60 80)),
       POLYGON(
         (100 240, 140 240, 120 220, 100 240)))
   </op>
@@ -489,7 +351,7 @@
   <op name="difference" pattern="FFFFFFFFF" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (60 80, 120 180, 180 80, 60 80)), 
+        (60 80, 120 180, 180 80, 60 80)),
       (
         (100 240, 140 240, 120 220, 100 240)))
   </op>
@@ -497,14 +359,14 @@
 <test>
   <op name="union" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(180 260, 120 180), 
-      LINESTRING(120 180, 60 260), 
-      LINESTRING(60 260, 180 260), 
-      LINESTRING(60 300, 60 260), 
-      LINESTRING(60 260, 60 80), 
-      LINESTRING(60 80, 60 40), 
+      LINESTRING(180 260, 120 180),
+      LINESTRING(120 180, 60 260),
+      LINESTRING(60 260, 180 260),
+      LINESTRING(60 300, 60 260),
+      LINESTRING(60 260, 60 80),
+      LINESTRING(60 80, 60 40),
       POLYGON(
-        (60 80, 120 180, 180 80, 60 80)), 
+        (60 80, 120 180, 180 80, 60 80)),
       POLYGON(
         (100 240, 140 240, 120 220, 100 240)))
   </op>
@@ -512,8 +374,8 @@
 <test>
   <op name="intersection" pattern="FFFFFFFFF" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(60 80), 
-      POINT(120 180), 
+      POINT(60 80),
+      POINT(120 180),
       LINESTRING(100 100, 140 100))
   </op>
 </test>
diff --git a/tests/xmltester/tests/general/TestFunctionLAPrec.xml b/tests/xmltester/tests/general/TestFunctionLAPrec.xml
index 1c7f2b5..56e7a8a 100644
--- a/tests/xmltester/tests/general/TestFunctionLAPrec.xml
+++ b/tests/xmltester/tests/general/TestFunctionLAPrec.xml
@@ -29,17 +29,17 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(95 9, 95 13), 
+      LINESTRING(95 9, 95 13),
       POLYGON(
-        (95 13, 81 414, 87 414, 95 13)), 
-      LINESTRING(93 13, 95 13), 
+        (95 13, 81 414, 87 414, 95 13)),
+      LINESTRING(93 13, 95 13),
       LINESTRING(95 13, 96 13))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(95 9, 95 13), 
+      LINESTRING(95 9, 95 13),
       POLYGON(
         (95 13, 81 414, 87 414, 95 13)))
   </op>
@@ -47,13 +47,150 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      LINESTRING(95 9, 95 13), 
+      LINESTRING(95 9, 95 13),
       POLYGON(
-        (95 13, 81 414, 87 414, 95 13)), 
-      LINESTRING(93 13, 95 13), 
+        (95 13, 81 414, 87 414, 95 13)),
+      LINESTRING(93 13, 95 13),
       LINESTRING(95 13, 96 13))
   </op>
 </test>
 </case>
 
+<case>
+  <desc>LA - A and B simple</desc>
+  <a>
+    LINESTRING(240 190, 120 120)
+  </a>
+  <b>
+    POLYGON(
+      (110 240, 50 80, 240 70, 110 240))
+  </b>
+<test>
+  <op name="intersection" arg1="A" arg2="B">
+    LINESTRING(177 153, 120 120)
+  </op>
+</test>
+<test>
+  <op name="union" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(240 190, 177 153),
+      POLYGON(
+        (177 153, 240 70, 50 80, 110 240, 177 153)))
+  </op>
+</test>
+<test>
+  <op name="difference" arg1="A" arg2="B">
+    LINESTRING(240 190, 177 153)
+  </op>
+</test>
+<test>
+  <op name="symdifference" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(240 190, 177 153),
+      POLYGON(
+        (177 153, 240 70, 50 80, 110 240, 177 153)))
+  </op>
+</test>
+</case>
+
+<case>
+  <desc>LA - A intersects B-hole</desc>
+  <a>
+    LINESTRING(0 100, 100 100, 200 200)
+  </a>
+  <b>
+    POLYGON(
+      (30 240, 260 30, 30 30, 30 240),
+      (80 140, 80 80, 140 80, 80 140))
+  </b>
+<test>
+  <op name="intersection" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (30 100, 80 100),
+      (110 110, 140 140))
+  </op>
+</test>
+<test>
+  <op name="union" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(0 100, 30 100),
+      LINESTRING(80 100, 100 100, 110 110),
+      LINESTRING(140 140, 200 200),
+      POLYGON(
+        (30 240, 140 140, 260 30, 30 30, 30 100, 30 240),
+        (80 140, 80 100, 80 80, 140 80, 110 110, 80 140)))
+  </op>
+</test>
+<test>
+  <op name="difference" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (0 100, 30 100),
+      (80 100, 100 100, 110 110),
+      (140 140, 200 200))
+  </op>
+</test>
+<test>
+  <op name="symdifference" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(0 100, 30 100),
+      LINESTRING(80 100, 100 100, 110 110),
+      LINESTRING(140 140, 200 200),
+      POLYGON(
+        (30 240, 140 140, 260 30, 30 30, 30 100, 30 240),
+        (80 140, 80 100, 80 80, 140 80, 110 110, 80 140)))
+  </op>
+</test>
+</case>
+
+<case>
+  <desc>LA - A intersects B-hole #2</desc>
+  <a>
+    LINESTRING(40 340, 200 250, 120 180, 160 110, 270 40)
+  </a>
+  <b>
+    POLYGON(
+      (160 330, 60 260, 20 150, 60 40, 190 20, 270 130, 260 250, 160 330),
+      (140 240, 80 190, 90 100, 160 70, 210 130, 210 210, 140 240))
+  </b>
+<test>
+  <op name="intersection" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (114 298, 200 250, 173 226),
+      (182 96, 225 68))
+  </op>
+</test>
+<test>
+  <op name="union" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(40 340, 114 298),
+      LINESTRING(173 226, 120 180, 160 110, 182 96),
+      LINESTRING(225 68, 270 40),
+      POLYGON(
+        (114 298, 160 330, 260 250, 270 130, 225 68, 190 20, 60 40, 20 150, 60 260,
+        114 298),
+        (140 240, 80 190, 90 100, 160 70, 182 96, 210 130, 210 210, 173 226, 140 240)))
+  </op>
+</test>
+<test>
+  <op name="difference" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (40 340, 114 298),
+      (173 226, 120 180, 160 110, 182 96),
+      (225 68, 270 40))
+  </op>
+</test>
+<test>
+  <op name="symdifference" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      LINESTRING(40 340, 114 298),
+      LINESTRING(173 226, 120 180, 160 110, 182 96),
+      LINESTRING(225 68, 270 40),
+      POLYGON(
+        (114 298, 160 330, 260 250, 270 130, 225 68, 190 20, 60 40, 20 150, 60 260,
+        114 298),
+        (140 240, 80 190, 90 100, 160 70, 182 96, 210 130, 210 210, 173 226, 140 240)))
+  </op>
+</test>
+</case>
+
 </run>
diff --git a/tests/xmltester/tests/general/TestFunctionLL.xml b/tests/xmltester/tests/general/TestFunctionLL.xml
index 5aa2757..cdd3659 100644
--- a/tests/xmltester/tests/general/TestFunctionLL.xml
+++ b/tests/xmltester/tests/general/TestFunctionLL.xml
@@ -1,5 +1,4 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
 
 <case>
   <desc>LL - A crosses B</desc>
@@ -17,25 +16,25 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (0 0, 50 50), 
-      (0 100, 50 50), 
-      (50 50, 100 100), 
+      (0 0, 50 50),
+      (0 100, 50 50),
+      (50 50, 100 100),
       (50 50, 100 0))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (0 0, 50 50), 
+      (0 0, 50 50),
       (50 50, 100 100))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (0 0, 50 50), 
-      (0 100, 50 50), 
-      (50 50, 100 100), 
+      (0 0, 50 50),
+      (0 100, 50 50),
+      (50 50, 100 100),
       (50 50, 100 0))
   </op>
 </test>
@@ -57,8 +56,8 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (0 0, 100 100), 
-      (100 100, 200 200), 
+      (0 0, 100 100),
+      (100 100, 200 200),
       (100 100, 200 0))
   </op>
 </test>
@@ -70,7 +69,7 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 100, 200 200), 
+      (100 100, 200 200),
       (100 100, 200 0))
   </op>
 </test>
@@ -103,7 +102,7 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (40 360, 40 220, 120 360), 
+      (40 360, 40 220, 120 360),
       (120 340, 60 220, 140 220, 140 360))
   </op>
 </test>
@@ -115,102 +114,12 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (40 360, 40 220, 120 360), 
+      (40 360, 40 220, 120 360),
       (120 340, 60 220, 140 220, 140 360))
   </op>
 </test>
 </case>
 
-<case>
-  <desc>LL - A and B intersect frequently</desc>
-  <a>
-    LINESTRING(220 240, 200 220, 60 320, 40 300, 180 200, 160 180, 20 280)
-  </a>
-  <b>
-    LINESTRING(220 240, 140 160, 120 180, 220 280, 200 300, 100 200)
-  </b>
-<test>
-  <op name="getboundary" arg1="A">
-    MULTIPOINT((220 240), (20 280))
-  </op>
-</test>
-<test>
-  <op name="convexhull" arg1="A">
-    POLYGON(
-      (160 180, 20 280, 60 320, 220 240, 160 180))
-  </op>
-</test>
-<test>
-  <op name="intersection" arg1="A" arg2="B">
-    GEOMETRYCOLLECTION(
-      POINT(113 213), 
-      POINT(133 233), 
-      POINT(137 197), 
-      POINT(153 253), 
-      POINT(157 217), 
-      POINT(177 237), 
-      LINESTRING(180 200, 160 180), 
-      LINESTRING(220 240, 200 220))
-  </op>
-</test>
-<test>
-  <op name="union" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (113 213, 20 280), 
-      (133 233, 113 213), 
-      (113 213, 100 200), 
-      (137 197, 113 213), 
-      (153 253, 133 233), 
-      (153 253, 60 320, 40 300, 133 233), 
-      (133 233, 157 217), 
-      (137 197, 157 217), 
-      (160 180, 140 160, 120 180, 137 197), 
-      (160 180, 137 197), 
-      (177 237, 220 280, 200 300, 153 253), 
-      (177 237, 153 253), 
-      (157 217, 177 237), 
-      (157 217, 180 200), 
-      (180 200, 160 180), 
-      (200 220, 177 237), 
-      (200 220, 180 200), 
-      (220 240, 200 220))
-  </op>
-</test>
-<test>
-  <op name="difference" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (200 220, 177 237), 
-      (177 237, 153 253), 
-      (153 253, 60 320, 40 300, 133 233), 
-      (133 233, 157 217), 
-      (157 217, 180 200), 
-      (160 180, 137 197), 
-      (137 197, 113 213), 
-      (113 213, 20 280))
-  </op>
-</test>
-<test>
-  <op name="symdifference" arg1="A" arg2="B">
-    MULTILINESTRING(
-      (200 220, 177 237), 
-      (177 237, 153 253), 
-      (153 253, 60 320, 40 300, 133 233), 
-      (133 233, 157 217), 
-      (157 217, 180 200), 
-      (160 180, 137 197), 
-      (137 197, 113 213), 
-      (113 213, 20 280), 
-      (200 220, 180 200), 
-      (160 180, 140 160, 120 180, 137 197), 
-      (137 197, 157 217), 
-      (157 217, 177 237), 
-      (177 237, 220 280, 200 300, 153 253), 
-      (153 253, 133 233), 
-      (133 233, 113 213), 
-      (113 213, 100 200))
-  </op>
-</test>
-</case>
 
 <case>
   <desc>LL - A and B equal</desc>
@@ -234,16 +143,16 @@
 <test>
   <op name="intersection" arg1="A" arg2="B">
     MULTILINESTRING(
-      (220 160, 80 300), 
-      (80 320, 220 320), 
+      (220 160, 80 300),
+      (80 320, 220 320),
       (220 320, 220 160))
   </op>
 </test>
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (220 160, 80 300), 
-      (80 320, 220 320), 
+      (220 160, 80 300),
+      (80 320, 220 320),
       (220 320, 220 160))
   </op>
 </test>
@@ -286,7 +195,7 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (60 200, 60 260, 140 200), 
+      (60 200, 60 260, 140 200),
       (60 200, 60 140, 140 200))
   </op>
 </test>
@@ -298,7 +207,7 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (60 200, 60 260, 140 200), 
+      (60 200, 60 260, 140 200),
       (60 200, 60 140, 140 200))
   </op>
 </test>
@@ -331,27 +240,27 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 120, 180 200), 
-      (100 120, 100 200), 
-      (180 200, 100 280, 20 200, 100 120), 
-      (180 200, 220 200, 220 80, 100 80, 100 120), 
+      (100 120, 180 200),
+      (100 120, 100 200),
+      (180 200, 100 280, 20 200, 100 120),
+      (180 200, 220 200, 220 80, 100 80, 100 120),
       (100 200, 180 200))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 120, 180 200), 
+      (100 120, 180 200),
       (180 200, 100 280, 20 200, 100 120))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 120, 180 200), 
-      (100 120, 100 200), 
-      (180 200, 100 280, 20 200, 100 120), 
-      (180 200, 220 200, 220 80, 100 80, 100 120), 
+      (100 120, 180 200),
+      (100 120, 100 200),
+      (180 200, 100 280, 20 200, 100 120),
+      (180 200, 220 200, 220 80, 100 80, 100 120),
       (100 200, 180 200))
   </op>
 </test>
diff --git a/tests/xmltester/tests/general/TestFunctionLLPrec.xml b/tests/xmltester/tests/general/TestFunctionLLPrec.xml
index 5054673..b5ab934 100644
--- a/tests/xmltester/tests/general/TestFunctionLLPrec.xml
+++ b/tests/xmltester/tests/general/TestFunctionLLPrec.xml
@@ -17,12 +17,104 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     MULTILINESTRING(
-      (0 10, 400 10), 
-      (400 10, 620 10, 400 10), 
-      (400 10, 0 11), 
+      (0 10, 400 10),
+      (400 10, 620 10, 400 10),
+      (400 10, 0 11),
       (400 60, 400 10))
   </op>
 </test>
 </case>
 
-</run>
\ No newline at end of file
+
+<case>
+  <desc>LL - A and B intersect frequently</desc>
+  <a>
+    LINESTRING(220 240, 200 220, 60 320, 40 300, 180 200, 160 180, 20 280)
+  </a>
+  <b>
+    LINESTRING(220 240, 140 160, 120 180, 220 280, 200 300, 100 200)
+  </b>
+<test>
+  <op name="getboundary" arg1="A">
+    MULTIPOINT((220 240), (20 280))
+  </op>
+</test>
+<test>
+  <op name="convexhull" arg1="A">
+    POLYGON(
+      (160 180, 20 280, 60 320, 220 240, 160 180))
+  </op>
+</test>
+<test>
+  <op name="intersection" arg1="A" arg2="B">
+    GEOMETRYCOLLECTION(
+      POINT(113 213),
+      POINT(133 233),
+      POINT(137 197),
+      POINT(153 253),
+      POINT(157 217),
+      POINT(177 237),
+      LINESTRING(180 200, 160 180),
+      LINESTRING(220 240, 200 220))
+  </op>
+</test>
+<test>
+  <op name="union" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (113 213, 20 280),
+      (133 233, 113 213),
+      (113 213, 100 200),
+      (137 197, 113 213),
+      (153 253, 133 233),
+      (153 253, 60 320, 40 300, 133 233),
+      (133 233, 157 217),
+      (137 197, 157 217),
+      (160 180, 140 160, 120 180, 137 197),
+      (160 180, 137 197),
+      (177 237, 220 280, 200 300, 153 253),
+      (177 237, 153 253),
+      (157 217, 177 237),
+      (157 217, 180 200),
+      (180 200, 160 180),
+      (200 220, 177 237),
+      (200 220, 180 200),
+      (220 240, 200 220))
+  </op>
+</test>
+<test>
+  <op name="difference" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (200 220, 177 237),
+      (177 237, 153 253),
+      (153 253, 60 320, 40 300, 133 233),
+      (133 233, 157 217),
+      (157 217, 180 200),
+      (160 180, 137 197),
+      (137 197, 113 213),
+      (113 213, 20 280))
+  </op>
+</test>
+<test>
+  <op name="symdifference" arg1="A" arg2="B">
+    MULTILINESTRING(
+      (200 220, 177 237),
+      (177 237, 153 253),
+      (153 253, 60 320, 40 300, 133 233),
+      (133 233, 157 217),
+      (157 217, 180 200),
+      (160 180, 137 197),
+      (137 197, 113 213),
+      (113 213, 20 280),
+      (200 220, 180 200),
+      (160 180, 140 160, 120 180, 137 197),
+      (137 197, 157 217),
+      (157 217, 177 237),
+      (177 237, 220 280, 200 300, 153 253),
+      (153 253, 133 233),
+      (133 233, 113 213),
+      (113 213, 100 200))
+  </op>
+</test>
+</case>
+
+</run>
diff --git a/tests/xmltester/tests/general/TestFunctionPA.xml b/tests/xmltester/tests/general/TestFunctionPA.xml
index a51c9fb..57ce6f7 100644
--- a/tests/xmltester/tests/general/TestFunctionPA.xml
+++ b/tests/xmltester/tests/general/TestFunctionPA.xml
@@ -1,5 +1,4 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
 
 <case>
   <desc>PA - point contained in simple polygon</desc>
@@ -22,7 +21,7 @@
   <a>
     MULTIPOLYGON(
       (
-        (120 320, 180 200, 240 320, 120 320)), 
+        (120 320, 180 200, 240 320, 120 320)),
       (
         (180 200, 240 80, 300 200, 180 200)))
   </a>
@@ -32,7 +31,7 @@
 <test>
   <op name="getboundary" arg1="A">
     MULTILINESTRING(
-      (120 320, 180 200, 240 320, 120 320), 
+      (120 320, 180 200, 240 320, 120 320),
       (180 200, 240 80, 300 200, 180 200))
   </op>
 </test>
@@ -50,9 +49,9 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(200 220), 
+      POINT(200 220),
       POLYGON(
-        (180 200, 120 320, 240 320, 180 200)), 
+        (180 200, 120 320, 240 320, 180 200)),
       POLYGON(
         (180 200, 300 200, 240 80, 180 200)))
   </op>
@@ -61,7 +60,7 @@
   <op name="difference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (180 200, 120 320, 240 320, 180 200)), 
+        (180 200, 120 320, 240 320, 180 200)),
       (
         (180 200, 300 200, 240 80, 180 200)))
   </op>
@@ -69,9 +68,9 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(200 220), 
+      POINT(200 220),
       POLYGON(
-        (180 200, 120 320, 240 320, 180 200)), 
+        (180 200, 120 320, 240 320, 180 200)),
       POLYGON(
         (180 200, 300 200, 240 80, 180 200)))
   </op>
@@ -83,22 +82,22 @@
   <a>
     MULTIPOLYGON(
       (
-        (120 80, 420 80, 420 340, 120 340, 120 80), 
-        (160 300, 160 120, 380 120, 380 300, 160 300)), 
+        (120 80, 420 80, 420 340, 120 340, 120 80),
+        (160 300, 160 120, 380 120, 380 300, 160 300)),
       (
-        (200 260, 200 160, 340 160, 340 260, 200 260), 
+        (200 260, 200 160, 340 160, 340 260, 200 260),
         (240 220, 240 200, 300 200, 300 220, 240 220)))
   </a>
   <b>
-    MULTIPOINT((200 360), (420 340), (400 100), (340 120), (200 140), (200 160), (220 180), (260 200), (200 360), 
+    MULTIPOINT((200 360), (420 340), (400 100), (340 120), (200 140), (200 160), (220 180), (260 200), (200 360),
     (420 340), (400 100), (340 120), (200 140), (200 160), (220 180), (260 200))
   </b>
 <test>
   <op name="getboundary" arg1="A">
     MULTILINESTRING(
-      (120 80, 420 80, 420 340, 120 340, 120 80), 
-      (160 300, 160 120, 380 120, 380 300, 160 300), 
-      (200 260, 200 160, 340 160, 340 260, 200 260), 
+      (120 80, 420 80, 420 340, 120 340, 120 80),
+      (160 300, 160 120, 380 120, 380 300, 160 300),
+      (200 260, 200 160, 340 160, 340 260, 200 260),
       (240 220, 240 200, 300 200, 300 220, 240 220))
   </op>
 </test>
@@ -116,13 +115,13 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(200 140), 
-      POINT(200 360), 
+      POINT(200 140),
+      POINT(200 360),
       POLYGON(
-        (120 80, 120 340, 420 340, 420 80, 120 80), 
-        (160 300, 160 120, 380 120, 380 300, 160 300)), 
+        (120 80, 120 340, 420 340, 420 80, 120 80),
+        (160 300, 160 120, 380 120, 380 300, 160 300)),
       POLYGON(
-        (200 260, 340 260, 340 160, 200 160, 200 260), 
+        (200 260, 340 260, 340 160, 200 160, 200 260),
         (240 220, 240 200, 300 200, 300 220, 240 220)))
   </op>
 </test>
@@ -130,23 +129,23 @@
   <op name="difference" arg1="A" arg2="B">
     MULTIPOLYGON(
       (
-        (120 80, 120 340, 420 340, 420 80, 120 80), 
-        (160 300, 160 120, 380 120, 380 300, 160 300)), 
+        (120 80, 120 340, 420 340, 420 80, 120 80),
+        (160 300, 160 120, 380 120, 380 300, 160 300)),
       (
-        (200 260, 340 260, 340 160, 200 160, 200 260), 
+        (200 260, 340 260, 340 160, 200 160, 200 260),
         (240 220, 240 200, 300 200, 300 220, 240 220)))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(200 140), 
-      POINT(200 360), 
+      POINT(200 140),
+      POINT(200 360),
       POLYGON(
-        (120 80, 120 340, 420 340, 420 80, 120 80), 
-        (160 300, 160 120, 380 120, 380 300, 160 300)), 
+        (120 80, 120 340, 420 340, 420 80, 120 80),
+        (160 300, 160 120, 380 120, 380 300, 160 300)),
       POLYGON(
-        (200 260, 340 260, 340 160, 200 160, 200 260), 
+        (200 260, 340 260, 340 160, 200 160, 200 260),
         (240 220, 240 200, 300 200, 300 220, 240 220)))
   </op>
 </test>
diff --git a/tests/xmltester/tests/general/TestFunctionPL.xml b/tests/xmltester/tests/general/TestFunctionPL.xml
index 3b10817..bc9c855 100644
--- a/tests/xmltester/tests/general/TestFunctionPL.xml
+++ b/tests/xmltester/tests/general/TestFunctionPL.xml
@@ -1,5 +1,4 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
 
 <case>
   <desc>mPL - points in I and E of line</desc>
@@ -17,7 +16,7 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(40 90), 
+      POINT(40 90),
       LINESTRING(20 20, 100 100))
   </op>
 </test>
@@ -29,7 +28,7 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(40 90), 
+      POINT(40 90),
       LINESTRING(20 20, 100 100))
   </op>
 </test>
@@ -51,8 +50,8 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(40 90), 
-      LINESTRING(20 20, 70 70), 
+      POINT(40 90),
+      LINESTRING(20 20, 70 70),
       LINESTRING(70 70, 110 110, 170 50, 130 10, 70 70))
   </op>
 </test>
@@ -64,8 +63,8 @@
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(40 90), 
-      LINESTRING(20 20, 70 70), 
+      POINT(40 90),
+      LINESTRING(20 20, 70 70),
       LINESTRING(70 70, 110 110, 170 50, 130 10, 70 70))
   </op>
 </test>
@@ -75,14 +74,14 @@
   <desc>mPmL - points in I, B and E of lines, lines overlap, points overlap</desc>
   <a>
     MULTILINESTRING(
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
-      (220 320, 160 320), 
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
-      (220 320, 160 320), 
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
+      (220 320, 160 320),
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
+      (220 320, 160 320),
       (100 220, 100 320))
   </a>
   <b>
@@ -106,33 +105,33 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(100 200), 
-      POINT(120 320), 
-      POINT(140 320), 
-      LINESTRING(100 320, 100 220), 
-      LINESTRING(100 180, 200 180), 
-      LINESTRING(220 180, 220 320), 
+      POINT(100 200),
+      POINT(120 320),
+      POINT(140 320),
+      LINESTRING(100 320, 100 220),
+      LINESTRING(100 180, 200 180),
+      LINESTRING(220 180, 220 320),
       LINESTRING(220 320, 160 320))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
       (220 320, 160 320))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(100 200), 
-      POINT(120 320), 
-      POINT(140 320), 
-      LINESTRING(100 320, 100 220), 
-      LINESTRING(100 180, 200 180), 
-      LINESTRING(220 180, 220 320), 
+      POINT(100 200),
+      POINT(120 320),
+      POINT(140 320),
+      LINESTRING(100 320, 100 220),
+      LINESTRING(100 180, 200 180),
+      LINESTRING(220 180, 220 320),
       LINESTRING(220 320, 160 320))
   </op>
 </test>
@@ -142,7 +141,7 @@
   <desc>mPmL - points in I, B and E of lines, lines overlap, points overlap, x <0, y < 0</desc>
   <a>
     MULTILINESTRING(
-      (-500 -140, -500 -280, -320 -280, -320 -140, -500 -140, -500 -340), 
+      (-500 -140, -500 -280, -320 -280, -320 -140, -500 -140, -500 -340),
       (-500 -140, -320 -140, -500 -140, -320 -140, -500 -140))
   </a>
   <b>
@@ -167,35 +166,35 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(-560 -180), 
-      POINT(-420 -180), 
-      POINT(-320 -120), 
-      POINT(-280 -140), 
-      LINESTRING(-500 -140, -500 -280), 
-      LINESTRING(-500 -280, -320 -280, -320 -140), 
-      LINESTRING(-320 -140, -500 -140), 
+      POINT(-560 -180),
+      POINT(-420 -180),
+      POINT(-320 -120),
+      POINT(-280 -140),
+      LINESTRING(-500 -140, -500 -280),
+      LINESTRING(-500 -280, -320 -280, -320 -140),
+      LINESTRING(-320 -140, -500 -140),
       LINESTRING(-500 -280, -500 -340))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (-500 -140, -500 -280), 
-      (-500 -280, -320 -280, -320 -140), 
-      (-320 -140, -500 -140), 
+      (-500 -140, -500 -280),
+      (-500 -280, -320 -280, -320 -140),
+      (-320 -140, -500 -140),
       (-500 -280, -500 -340))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(-560 -180), 
-      POINT(-420 -180), 
-      POINT(-320 -120), 
-      POINT(-280 -140), 
-      LINESTRING(-500 -140, -500 -280), 
-      LINESTRING(-500 -280, -320 -280, -320 -140), 
-      LINESTRING(-320 -140, -500 -140), 
+      POINT(-560 -180),
+      POINT(-420 -180),
+      POINT(-320 -120),
+      POINT(-280 -140),
+      LINESTRING(-500 -140, -500 -280),
+      LINESTRING(-500 -280, -320 -280, -320 -140),
+      LINESTRING(-320 -140, -500 -140),
       LINESTRING(-500 -280, -500 -340))
   </op>
 </test>
@@ -205,7 +204,7 @@
   <desc>mL - lines intersect at 1 point</desc>
   <a>
     MULTILINESTRING(
-      (180 100, 140 280, 240 140, 220 120, 140 280), 
+      (180 100, 140 280, 240 140, 220 120, 140 280),
       (140 280, 100 400, 80 380, 140 280, 40 380, 20 360, 140 280))
   </a>
 <test>
@@ -219,14 +218,14 @@
   <desc>mPmL - points in I, B and E of lines, lines overlap, points overlap</desc>
   <a>
     MULTILINESTRING(
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
-      (220 320, 160 320), 
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
-      (220 320, 160 320), 
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
+      (220 320, 160 320),
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
+      (220 320, 160 320),
       (100 220, 100 320))
   </a>
   <b>
@@ -251,33 +250,33 @@
 <test>
   <op name="union" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(100 200), 
-      POINT(120 320), 
-      POINT(140 320), 
-      LINESTRING(100 320, 100 220), 
-      LINESTRING(100 180, 200 180), 
-      LINESTRING(220 180, 220 320), 
+      POINT(100 200),
+      POINT(120 320),
+      POINT(140 320),
+      LINESTRING(100 320, 100 220),
+      LINESTRING(100 180, 200 180),
+      LINESTRING(220 180, 220 320),
       LINESTRING(220 320, 160 320))
   </op>
 </test>
 <test>
   <op name="difference" arg1="A" arg2="B">
     MULTILINESTRING(
-      (100 320, 100 220), 
-      (100 180, 200 180), 
-      (220 180, 220 320), 
+      (100 320, 100 220),
+      (100 180, 200 180),
+      (220 180, 220 320),
       (220 320, 160 320))
   </op>
 </test>
 <test>
   <op name="symdifference" arg1="A" arg2="B">
     GEOMETRYCOLLECTION(
-      POINT(100 200), 
-      POINT(120 320), 
-      POINT(140 320), 
-      LINESTRING(100 320, 100 220), 
-      LINESTRING(100 180, 200 180), 
-      LINESTRING(220 180, 220 320), 
+      POINT(100 200),
+      POINT(120 320),
+      POINT(140 320),
+      LINESTRING(100 320, 100 220),
+      LINESTRING(100 180, 200 180),
+      LINESTRING(220 180, 220 320),
       LINESTRING(220 320, 160 320))
   </op>
 </test>
diff --git a/tests/xmltester/tests/general/TestFunctionPP.xml b/tests/xmltester/tests/general/TestFunctionPP.xml
index f83a79c..9f60060 100644
--- a/tests/xmltester/tests/general/TestFunctionPP.xml
+++ b/tests/xmltester/tests/general/TestFunctionPP.xml
@@ -1,5 +1,4 @@
 <run>
-  <precisionModel scale="1.0" offsetx="0.0" offsety="0.0"/>
 
 <case>
   <desc>PP - point contained in both A and B</desc>
diff --git a/tests/xmltester/tests/general/TestUnaryUnion.xml b/tests/xmltester/tests/general/TestUnaryUnion.xml
index 75248b0..2adaeed 100644
--- a/tests/xmltester/tests/general/TestUnaryUnion.xml
+++ b/tests/xmltester/tests/general/TestUnaryUnion.xml
@@ -52,16 +52,16 @@
 
 <case>
   <desc>GC - shows handling linear rings and linestrings</desc>
-  <a>    GEOMETRYCOLLECTION (LINEARRING (0 0, 0 70, 80 70, 80 0, 0 0), 
+  <a>    GEOMETRYCOLLECTION (LINEARRING (0 0, 0 70, 80 70, 80 0, 0 0),
   LINESTRING (30 110, 30 30, 100 30))
   </a>
   <test>
     <op name="union" arg1="A">
-    MULTILINESTRING ((0 0, 0 70, 30 70), 
-  (30 70, 80 70, 80 30), 
-  (80 30, 80 0, 0 0), 
-  (30 110, 30 70), 
-  (30 70, 30 30, 80 30), 
+    MULTILINESTRING ((0 0, 0 70, 30 70),
+  (30 70, 80 70, 80 30),
+  (80 30, 80 0, 0 0),
+  (30 110, 30 70),
+  (30 70, 30 30, 80 30),
   (80 30, 100 30))
     </op>
   </test>
@@ -80,7 +80,7 @@
 
 <case>
   <desc>mP - multiPolygon (invalid)</desc>
-  <a>    MULTIPOLYGON (((0 0, 0 100, 100 100, 100 0, 0 0)), 
+  <a>    MULTIPOLYGON (((0 0, 0 100, 100 100, 100 0, 0 0)),
   ((70 160, 70 70, 160 70, 160 160, 70 160)))
   </a>
   <test>
@@ -92,7 +92,7 @@
 
 <case>
   <desc>GC - geometry collection (homo)</desc>
-  <a>    GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), 
+  <a>    GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)),
   POLYGON ((70 160, 70 70, 160 70, 160 160, 70 160)))
   </a>
   <test>
@@ -104,13 +104,13 @@
 
 <case>
   <desc>GC - geometry collection (hetero LA)</desc>
-  <a>    GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)), 
-  POLYGON ((70 160, 70 70, 160 70, 160 160, 70 160)), 
+  <a>    GEOMETRYCOLLECTION (POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0)),
+  POLYGON ((70 160, 70 70, 160 70, 160 160, 70 160)),
   LINESTRING (40 70, 40 160))
   </a>
   <test>
     <op name="union" arg1="A">
-    GEOMETRYCOLLECTION (LINESTRING (40 100, 40 160), 
+    GEOMETRYCOLLECTION (LINESTRING (40 100, 40 160),
   POLYGON ((0 0, 0 100, 40 100, 70 100, 70 160, 160 160, 160 70, 100 70, 100 0, 0 0)))
     </op>
   </test>
@@ -118,8 +118,8 @@
 
 <case>
   <desc>GC - geometry collection (hetero PL)</desc>
-  <a>    GEOMETRYCOLLECTION (LINESTRING (40 60, 120 110), 
-  POINT (120 110), 
+  <a>    GEOMETRYCOLLECTION (LINESTRING (40 60, 120 110),
+  POINT (120 110),
   POINT (40 60))
   </a>
   <test>
@@ -131,10 +131,10 @@
 
 <case>
   <desc>GC - geometry collection (hetero PL)</desc>
-  <a>    GEOMETRYCOLLECTION (LINESTRING (40 60, 120 110), 
-  POINT (120 110), 
-  POINT (40 60), 
-  POINT (100 70), 
+  <a>    GEOMETRYCOLLECTION (LINESTRING (40 60, 120 110),
+  POINT (120 110),
+  POINT (40 60),
+  POINT (100 70),
   POINT (80 50))
   </a>
   <test>
@@ -146,7 +146,7 @@
 
 <case>
   <desc>mP - multipolygon (invalid) with topology collapse</desc>
-  <a>    MULTIPOLYGON (((0 0, 150 0, 150 1, 0 0)), 
+  <a>    MULTIPOLYGON (((0 0, 150 0, 150 1, 0 0)),
   ((180 0, 20 0, 20 100, 180 100, 180 0)))
   </a>
   <test>

-----------------------------------------------------------------------

Summary of changes:
 tests/xmltester/tests/general/TestFunctionAA.xml   |  36 --
 .../xmltester/tests/general/TestFunctionAAPrec.xml | 229 ++++++-----
 tests/xmltester/tests/general/TestFunctionLA.xml   | 450 +++++++--------------
 .../xmltester/tests/general/TestFunctionLAPrec.xml | 151 ++++++-
 tests/xmltester/tests/general/TestFunctionLL.xml   | 145 ++-----
 .../xmltester/tests/general/TestFunctionLLPrec.xml | 100 ++++-
 tests/xmltester/tests/general/TestFunctionPA.xml   |  55 ++-
 tests/xmltester/tests/general/TestFunctionPL.xml   | 143 ++++---
 tests/xmltester/tests/general/TestFunctionPP.xml   |   1 -
 tests/xmltester/tests/general/TestUnaryUnion.xml   |  36 +-
 10 files changed, 672 insertions(+), 674 deletions(-)


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list