]> granicus.if.org Git - postgis/commitdiff
Stroke curves for input into GEOS,
authorPaul Ramsey <pramsey@cleverelephant.ca>
Tue, 30 Jun 2015 16:38:45 +0000 (16:38 +0000)
committerPaul Ramsey <pramsey@cleverelephant.ca>
Tue, 30 Jun 2015 16:38:45 +0000 (16:38 +0000)
Update SQL-MM curve regression tests

git-svn-id: http://svn.osgeo.org/postgis/trunk@13764 b70326c6-7e19-0410-871a-916f4a2858ee

12 files changed:
liblwgeom/lwgeom_geos.c
postgis/lwgeom_geos.c
regress/sql-mm-circularstring.sql
regress/sql-mm-circularstring_expected
regress/sql-mm-compoundcurve.sql
regress/sql-mm-compoundcurve_expected
regress/sql-mm-curvepoly.sql
regress/sql-mm-curvepoly_expected
regress/sql-mm-multicurve.sql
regress/sql-mm-multicurve_expected
regress/sql-mm-multisurface.sql
regress/sql-mm-multisurface_expected

index a66ba956e4c5c05c7c8c6370125fae8e76444503..680955917b99283345060a1d5aac3e3155c690e2 100644 (file)
@@ -337,10 +337,10 @@ LWGEOM2GEOS(const LWGEOM *lwgeom, int autofix)
 
        if (lwgeom_has_arc(lwgeom))
        {
-               LWDEBUG(3, "LWGEOM2GEOS: arced geometry found.");
-
-               lwerror("Exception in LWGEOM2GEOS: curved geometry not supported.");
-               return NULL;
+               LWGEOM *lwgeom_stroked = lwgeom_stroke(lwgeom, 32);
+               GEOSGeometry *g = LWGEOM2GEOS(lwgeom_stroked, autofix);
+               lwgeom_free(lwgeom_stroked);
+               return g;
        }
        
        switch (lwgeom->type)
index 82622d835ded8e1ff596b4e31ca0005da54fbe1d..f26394c7250f459902725dfd846d7098568c3d4e 100644 (file)
@@ -3170,23 +3170,25 @@ Datum isring(PG_FUNCTION_ARGS)
 
        geom = PG_GETARG_GSERIALIZED_P(0);
 
-       if (gserialized_get_type(geom) != LINETYPE)
-       {
-               elog(ERROR,"isring() should only be called on a LINE");
-       }
-
        /* Empty things can't close */
        if ( gserialized_is_empty(geom) )
                PG_RETURN_BOOL(FALSE);
 
        initGEOS(lwpgnotice, lwgeom_geos_error);
 
-       g1 = (GEOSGeometry *)POSTGIS2GEOS(geom );
+       g1 = (GEOSGeometry *)POSTGIS2GEOS(geom);
        if ( 0 == g1 )   /* exception thrown at construction */
        {
                HANDLE_GEOS_ERROR("First argument geometry could not be converted to GEOS");
                PG_RETURN_NULL();
        }
+
+       if ( GEOSGeomTypeId(g1) != GEOS_LINESTRING )
+       {
+               GEOSGeom_destroy(g1);
+               elog(ERROR, "ST_IsRing() should only be called on a linear feature");
+       }
+
        result = GEOSisRing(g1);
        GEOSGeom_destroy(g1);
 
@@ -3213,11 +3215,11 @@ GEOS2POSTGIS(GEOSGeom geom, char want3d)
        lwgeom = GEOS2LWGEOM(geom, want3d);
        if ( ! lwgeom )
        {
-               lwpgerror("GEOS2POSTGIS: GEOS2LWGEOM returned NULL");
+               lwpgerror("%s: GEOS2LWGEOM returned NULL", __func__);
                return NULL;
        }
 
-       POSTGIS_DEBUGF(4, "GEOS2POSTGIS: GEOS2LWGEOM returned a %s", lwgeom_summary(lwgeom, 0));
+       POSTGIS_DEBUGF(4, "%s: GEOS2LWGEOM returned a %s", __func__, lwgeom_summary(lwgeom, 0));
 
        if ( lwgeom_needs_bbox(lwgeom) == LW_TRUE )
        {
@@ -3493,7 +3495,7 @@ Datum polygonize_garray(PG_FUNCTION_ARGS)
        GEOSGeom_destroy(geos_result);
        if ( result == NULL )
        {
-               elog(ERROR, "GEOS2POSTGIS returned an error");
+               elog(ERROR, "%s returned an error", __func__);
                PG_RETURN_NULL(); /*never get here */
        }
 
index 67a88677f9f111c6c0d1fde247fe665ce9859f11..710179b9c76c2e3ac30c9f080b5f5a7d792232a7 100644 (file)
@@ -33,25 +33,25 @@ SELECT 'geometrytype04', geometrytype(ST_geomfromewkt('CIRCULARSTRING(
                 0.26794919243112270647255365849413 1, 
                 0.5857864376269049511981127579 1.4142135623730950488016887242097)'));
 
-SELECT 'isClosed01', ST_isClosed(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isClosed01', ST_IsClosed(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
                 2 0,
                 0 -2)'));
-SELECT 'isSimple01', ST_isSimple(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isSimple01', ST_IsSimple(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
                 2 0,
                 0 -2)'));
-SELECT 'isRing01', ST_isRing(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isRing01', ST_IsRing(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
                 2 0,
                 0 -2)'));
-SELECT 'isClosed02', ST_isClosed(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isClosed02', ST_IsClosed(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
@@ -61,7 +61,7 @@ SELECT 'isClosed02', ST_isClosed(ST_geomfromewkt('CIRCULARSTRING(
                 -2 -2,
                 -2 0,
                 0 -2)'));
-SELECT 'isSimple02', ST_isSimple(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isSimple02', ST_IsSimple(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
@@ -71,7 +71,7 @@ SELECT 'isSimple02', ST_isSimple(ST_geomfromewkt('CIRCULARSTRING(
                 -2 -2,
                 -2 0,
                 0 -2)'));
-SELECT 'isRing02', ST_isRing(ST_geomfromewkt('CIRCULARSTRING(
+SELECT 'isRing02', ST_IsRing(ST_geomfromewkt('CIRCULARSTRING(
                 0 -2,
                 -2 0,
                 0 2,
@@ -163,94 +163,48 @@ SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.circularstring;
 SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.circularstring;        
 SELECT 'astext04', ST_astext(the_geom_4d) FROM public.circularstring;        
 
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.circularstring;        
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.circularstring;        
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.circularstring;        
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.circularstring;        
+SELECT 'asewkt01', ST_AsEWKT(the_geom_2d) FROM public.circularstring;        
+SELECT 'asewkt02', ST_AsEWKT(the_geom_3dm) FROM public.circularstring;        
+SELECT 'asewkt03', ST_AsEWKT(the_geom_3dz) FROM public.circularstring;        
+SELECT 'asewkt04', ST_AsEWKT(the_geom_4d) FROM public.circularstring;        
 
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(asbinary(the_geom_2d), 'hex') FROM public.circularstring;
---SELECT 'asbinary02', encode(asbinary(the_geom_3dm), 'hex') FROM public.circularstring;
---SELECT 'asbinary03', encode(asbinary(the_geom_3dz), 'hex') FROM public.circularstring;
---SELECT 'asbinary04', encode(asbinary(the_geom_4d), 'hex') FROM public.circularstring;
---
---SELECT 'asewkb01', encode(asewkb(the_geom_2d), 'hex') FROM public.circularstring;
---SELECT 'asewkb02', encode(asewkb(the_geom_3dm), 'hex') FROM public.circularstring;
---SELECT 'asewkb03', encode(asewkb(the_geom_3dz), 'hex') FROM public.circularstring;
---SELECT 'asewkb04', encode(asewkb(the_geom_4d), 'hex') FROM public.circularstring;
+SELECT 'asbinary01', encode(ST_AsBinary(the_geom_2d, 'ndr'), 'hex') FROM public.circularstring;
+SELECT 'asbinary02', encode(ST_AsBinary(the_geom_3dm, 'xdr'), 'hex') FROM public.circularstring;
+SELECT 'asbinary03', encode(ST_AsBinary(the_geom_3dz, 'ndr'), 'hex') FROM public.circularstring;
+SELECT 'asbinary04', encode(ST_AsBinary(the_geom_4d, 'xdr'), 'hex') FROM public.circularstring;
 
-SELECT 'ST_CurveToLine-201', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-202', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-203', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-204', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'asewkb01', encode(ST_AsEWKB(the_geom_2d, 'ndr'), 'hex') FROM public.circularstring;
+SELECT 'asewkb02', encode(ST_AsEWKB(the_geom_3dm, 'xdr'), 'hex') FROM public.circularstring;
+SELECT 'asewkb03', encode(ST_AsEWKB(the_geom_3dz, 'ndr'), 'hex') FROM public.circularstring;
+SELECT 'asewkb04', encode(ST_AsEWKB(the_geom_4d, 'xdr'), 'hex') FROM public.circularstring;
 
-SELECT 'ST_CurveToLine-401', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-402', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-403', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine-404', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-201', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-202', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-203', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-204', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 
-SELECT 'ST_CurveToLine01', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine02', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine03', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
-SELECT 'ST_CurveToLine04', ST_asewkt( ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-401', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-402', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-403', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine-404', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 
---Removed due to discrepencies between hardware
---SELECT 'box2d01', box2d(the_geom_2d) FROM public.circularstring;
---SELECT 'box2d02', box2d(the_geom_3dm) FROM public.circularstring;
---SELECT 'box2d03', box2d(the_geom_3dz) FROM public.circularstring;
---SELECT 'box2d04', box2d(the_geom_4d) FROM public.circularstring;
+SELECT 'ST_CurveToLine01', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine02', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine03', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
+SELECT 'ST_CurveToLine04', ST_AsEWKT( ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 
---SELECT 'box3d01', box3d(the_geom_2d) FROM public.circularstring;
---SELECT 'box3d02', box3d(the_geom_3dm) FROM public.circularstring;
---SELECT 'box3d03', box3d(the_geom_3dz) FROM public.circularstring;
---SELECT 'box3d04', box3d(the_geom_4d) FROM public.circularstring;
 -- TODO: ST_SnapToGrid is required to remove platform dependent precision
 -- issues.  Until ST_SnapToGrid is updated to work against curves, these
 -- tests cannot be run.
---SELECT 'ST_LineToCurve01', ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.circularstring;
---SELECT 'ST_LineToCurve02', ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.circularstring;
---SELECT 'ST_LineToCurve03', ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.circularstring;
---SELECT 'ST_LineToCurve04', ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.circularstring;
+--SELECT 'ST_LineToCurve01', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.circularstring;
+--SELECT 'ST_LineToCurve02', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.circularstring;
+--SELECT 'ST_LineToCurve03', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.circularstring;
+--SELECT 'ST_LineToCurve04', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.circularstring;
 
--- Repeat tests with new function names.
-SELECT 'astext01', ST_astext(the_geom_2d) FROM public.circularstring;        
-SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.circularstring;        
-SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.circularstring;        
-SELECT 'astext04', ST_astext(the_geom_4d) FROM public.circularstring;        
-
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.circularstring;        
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.circularstring;        
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.circularstring;        
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.circularstring;        
-
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(ST_asbinary(the_geom_2d), 'hex') FROM public.circularstring;
---SELECT 'asbinary02', encode(ST_asbinary(the_geom_3dm), 'hex') FROM public.circularstring;
---SELECT 'asbinary03', encode(ST_asbinary(the_geom_3dz), 'hex') FROM public.circularstring;
---SELECT 'asbinary04', encode(ST_asbinary(the_geom_4d), 'hex') FROM public.circularstring;
---
---SELECT 'asewkb01', encode(ST_asewkb(the_geom_2d), 'hex') FROM public.circularstring;
---SELECT 'asewkb02', encode(ST_asewkb(the_geom_3dm), 'hex') FROM public.circularstring;
---SELECT 'asewkb03', encode(ST_asewkb(the_geom_3dz), 'hex') FROM public.circularstring;
---SELECT 'asewkb04', encode(ST_asewkb(the_geom_4d), 'hex') FROM public.circularstring;
-
---Removed due to discrepencies between hardware
---SELECT 'box2d01', box2d(the_geom_2d) FROM public.circularstring;
---SELECT 'box2d02', box2d(the_geom_3dm) FROM public.circularstring;
---SELECT 'box2d03', box2d(the_geom_3dz) FROM public.circularstring;
---SELECT 'box2d04', box2d(the_geom_4d) FROM public.circularstring;
-
---SELECT 'box3d01', box3d(the_geom_2d) FROM public.circularstring;
---SELECT 'box3d02', box3d(the_geom_3dm) FROM public.circularstring;
---SELECT 'box3d03', box3d(the_geom_3dz) FROM public.circularstring;
---SELECT 'box3d04', box3d(the_geom_4d) FROM public.circularstring;
-
-SELECT 'isValid01', ST_isValid(the_geom_2d) FROM public.circularstring;
-SELECT 'isValid02', ST_isValid(the_geom_3dm) FROM public.circularstring;
-SELECT 'isValid03', ST_isValid(the_geom_3dz) FROM public.circularstring;
-SELECT 'isValid04', ST_isValid(the_geom_4d) FROM public.circularstring;
+SELECT 'isValid01', ST_IsValid(the_geom_2d) FROM public.circularstring;
+SELECT 'isValid02', ST_IsValid(the_geom_3dm) FROM public.circularstring;
+SELECT 'isValid03', ST_IsValid(the_geom_3dz) FROM public.circularstring;
+SELECT 'isValid04', ST_IsValid(the_geom_4d) FROM public.circularstring;
 
 SELECT 'dimension01', ST_dimension(the_geom_2d) FROM public.circularstring;
 SELECT 'dimension02', ST_dimension(the_geom_3dm) FROM public.circularstring;
@@ -262,24 +216,21 @@ SELECT 'SRID02', ST_SRID(the_geom_3dm) FROM public.circularstring;
 SELECT 'SRID03', ST_SRID(the_geom_3dz) FROM public.circularstring;
 SELECT 'SRID04', ST_SRID(the_geom_4d) FROM public.circularstring;
 
-SELECT 'accessors01', ST_IsEmpty(the_geom_2d), ST_isSimple(the_geom_2d), ST_isClosed(the_geom_2d), ST_isRing(the_geom_2d) FROM public.circularstring;
-SELECT 'accessors02', ST_IsEmpty(the_geom_3dm), ST_isSimple(the_geom_3dm), ST_isClosed(the_geom_3dm), ST_isRing(the_geom_3dm) FROM public.circularstring;
-SELECT 'accessors03', ST_IsEmpty(the_geom_3dz), ST_isSimple(the_geom_3dz), ST_isClosed(the_geom_3dz), ST_isRing(the_geom_3dz) FROM public.circularstring;
-SELECT 'accessors04', ST_IsEmpty(the_geom_4d), ST_isSimple(the_geom_4d), ST_isClosed(the_geom_4d), ST_isRing(the_geom_4d) FROM public.circularstring;
+SELECT 'accessors01', ST_IsEmpty(the_geom_2d), ST_IsSimple(the_geom_2d), ST_IsClosed(the_geom_2d), ST_IsRing(the_geom_2d) FROM public.circularstring;
+SELECT 'accessors02', ST_IsEmpty(the_geom_3dm), ST_IsSimple(the_geom_3dm), ST_IsClosed(the_geom_3dm), ST_IsRing(the_geom_3dm) FROM public.circularstring;
+SELECT 'accessors03', ST_IsEmpty(the_geom_3dz), ST_IsSimple(the_geom_3dz), ST_IsClosed(the_geom_3dz), ST_IsRing(the_geom_3dz) FROM public.circularstring;
+SELECT 'accessors04', ST_IsEmpty(the_geom_4d), ST_IsSimple(the_geom_4d), ST_IsClosed(the_geom_4d), ST_IsRing(the_geom_4d) FROM public.circularstring;
 
 SELECT 'envelope01', ST_AsText(ST_SnapToGrid(ST_Envelope(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 SELECT 'envelope02', ST_AsText(ST_SnapToGrid(ST_Envelope(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 SELECT 'envelope03', ST_AsText(ST_SnapToGrid(ST_Envelope(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 SELECT 'envelope04', ST_AsText(ST_SnapToGrid(ST_Envelope(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.circularstring;
 
-SELECT DropGeometryColumn('public', 'circularstring', 'the_geom_4d');
-SELECT DropGeometryColumn('public', 'circularstring', 'the_geom_3dz');
-SELECT DropGeometryColumn('public', 'circularstring', 'the_geom_3dm');
-SELECT DropGeometryColumn('public', 'circularstring', 'the_geom_2d');
 DROP TABLE public.circularstring;
-SELECT ST_AsText(st_snaptogrid(box2d('CIRCULARSTRING(220268.439465645 150415.359530563,220227.333322076 150505.561285879,220227.353105332 150406.434743975)'::geometry),0.0001));
-SELECT 'npoints_is_five',ST_NumPoints(ST_GeomFromEWKT('CIRCULARSTRING(0 0,2 0, 2 1, 2 3, 4 3)'));
+
+SELECT ST_AsText(ST_SnapToGrid(box2d('CIRCULARSTRING(220268.439465645 150415.359530563,220227.333322076 150505.561285879,220227.353105332 150406.434743975)'::geometry),0.0001));
+SELECT 'npoints_is_five', ST_NumPoints(ST_GeomFromEWKT('CIRCULARSTRING(0 0,2 0, 2 1, 2 3, 4 3)'));
 
 -- See http://trac.osgeo.org/postgis/ticket/2410
-SELECT 'straight_curve',ST_AsText(ST_CurveToLine(ST_GeomFromEWKT('CIRCULARSTRING(0 0,1 0,2 0,3 0,4 0)')));
+SELECT 'straight_curve', ST_AsText(ST_CurveToLine(ST_GeomFromEWKT('CIRCULARSTRING(0 0,1 0,2 0,3 0,4 0)')));
 
index 16907353a015635cc144b9f04e35df4e71530b27..2ff3739950e77d5e2960138804f71387c4ebdbc5 100644 (file)
@@ -7,11 +7,11 @@ geometrytype03|CIRCULARSTRINGM
 ndims04|2
 geometrytype04|CIRCULARSTRING
 isClosed01|t
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  isring() should only be called on a LINE
+isSimple01|t
+isRing01|t
 isClosed02|t
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  isring() should only be called on a LINE
+isSimple02|f
+isRing02|f
 astext01|CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905 1.4142135623731)
 astext01|CIRCULARSTRING(-5 0,0 5,5 0,10 -5,15 0)
 astext02|CIRCULARSTRING M (0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2)
@@ -28,6 +28,22 @@ asewkt03|CIRCULARSTRING(0 0 0,0.267949192431123 1 3,0.585786437626905 1.41421356
 asewkt03|CIRCULARSTRING(-5 0 0,0 5 1,5 0 2,10 -5 3,15 0 4)
 asewkt04|CIRCULARSTRING(0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2)
 asewkt04|CIRCULARSTRING(-5 0 0 4,0 5 1 3,5 0 2 2,10 -5 3 1,15 0 4 0)
+asbinary01|0108000000030000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f67880133c3bee23fcd3b7f669ea0f63f
+asbinary01|01080000000500000000000000000014c000000000000000000000000000000000000000000000144000000000000014400000000000000000000000000000244000000000000014c00000000000002e400000000000000000
+asbinary02|00000007d8000000030000000000000000000000000000000000000000000000003fd126145e9ecd563ff0000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd4000000000000000
+asbinary02|00000007d800000005c014000000000000000000000000000040100000000000000000000000000000401400000000000040080000000000004014000000000000000000000000000040000000000000004024000000000000c0140000000000003ff0000000000000402e00000000000000000000000000000000000000000000
+asbinary03|01f00300000300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084067880133c3bee23fcd3b7f669ea0f63f000000000000f03f
+asbinary03|01f00300000500000000000000000014c00000000000000000000000000000000000000000000000000000000000001440000000000000f03f000000000000144000000000000000000000000000000040000000000000244000000000000014c000000000000008400000000000002e4000000000000000000000000000001040
+asbinary04|0000000bc00000000300000000000000000000000000000000000000000000000000000000000000003fd126145e9ecd563ff00000000000004008000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd3ff00000000000004000000000000000
+asbinary04|0000000bc000000005c014000000000000000000000000000000000000000000004010000000000000000000000000000040140000000000003ff0000000000000400800000000000040140000000000000000000000000000400000000000000040000000000000004024000000000000c01400000000000040080000000000003ff0000000000000402e000000000000000000000000000040100000000000000000000000000000
+asewkb01|0108000000030000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f67880133c3bee23fcd3b7f669ea0f63f
+asewkb01|01080000000500000000000000000014c000000000000000000000000000000000000000000000144000000000000014400000000000000000000000000000244000000000000014c00000000000002e400000000000000000
+asewkb02|0040000008000000030000000000000000000000000000000000000000000000003fd126145e9ecd563ff0000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd4000000000000000
+asewkb02|004000000800000005c014000000000000000000000000000040100000000000000000000000000000401400000000000040080000000000004014000000000000000000000000000040000000000000004024000000000000c0140000000000003ff0000000000000402e00000000000000000000000000000000000000000000
+asewkb03|01080000800300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084067880133c3bee23fcd3b7f669ea0f63f000000000000f03f
+asewkb03|01080000800500000000000000000014c00000000000000000000000000000000000000000000000000000000000001440000000000000f03f000000000000144000000000000000000000000000000040000000000000244000000000000014c000000000000008400000000000002e4000000000000000000000000000001040
+asewkb04|00c00000080000000300000000000000000000000000000000000000000000000000000000000000003fd126145e9ecd563ff00000000000004008000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd3ff00000000000004000000000000000
+asewkb04|00c000000800000005c014000000000000000000000000000000000000000000004010000000000000000000000000000040140000000000003ff0000000000000400800000000000040140000000000000000000000000000400000000000000040000000000000004024000000000000c01400000000000040080000000000003ff0000000000000402e000000000000000000000000000040100000000000000000000000000000
 ST_CurveToLine-201|LINESTRING(0 0,0.58578644 1.41421356)
 ST_CurveToLine-201|LINESTRING(-5 0,-3.53553391 3.53553391,0 5,3.53553391 3.53553391,5 0,6.46446609 -3.53553391,10 -5,13.53553391 -3.53553391,15 0)
 ST_CurveToLine-202|LINESTRINGM(0 0 0,0.58578644 1.41421356 2)
@@ -52,26 +68,14 @@ ST_CurveToLine03|LINESTRING(0 0 0,0.00240909 0.09813535 0.28125,0.00963055 0.196
 ST_CurveToLine03|LINESTRING(-5 0 0,-4.99397728 0.24533837 0.03125,-4.97592363 0.4900857 0.0625,-4.94588255 0.73365237 0.09375,-4.9039264 0.97545161 0.125,-4.85015627 1.2149009 0.15625,-4.78470168 1.45142339 0.1875,-4.70772033 1.68444927 0.21875,-4.61939766 1.91341716 0.25,-4.51994647 2.13777547 0.28125,-4.40960632 2.35698368 0.3125,-4.28864305 2.57051372 0.34375,-4.15734806 2.77785117 0.375,-4.01603766 2.97849652 0.40625,-3.86505227 3.17196642 0.4375,-3.70475563 3.35779477 0.46875,-3.53553391 3.53553391 0.5,-3.35779477 3.70475563 0.53125,-3.17196642 3.86505227 0.5625,-2.97849652 4.01603766 0.59375,-2.77785117 4.15734806 0.625,-2.57051372 4.28864305 0.65625,-2.35698368 4.40960632 0.6875,-2.13777547 4.51994647 0.71875,-1.91341716 4.61939766 0.75,-1.68444927 4.70772033 0.78125,-1.45142339 4.78470168 0.8125,-1.2149009 4.85015627 0.84375,-0.97545161 4.9039264 0.875,-0.73365237 4.94588255 0.90625,-0.4900857 4.97592363 0.9375,-0.24533837 4.99397728 0.96875,0 5 1,0.24533837 4.99397728 1.03125,0.4900857 4.97592363 1.0625,0.73365237 4.94588255 1.09375,0.97545161 4.9039264 1.125,1.2149009 4.85015627 1.15625,1.45142339 4.78470168 1.1875,1.68444927 4.70772033 1.21875,1.91341716 4.61939766 1.25,2.13777547 4.51994647 1.28125,2.35698368 4.40960632 1.3125,2.57051372 4.28864305 1.34375,2.77785117 4.15734806 1.375,2.97849652 4.01603766 1.40625,3.17196642 3.86505227 1.4375,3.35779477 3.70475563 1.46875,3.53553391 3.53553391 1.5,3.70475563 3.35779477 1.53125,3.86505227 3.17196642 1.5625,4.01603766 2.97849652 1.59375,4.15734806 2.77785117 1.625,4.28864305 2.57051372 1.65625,4.40960632 2.35698368 1.6875,4.51994647 2.13777547 1.71875,4.61939766 1.91341716 1.75,4.70772033 1.68444927 1.78125,4.78470168 1.45142339 1.8125,4.85015627 1.2149009 1.84375,4.9039264 0.97545161 1.875,4.94588255 0.73365237 1.90625,4.97592363 0.4900857 1.9375,4.99397728 0.24533837 1.96875,5 0 2,5.00602272 -0.24533837 2.03125,5.02407637 -0.4900857 2.0625,5.05411745 -0.73365237 2.09375,5.0960736 -0.97545161 2.125,5.14984373 -1.2149009 2.15625,5.21529832 -1.45142339 2.1875,5.29227967 -1.68444927 2.21875,5.38060234 -1.91341716 2.25,5.48005353 -2.13777547 2.28125,5.59039368 -2.35698368 2.3125,5.71135695 -2.57051372 2.34375,5.84265194 -2.77785117 2.375,5.98396234 -2.97849652 2.40625,6.13494773 -3.17196642 2.4375,6.29524437 -3.35779477 2.46875,6.46446609 -3.53553391 2.5,6.64220523 -3.70475563 2.53125,6.82803358 -3.86505227 2.5625,7.02150348 -4.01603766 2.59375,7.22214883 -4.15734806 2.625,7.42948628 -4.28864305 2.65625,7.64301632 -4.40960632 2.6875,7.86222453 -4.51994647 2.71875,8.08658284 -4.61939766 2.75,8.31555073 -4.70772033 2.78125,8.54857661 -4.78470168 2.8125,8.7850991 -4.85015627 2.84375,9.02454839 -4.9039264 2.875,9.26634763 -4.94588255 2.90625,9.5099143 -4.97592363 2.9375,9.75466163 -4.99397728 2.96875,10 -5 3,10.24533837 -4.99397728 3.03125,10.4900857 -4.97592363 3.0625,10.73365237 -4.94588255 3.09375,10.97545161 -4.9039264 3.125,11.2149009 -4.85015627 3.15625,11.45142339 -4.78470168 3.1875,11.68444927 -4.70772033 3.21875,11.91341716 -4.61939766 3.25,12.13777547 -4.51994647 3.28125,12.35698368 -4.40960632 3.3125,12.57051372 -4.28864305 3.34375,12.77785117 -4.15734806 3.375,12.97849652 -4.01603766 3.40625,13.17196642 -3.86505227 3.4375,13.35779477 -3.70475563 3.46875,13.53553391 -3.53553391 3.5,13.70475563 -3.35779477 3.53125,13.86505227 -3.17196642 3.5625,14.01603766 -2.97849652 3.59375,14.15734806 -2.77785117 3.625,14.28864305 -2.57051372 3.65625,14.40960632 -2.35698368 3.6875,14.51994647 -2.13777547 3.71875,14.61939766 -1.91341716 3.75,14.70772033 -1.68444927 3.78125,14.78470168 -1.45142339 3.8125,14.85015627 -1.2149009 3.84375,14.9039264 -0.97545161 3.875,14.94588255 -0.73365237 3.90625,14.97592363 -0.4900857 3.9375,14.99397728 -0.24533837 3.96875,15 0 4)
 ST_CurveToLine04|LINESTRING(0 0 0 0,0.00240909 0.09813535 0.28125 -0.1875,0.00963055 0.19603428 0.5625 -0.375,0.02164698 0.29346095 0.84375 -0.5625,0.03842944 0.39018064 1.125 -0.75,0.05993749 0.48596036 1.40625 -0.9375,0.08611933 0.58056935 1.6875 -1.125,0.11691187 0.67377971 1.96875 -1.3125,0.15224093 0.76536686 2.25 -1.5,0.19202141 0.85511019 2.53125 -1.6875,0.23615747 0.94279347 2.8125 -1.875,0.28454278 1.02820549 2.875 -1.75,0.33706078 1.11114047 2.5 -1,0.39358494 1.19139861 2.125 -0.25,0.45397909 1.26878657 1.75 0.5,0.51809775 1.34311791 1.375 1.25,0.58578644 1.41421356 1 2)
 ST_CurveToLine04|LINESTRING(-5 0 0 4,-4.99397728 0.24533837 0.03125 3.96875,-4.97592363 0.4900857 0.0625 3.9375,-4.94588255 0.73365237 0.09375 3.90625,-4.9039264 0.97545161 0.125 3.875,-4.85015627 1.2149009 0.15625 3.84375,-4.78470168 1.45142339 0.1875 3.8125,-4.70772033 1.68444927 0.21875 3.78125,-4.61939766 1.91341716 0.25 3.75,-4.51994647 2.13777547 0.28125 3.71875,-4.40960632 2.35698368 0.3125 3.6875,-4.28864305 2.57051372 0.34375 3.65625,-4.15734806 2.77785117 0.375 3.625,-4.01603766 2.97849652 0.40625 3.59375,-3.86505227 3.17196642 0.4375 3.5625,-3.70475563 3.35779477 0.46875 3.53125,-3.53553391 3.53553391 0.5 3.5,-3.35779477 3.70475563 0.53125 3.46875,-3.17196642 3.86505227 0.5625 3.4375,-2.97849652 4.01603766 0.59375 3.40625,-2.77785117 4.15734806 0.625 3.375,-2.57051372 4.28864305 0.65625 3.34375,-2.35698368 4.40960632 0.6875 3.3125,-2.13777547 4.51994647 0.71875 3.28125,-1.91341716 4.61939766 0.75 3.25,-1.68444927 4.70772033 0.78125 3.21875,-1.45142339 4.78470168 0.8125 3.1875,-1.2149009 4.85015627 0.84375 3.15625,-0.97545161 4.9039264 0.875 3.125,-0.73365237 4.94588255 0.90625 3.09375,-0.4900857 4.97592363 0.9375 3.0625,-0.24533837 4.99397728 0.96875 3.03125,0 5 1 3,0.24533837 4.99397728 1.03125 2.96875,0.4900857 4.97592363 1.0625 2.9375,0.73365237 4.94588255 1.09375 2.90625,0.97545161 4.9039264 1.125 2.875,1.2149009 4.85015627 1.15625 2.84375,1.45142339 4.78470168 1.1875 2.8125,1.68444927 4.70772033 1.21875 2.78125,1.91341716 4.61939766 1.25 2.75,2.13777547 4.51994647 1.28125 2.71875,2.35698368 4.40960632 1.3125 2.6875,2.57051372 4.28864305 1.34375 2.65625,2.77785117 4.15734806 1.375 2.625,2.97849652 4.01603766 1.40625 2.59375,3.17196642 3.86505227 1.4375 2.5625,3.35779477 3.70475563 1.46875 2.53125,3.53553391 3.53553391 1.5 2.5,3.70475563 3.35779477 1.53125 2.46875,3.86505227 3.17196642 1.5625 2.4375,4.01603766 2.97849652 1.59375 2.40625,4.15734806 2.77785117 1.625 2.375,4.28864305 2.57051372 1.65625 2.34375,4.40960632 2.35698368 1.6875 2.3125,4.51994647 2.13777547 1.71875 2.28125,4.61939766 1.91341716 1.75 2.25,4.70772033 1.68444927 1.78125 2.21875,4.78470168 1.45142339 1.8125 2.1875,4.85015627 1.2149009 1.84375 2.15625,4.9039264 0.97545161 1.875 2.125,4.94588255 0.73365237 1.90625 2.09375,4.97592363 0.4900857 1.9375 2.0625,4.99397728 0.24533837 1.96875 2.03125,5 0 2 2,5.00602272 -0.24533837 2.03125 1.96875,5.02407637 -0.4900857 2.0625 1.9375,5.05411745 -0.73365237 2.09375 1.90625,5.0960736 -0.97545161 2.125 1.875,5.14984373 -1.2149009 2.15625 1.84375,5.21529832 -1.45142339 2.1875 1.8125,5.29227967 -1.68444927 2.21875 1.78125,5.38060234 -1.91341716 2.25 1.75,5.48005353 -2.13777547 2.28125 1.71875,5.59039368 -2.35698368 2.3125 1.6875,5.71135695 -2.57051372 2.34375 1.65625,5.84265194 -2.77785117 2.375 1.625,5.98396234 -2.97849652 2.40625 1.59375,6.13494773 -3.17196642 2.4375 1.5625,6.29524437 -3.35779477 2.46875 1.53125,6.46446609 -3.53553391 2.5 1.5,6.64220523 -3.70475563 2.53125 1.46875,6.82803358 -3.86505227 2.5625 1.4375,7.02150348 -4.01603766 2.59375 1.40625,7.22214883 -4.15734806 2.625 1.375,7.42948628 -4.28864305 2.65625 1.34375,7.64301632 -4.40960632 2.6875 1.3125,7.86222453 -4.51994647 2.71875 1.28125,8.08658284 -4.61939766 2.75 1.25,8.31555073 -4.70772033 2.78125 1.21875,8.54857661 -4.78470168 2.8125 1.1875,8.7850991 -4.85015627 2.84375 1.15625,9.02454839 -4.9039264 2.875 1.125,9.26634763 -4.94588255 2.90625 1.09375,9.5099143 -4.97592363 2.9375 1.0625,9.75466163 -4.99397728 2.96875 1.03125,10 -5 3 1,10.24533837 -4.99397728 3.03125 0.96875,10.4900857 -4.97592363 3.0625 0.9375,10.73365237 -4.94588255 3.09375 0.90625,10.97545161 -4.9039264 3.125 0.875,11.2149009 -4.85015627 3.15625 0.84375,11.45142339 -4.78470168 3.1875 0.8125,11.68444927 -4.70772033 3.21875 0.78125,11.91341716 -4.61939766 3.25 0.75,12.13777547 -4.51994647 3.28125 0.71875,12.35698368 -4.40960632 3.3125 0.6875,12.57051372 -4.28864305 3.34375 0.65625,12.77785117 -4.15734806 3.375 0.625,12.97849652 -4.01603766 3.40625 0.59375,13.17196642 -3.86505227 3.4375 0.5625,13.35779477 -3.70475563 3.46875 0.53125,13.53553391 -3.53553391 3.5 0.5,13.70475563 -3.35779477 3.53125 0.46875,13.86505227 -3.17196642 3.5625 0.4375,14.01603766 -2.97849652 3.59375 0.40625,14.15734806 -2.77785117 3.625 0.375,14.28864305 -2.57051372 3.65625 0.34375,14.40960632 -2.35698368 3.6875 0.3125,14.51994647 -2.13777547 3.71875 0.28125,14.61939766 -1.91341716 3.75 0.25,14.70772033 -1.68444927 3.78125 0.21875,14.78470168 -1.45142339 3.8125 0.1875,14.85015627 -1.2149009 3.84375 0.15625,14.9039264 -0.97545161 3.875 0.125,14.94588255 -0.73365237 3.90625 0.09375,14.97592363 -0.4900857 3.9375 0.0625,14.99397728 -0.24533837 3.96875 0.03125,15 0 4 0)
-astext01|CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905 1.4142135623731)
-astext01|CIRCULARSTRING(-5 0,0 5,5 0,10 -5,15 0)
-astext02|CIRCULARSTRING M (0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2)
-astext02|CIRCULARSTRING M (-5 0 4,0 5 3,5 0 2,10 -5 1,15 0 0)
-astext03|CIRCULARSTRING Z (0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1)
-astext03|CIRCULARSTRING Z (-5 0 0,0 5 1,5 0 2,10 -5 3,15 0 4)
-astext04|CIRCULARSTRING ZM (0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2)
-astext04|CIRCULARSTRING ZM (-5 0 0 4,0 5 1 3,5 0 2 2,10 -5 3 1,15 0 4 0)
-asewkt01|CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905 1.4142135623731)
-asewkt01|CIRCULARSTRING(-5 0,0 5,5 0,10 -5,15 0)
-asewkt02|CIRCULARSTRINGM(0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2)
-asewkt02|CIRCULARSTRINGM(-5 0 4,0 5 3,5 0 2,10 -5 1,15 0 0)
-asewkt03|CIRCULARSTRING(0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1)
-asewkt03|CIRCULARSTRING(-5 0 0,0 5 1,5 0 2,10 -5 3,15 0 4)
-asewkt04|CIRCULARSTRING(0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2)
-asewkt04|CIRCULARSTRING(-5 0 0 4,0 5 1 3,5 0 2 2,10 -5 3 1,15 0 4 0)
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+isValid01|t
+isValid01|t
+isValid02|t
+isValid02|t
+isValid03|t
+isValid03|t
+isValid04|t
+isValid04|t
 dimension01|1
 dimension01|1
 dimension02|1
@@ -88,10 +92,14 @@ SRID03|0
 SRID03|0
 SRID04|0
 SRID04|0
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+accessors01|f|t|f|f
+accessors01|f|t|f|f
+accessors02|f|t|f|f
+accessors02|f|t|f|f
+accessors03|f|t|f|f
+accessors03|f|t|f|f
+accessors04|f|t|f|f
+accessors04|f|t|f|f
 envelope01|POLYGON((0 0,0 1.41421356,0.58578644 1.41421356,0.58578644 0,0 0))
 envelope01|POLYGON((-5 -5,-5 5,15 5,15 -5,-5 -5))
 envelope02|POLYGON((0 0,0 1.41421356,0.58578644 1.41421356,0.58578644 0,0 0))
@@ -100,10 +108,6 @@ envelope03|POLYGON((0 0,0 1.41421356,0.58578644 1.41421356,0.58578644 0,0 0))
 envelope03|POLYGON((-5 -5,-5 5,15 5,15 -5,-5 -5))
 envelope04|POLYGON((0 0,0 1.41421356,0.58578644 1.41421356,0.58578644 0,0 0))
 envelope04|POLYGON((-5 -5,-5 5,15 5,15 -5,-5 -5))
-public.circularstring.the_geom_4d effectively removed.
-public.circularstring.the_geom_3dz effectively removed.
-public.circularstring.the_geom_3dm effectively removed.
-public.circularstring.the_geom_2d effectively removed.
 POLYGON((220187.3821 150406.4347,220187.3821 150506.7171,220288.8159 150506.7171,220288.8159 150406.4347,220187.3821 150406.4347))
 npoints_is_five|5
 straight_curve|LINESTRING(0 0,1 0,2 0,3 0,4 0)
index feed3b47db85c264f39dbead55454f9f88d86abe..7da40df202d360e9d972fb67bd37e749cc6fb473 100644 (file)
@@ -169,17 +169,15 @@ SELECT 'asewkt02', ST_Asewkt(the_geom_3dm) FROM public.compoundcurve;
 SELECT 'asewkt03', ST_Asewkt(the_geom_3dz) FROM public.compoundcurve;
 SELECT 'asewkt04', ST_Asewkt(the_geom_4d) FROM public.compoundcurve;
 
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(asbinary(the_geom_2d), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary02', encode(asbinary(the_geom_3dm), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary03', encode(asbinary(the_geom_3dz), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary04', encode(asbinary(the_geom_4d), 'hex') FROM public.compoundcurve;
---
---SELECT 'asewkb01', encode(asewkb(the_geom_2d), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb02', encode(asewkb(the_geom_3dm), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb03', encode(asewkb(the_geom_3dz), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb04', encode(asewkb(the_geom_4d), 'hex') FROM public.compoundcurve;
+SELECT 'asbinary01', encode(ST_AsBinary(the_geom_2d, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asbinary02', encode(ST_AsBinary(the_geom_3dm, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asbinary03', encode(ST_AsBinary(the_geom_3dz, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asbinary04', encode(ST_AsBinary(the_geom_4d, 'ndr'), 'hex') FROM public.compoundcurve;
+
+SELECT 'asewkb01', encode(ST_AsEWKB(the_geom_2d, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asewkb02', encode(ST_AsEWKB(the_geom_3dm, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asewkb03', encode(ST_AsEWKB(the_geom_3dz, 'ndr'), 'hex') FROM public.compoundcurve;
+SELECT 'asewkb04', encode(ST_AsEWKB(the_geom_4d, 'ndr'), 'hex') FROM public.compoundcurve;
 
 SELECT 'ST_CurveToLine-201', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 SELECT 'ST_CurveToLine-202', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
@@ -196,86 +194,10 @@ SELECT 'ST_CurveToLine02', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm),
 SELECT 'ST_CurveToLine03', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 SELECT 'ST_CurveToLine04', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 
--- Removed due to discrepencies between hardware
---SELECT 'box2d01', box2d(the_geom_2d) FROM public.compoundcurve;
---SELECT 'box2d02', box2d(the_geom_3dm) FROM public.compoundcurve;
---SELECT 'box2d03', box2d(the_geom_3dz) FROM public.compoundcurve;
---SELECT 'box2d04', box2d(the_geom_4d) FROM public.compoundcurve;
-
---SELECT 'box3d01', box3d(the_geom_2d) FROM public.compoundcurve;
---SELECT 'box3d02', box3d(the_geom_3dm) FROM public.compoundcurve;
---SELECT 'box3d03', box3d(the_geom_3dz) FROM public.compoundcurve;
---SELECT 'box3d04', box3d(the_geom_4d) FROM public.compoundcurve;
-
--- SELECT 'isValid01', isValid(the_geom_2d) FROM public.compoundcurve;
--- SELECT 'isValid02', isValid(the_geom_3dm) FROM public.compoundcurve;
--- SELECT 'isValid03', isValid(the_geom_3dz) FROM public.compoundcurve;
--- SELECT 'isValid04', isValid(the_geom_4d) FROM public.compoundcurve;
-
--- SELECT 'dimension01', dimension(the_geom_2d) FROM public.compoundcurve;
--- SELECT 'dimension02', dimension(the_geom_3dm) FROM public.compoundcurve;
--- SELECT 'dimension03', dimension(the_geom_3dz) FROM public.compoundcurve;
--- SELECT 'dimension04', dimension(the_geom_4d) FROM public.compoundcurve;
-
--- SELECT 'SRID01', ST_SRID(the_geom_2d) FROM public.compoundcurve;
--- SELECT 'SRID02', ST_SRID(the_geom_3dm) FROM public.compoundcurve;
--- SELECT 'SRID03', ST_SRID(the_geom_3dz) FROM public.compoundcurve;
--- SELECT 'SRID04', ST_SRID(the_geom_4d) FROM public.compoundcurve;
-
--- SELECT 'accessor01', isEmpty(the_geom_2d), isSimple(the_geom_2d), isClosed(the_geom_2d), isRing(the_geom_2d) FROM public.compoundcurve;
--- SELECT 'accessor02', isEmpty(the_geom_3dm), isSimple(the_geom_3dm), isClosed(the_geom_3dm), isRing(the_geom_3dm) FROM public.compoundcurve;
--- SELECT 'accessor03', isEmpty(the_geom_3dz), isSimple(the_geom_3dz), isClosed(the_geom_3dz), isRing(the_geom_3dz) FROM public.compoundcurve;
--- SELECT 'accessor04', isEmpty(the_geom_4d), isSimple(the_geom_4d), isClosed(the_geom_4d), isRing(the_geom_4d) FROM public.compoundcurve;
-
--- SELECT 'envelope01', ST_AsText(ST_SnapToGrid(envelope(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
--- SELECT 'envelope02', ST_AsText(ST_SnapToGrid(envelope(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
--- SELECT 'envelope03', ST_AsText(ST_SnapToGrid(envelope(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
--- SELECT 'envelope04', ST_AsText(ST_SnapToGrid(envelope(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
-
--- TODO: ST_SnapToGrid is required to remove platform dependent precision
--- issues.  Until ST_SnapToGrid is updated to work against curves, these
--- tests cannot be run.
---SELECT 'ST_LineToCurve', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.compoundcurve;
---SELECT 'ST_LineToCurve', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.compoundcurve;
---SELECT 'ST_LineToCurve', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.compoundcurve;
---SELECT 'ST_LineToCurve', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.compoundcurve;
-
--- Repeat tests on new function names.
-SELECT 'astext01', ST_astext(the_geom_2d) FROM public.compoundcurve;
-SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.compoundcurve;
-SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.compoundcurve;
-SELECT 'astext04', ST_astext(the_geom_4d) FROM public.compoundcurve;
-
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.compoundcurve;
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.compoundcurve;
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.compoundcurve;
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.compoundcurve;
-
---SELECT 'asbinary01', encode(ST_asbinary(the_geom_2d), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary02', encode(ST_asbinary(the_geom_3dm), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary03', encode(ST_asbinary(the_geom_3dz), 'hex') FROM public.compoundcurve;
---SELECT 'asbinary04', encode(ST_asbinary(the_geom_4d), 'hex') FROM public.compoundcurve;
---
---SELECT 'asewkb01', encode(ST_asewkb(the_geom_2d), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb02', encode(ST_asewkb(the_geom_3dm), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb03', encode(ST_asewkb(the_geom_3dz), 'hex') FROM public.compoundcurve;
---SELECT 'asewkb04', encode(ST_asewkb(the_geom_4d), 'hex') FROM public.compoundcurve;
-
--- Removed due to discrepencies between hardware
---SELECT 'box2d01', ST_box2d(the_geom_2d) FROM public.compoundcurve;
---SELECT 'box2d02', ST_box2d(the_geom_3dm) FROM public.compoundcurve;
---SELECT 'box2d03', ST_box2d(the_geom_3dz) FROM public.compoundcurve;
---SELECT 'box2d04', ST_box2d(the_geom_4d) FROM public.compoundcurve;
-
---SELECT 'box3d01', ST_box3d(the_geom_2d) FROM public.compoundcurve;
---SELECT 'box3d02', ST_box3d(the_geom_3dm) FROM public.compoundcurve;
---SELECT 'box3d03', ST_box3d(the_geom_3dz) FROM public.compoundcurve;
---SELECT 'box3d04', ST_box3d(the_geom_4d) FROM public.compoundcurve;
-
-SELECT 'isValid01', ST_isValid(the_geom_2d) FROM public.compoundcurve;
-SELECT 'isValid02', ST_isValid(the_geom_3dm) FROM public.compoundcurve;
-SELECT 'isValid03', ST_isValid(the_geom_3dz) FROM public.compoundcurve;
-SELECT 'isValid04', ST_isValid(the_geom_4d) FROM public.compoundcurve;
+SELECT 'isValid01', ST_IsValid(the_geom_2d) FROM public.compoundcurve;
+SELECT 'isValid02', ST_IsValid(the_geom_3dm) FROM public.compoundcurve;
+SELECT 'isValid03', ST_IsValid(the_geom_3dz) FROM public.compoundcurve;
+SELECT 'isValid04', ST_IsValid(the_geom_4d) FROM public.compoundcurve;
 
 SELECT 'dimension01', ST_dimension(the_geom_2d) FROM public.compoundcurve;
 SELECT 'dimension02', ST_dimension(the_geom_3dm) FROM public.compoundcurve;
@@ -287,20 +209,16 @@ SELECT 'SRID02', ST_SRID(the_geom_3dm) FROM public.compoundcurve;
 SELECT 'SRID03', ST_SRID(the_geom_3dz) FROM public.compoundcurve;
 SELECT 'SRID04', ST_SRID(the_geom_4d) FROM public.compoundcurve;
 
-SELECT 'accessor01', ST_isEmpty(the_geom_2d), ST_isSimple(the_geom_2d), ST_isClosed(the_geom_2d), ST_isRing(the_geom_2d) FROM public.compoundcurve;
-SELECT 'accessor02', ST_isEmpty(the_geom_3dm), ST_isSimple(the_geom_3dm), ST_isClosed(the_geom_3dm), ST_isRing(the_geom_3dm) FROM public.compoundcurve;
-SELECT 'accessor03', ST_isEmpty(the_geom_3dz), ST_isSimple(the_geom_3dz), ST_isClosed(the_geom_3dz), ST_isRing(the_geom_3dz) FROM public.compoundcurve;
-SELECT 'accessor04', ST_isEmpty(the_geom_4d), ST_isSimple(the_geom_4d), ST_isClosed(the_geom_4d), ST_isRing(the_geom_4d) FROM public.compoundcurve;
+SELECT 'accessor01', ST_IsEmpty(the_geom_2d), ST_IsSimple(the_geom_2d), ST_IsClosed(the_geom_2d), ST_IsRing(the_geom_2d) FROM public.compoundcurve;
+SELECT 'accessor02', ST_IsEmpty(the_geom_3dm), ST_IsSimple(the_geom_3dm), ST_IsClosed(the_geom_3dm), ST_IsRing(the_geom_3dm) FROM public.compoundcurve;
+SELECT 'accessor03', ST_IsEmpty(the_geom_3dz), ST_IsSimple(the_geom_3dz), ST_IsClosed(the_geom_3dz), ST_IsRing(the_geom_3dz) FROM public.compoundcurve;
+SELECT 'accessor04', ST_IsEmpty(the_geom_4d), ST_IsSimple(the_geom_4d), ST_IsClosed(the_geom_4d), ST_IsRing(the_geom_4d) FROM public.compoundcurve;
 
 SELECT 'envelope01', ST_asText(ST_snapToGrid(ST_envelope(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 SELECT 'envelope02', ST_asText(ST_snapToGrid(ST_envelope(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 SELECT 'envelope03', ST_asText(ST_snapToGrid(ST_envelope(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 SELECT 'envelope04', ST_asText(ST_snapToGrid(ST_envelope(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.compoundcurve;
 
-SELECT DropGeometryColumn('public', 'compoundcurve', 'the_geom_4d');
-SELECT DropGeometryColumn('public', 'compoundcurve', 'the_geom_3dz');
-SELECT DropGeometryColumn('public', 'compoundcurve', 'the_geom_3dm');
-SELECT DropGeometryColumn('public', 'compoundcurve', 'the_geom_2d');
 DROP TABLE public.compoundcurve;
 
 SELECT 'valid wkt compound curve 1', encode(ST_AsBinary(ST_GeomFromEWKT('COMPOUNDCURVE((153.72942375 -27.21757040, 152.29285719 -29.23940482, 154.74034096 -30.51635287),(154.74034096 -30.51635287, 152.39926953 -32.16574411, 155.11278414 -34.08116619, 151.86720784 -35.62414508))'),'ndr'),'hex');
index 07e3d09d3bd23b82a22578130ba0121f543757a1..f7bfc39aef43c59fe3a739c71967e518a61c81aa 100644 (file)
@@ -22,6 +22,14 @@ asewkt01|COMPOUNDCURVE(CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905
 asewkt02|COMPOUNDCURVEM(CIRCULARSTRINGM(0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2),(0.585786437626905 1.4142135623731 2,2 0 0,0 0 0))
 asewkt03|COMPOUNDCURVE(CIRCULARSTRING(0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1),(0.585786437626905 1.4142135623731 1,2 0 0,0 0 0))
 asewkt04|COMPOUNDCURVE(CIRCULARSTRING(0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2),(0.585786437626905 1.4142135623731 1 2,2 0 0 0,0 0 0 0))
+asbinary01|0109000000020000000108000000030000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f67880133c3bee23fcd3b7f669ea0f63f01020000000300000067880133c3bee23fcd3b7f669ea0f63f0000000000000040000000000000000000000000000000000000000000000000
+asbinary02|01d90700000200000001d80700000300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f00000000000000c067880133c3bee23fcd3b7f669ea0f63f000000000000004001d20700000300000067880133c3bee23fcd3b7f669ea0f63f0000000000000040000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000
+asbinary03|01f10300000200000001f00300000300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084067880133c3bee23fcd3b7f669ea0f63f000000000000f03f01ea0300000300000067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000
+asbinary04|01c10b00000200000001c00b000003000000000000000000000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084000000000000000c067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004001ba0b00000300000067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+asewkb01|0109000000020000000108000000030000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f67880133c3bee23fcd3b7f669ea0f63f01020000000300000067880133c3bee23fcd3b7f669ea0f63f0000000000000040000000000000000000000000000000000000000000000000
+asewkb02|01090000400200000001080000400300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f00000000000000c067880133c3bee23fcd3b7f669ea0f63f000000000000004001020000400300000067880133c3bee23fcd3b7f669ea0f63f0000000000000040000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000
+asewkb03|01090000800200000001080000800300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084067880133c3bee23fcd3b7f669ea0f63f000000000000f03f01020000800300000067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000
+asewkb04|01090000c00200000001080000c003000000000000000000000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084000000000000000c067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004001020000c00300000067880133c3bee23fcd3b7f669ea0f63f000000000000f03f000000000000004000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 ST_CurveToLine-201|LINESTRING(0 0,0.58578644 1.41421356,2 0,0 0)
 ST_CurveToLine-202|LINESTRINGM(0 0 0,0.58578644 1.41421356 2,2 0 0,0 0 0)
 ST_CurveToLine-203|LINESTRING(0 0 0,0.58578644 1.41421356 1,2 0 0,0 0 0)
@@ -34,18 +42,10 @@ ST_CurveToLine01|LINESTRING(0 0,0.00240909 0.09813535,0.00963055 0.19603428,0.02
 ST_CurveToLine02|LINESTRINGM(0 0 0,0.00240909 0.09813535 -0.1875,0.00963055 0.19603428 -0.375,0.02164698 0.29346095 -0.5625,0.03842944 0.39018064 -0.75,0.05993749 0.48596036 -0.9375,0.08611933 0.58056935 -1.125,0.11691187 0.67377971 -1.3125,0.15224093 0.76536686 -1.5,0.19202141 0.85511019 -1.6875,0.23615747 0.94279347 -1.875,0.28454278 1.02820549 -1.75,0.33706078 1.11114047 -1,0.39358494 1.19139861 -0.25,0.45397909 1.26878657 0.5,0.51809775 1.34311791 1.25,0.58578644 1.41421356 2,2 0 0,0 0 0)
 ST_CurveToLine03|LINESTRING(0 0 0,0.00240909 0.09813535 0.28125,0.00963055 0.19603428 0.5625,0.02164698 0.29346095 0.84375,0.03842944 0.39018064 1.125,0.05993749 0.48596036 1.40625,0.08611933 0.58056935 1.6875,0.11691187 0.67377971 1.96875,0.15224093 0.76536686 2.25,0.19202141 0.85511019 2.53125,0.23615747 0.94279347 2.8125,0.28454278 1.02820549 2.875,0.33706078 1.11114047 2.5,0.39358494 1.19139861 2.125,0.45397909 1.26878657 1.75,0.51809775 1.34311791 1.375,0.58578644 1.41421356 1,2 0 0,0 0 0)
 ST_CurveToLine04|LINESTRING(0 0 0 0,0.00240909 0.09813535 0.28125 -0.1875,0.00963055 0.19603428 0.5625 -0.375,0.02164698 0.29346095 0.84375 -0.5625,0.03842944 0.39018064 1.125 -0.75,0.05993749 0.48596036 1.40625 -0.9375,0.08611933 0.58056935 1.6875 -1.125,0.11691187 0.67377971 1.96875 -1.3125,0.15224093 0.76536686 2.25 -1.5,0.19202141 0.85511019 2.53125 -1.6875,0.23615747 0.94279347 2.8125 -1.875,0.28454278 1.02820549 2.875 -1.75,0.33706078 1.11114047 2.5 -1,0.39358494 1.19139861 2.125 -0.25,0.45397909 1.26878657 1.75 0.5,0.51809775 1.34311791 1.375 1.25,0.58578644 1.41421356 1 2,2 0 0 0,0 0 0 0)
-astext01|COMPOUNDCURVE(CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905 1.4142135623731),(0.585786437626905 1.4142135623731,2 0,0 0))
-astext02|COMPOUNDCURVE M (CIRCULARSTRING M (0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2),(0.585786437626905 1.4142135623731 2,2 0 0,0 0 0))
-astext03|COMPOUNDCURVE Z (CIRCULARSTRING Z (0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1),(0.585786437626905 1.4142135623731 1,2 0 0,0 0 0))
-astext04|COMPOUNDCURVE ZM (CIRCULARSTRING ZM (0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2),(0.585786437626905 1.4142135623731 1 2,2 0 0 0,0 0 0 0))
-asewkt01|COMPOUNDCURVE(CIRCULARSTRING(0 0,0.267949192431123 1,0.585786437626905 1.4142135623731),(0.585786437626905 1.4142135623731,2 0,0 0))
-asewkt02|COMPOUNDCURVEM(CIRCULARSTRINGM(0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2),(0.585786437626905 1.4142135623731 2,2 0 0,0 0 0))
-asewkt03|COMPOUNDCURVE(CIRCULARSTRING(0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1),(0.585786437626905 1.4142135623731 1,2 0 0,0 0 0))
-asewkt04|COMPOUNDCURVE(CIRCULARSTRING(0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2),(0.585786437626905 1.4142135623731 1 2,2 0 0 0,0 0 0 0))
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+isValid01|t
+isValid02|t
+isValid03|t
+isValid04|t
 dimension01|1
 dimension02|1
 dimension03|1
@@ -54,18 +54,14 @@ SRID01|0
 SRID02|0
 SRID03|0
 SRID04|0
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+accessor01|f|t|t|t
+accessor02|f|t|t|t
+accessor03|f|t|t|t
+accessor04|f|t|t|t
 envelope01|POLYGON((0 0,0 1.41421356,2 1.41421356,2 0,0 0))
 envelope02|POLYGON((0 0,0 1.41421356,2 1.41421356,2 0,0 0))
 envelope03|POLYGON((0 0,0 1.41421356,2 1.41421356,2 0,0 0))
 envelope04|POLYGON((0 0,0 1.41421356,2 1.41421356,2 0,0 0))
-public.compoundcurve.the_geom_4d effectively removed.
-public.compoundcurve.the_geom_3dz effectively removed.
-public.compoundcurve.the_geom_3dm effectively removed.
-public.compoundcurve.the_geom_2d effectively removed.
 valid wkt compound curve 1|0109000000020000000102000000030000009fe5797057376340e09398b1b2373bc05aae0a165f0963409f6760a2493d3dc0db6286dfb057634082d8a1b32f843ec0010200000004000000db6286dfb057634082d8a1b32f843ec075b4e4d0c60c634031fa5d1a371540c0d7197ced9b636340a3cb59a7630a41c050f4a72ac0fb6240974769fce3cf41c0
 valid wkt compound curve 2|0109000000010000000102000000060000009fe5797057376340e09398b1b2373bc05aae0a165f0963409f6760a2493d3dc0db6286dfb057634082d8a1b32f843ec075b4e4d0c60c634031fa5d1a371540c0d7197ced9b636340a3cb59a7630a41c050f4a72ac0fb6240974769fce3cf41c0
 valid wkt compound curve 3|0109000000010000000102000000030000000ce586d73cf36240bbc46888f0523bc0102e91c951e76240df90a1bec0f841c0f970c100ffd7624074ade6ce86cd3bc0
index a45b88209291b6116fa1ce75228eb3d506fce54f..0f18c00436bfa876dff11a3d8fb721d7aa9dd90f 100644 (file)
@@ -181,90 +181,54 @@ UPDATE public.curvepolygon
                 0 1,
                 -1 0))');
 
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(asbinary(the_geom_2d), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary02', encode(asbinary(the_geom_3dm), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary03', encode(asbinary(the_geom_3dz), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary04', encode(asbinary(the_geom_4d), 'hex') FROM public.curvepolygon;
---
---SELECT 'asewkb01', encode(asewkb(the_geom_2d), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb02', encode(asewkb(the_geom_3dm), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb03', encode(asewkb(the_geom_3dz), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb04', encode(asewkb(the_geom_4d), 'hex') FROM public.curvepolygon;
+SELECT 'asbinary01', encode(ST_AsBinary(the_geom_2d, 'ndr'), 'hex') FROM public.curvepolygon;
+SELECT 'asbinary02', encode(ST_AsBinary(the_geom_3dm, 'xdr'), 'hex') FROM public.curvepolygon;
+SELECT 'asbinary03', encode(ST_AsBinary(the_geom_3dz, 'ndr'), 'hex') FROM public.curvepolygon;
+SELECT 'asbinary04', encode(ST_AsBinary(the_geom_4d, 'xdr'), 'hex') FROM public.curvepolygon;
 
-SELECT 'ST_CurveToLine-201',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-202',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-203',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-204',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'asewkb01', encode(ST_AsEWKB(the_geom_2d, 'xdr'), 'hex') FROM public.curvepolygon;
+SELECT 'asewkb02', encode(ST_AsEWKB(the_geom_3dm, 'ndr'), 'hex') FROM public.curvepolygon;
+SELECT 'asewkb03', encode(ST_AsEWKB(the_geom_3dz, 'xdr'), 'hex') FROM public.curvepolygon;
+SELECT 'asewkb04', encode(ST_AsEWKB(the_geom_4d, 'ndr'), 'hex') FROM public.curvepolygon;
 
-SELECT 'ST_CurveToLine-401',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-402',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-403',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine-404',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-201',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-202',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-203',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-204',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
 
-SELECT 'ST_CurveToLine01',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine02',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine03',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'ST_CurveToLine04',ST_asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-401',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-402',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-403',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine-404',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
 
--- Removed due to descrepencies between hardware
---SELECT 'box2d01', box2d(the_geom_2d) FROM public.curvepolygon;
---SELECT 'box2d02', box2d(the_geom_3dm) FROM public.curvepolygon;
---SELECT 'box2d03', box2d(the_geom_3dz) FROM public.curvepolygon;
---SELECT 'box2d04', box2d(the_geom_4d) FROM public.curvepolygon;
-
---SELECT 'box3d01', box3d(the_geom_2d) FROM public.curvepolygon;
---SELECT 'box3d02', box3d(the_geom_3dm) FROM public.curvepolygon;
---SELECT 'box3d03', box3d(the_geom_3dz) FROM public.curvepolygon;
---SELECT 'box3d04', box3d(the_geom_4d) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine01',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine02',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine03',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'ST_CurveToLine04',ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
 
 -- TODO: ST_SnapToGrid is required to remove platform dependent precision
 -- issues.  Until ST_SnapToGrid is updated to work against curves, these
 -- tests cannot be run.
---SELECT 'ST_LineToCurve01',ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.curvepolygon;
---SELECT 'ST_LineToCurve02',ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.curvepolygon;
---SELECT 'ST_LineToCurve03',ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.curvepolygon;
---SELECT 'ST_LineToCurve04',ST_asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.curvepolygon;
+--SELECT 'ST_LineToCurve01',ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.curvepolygon;
+--SELECT 'ST_LineToCurve02',ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.curvepolygon;
+--SELECT 'ST_LineToCurve03',ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.curvepolygon;
+--SELECT 'ST_LineToCurve04',ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.curvepolygon;
 
 -- Repeat tests with new function names.
-SELECT 'astext01', ST_astext(the_geom_2d) FROM public.curvepolygon;
-SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.curvepolygon;
-SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.curvepolygon;
-SELECT 'astext04', ST_astext(the_geom_4d) FROM public.curvepolygon;
-
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.curvepolygon;
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.curvepolygon;
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.curvepolygon;
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.curvepolygon;
-
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(ST_asbinary(the_geom_2d), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary02', encode(ST_asbinary(the_geom_3dm), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary03', encode(ST_asbinary(the_geom_3dz), 'hex') FROM public.curvepolygon;
---SELECT 'asbinary04', encode(ST_asbinary(the_geom_4d), 'hex') FROM public.curvepolygon;
---
---SELECT 'asewkb01', encode(ST_asewkb(the_geom_2d), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb02', encode(ST_asewkb(the_geom_3dm), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb03', encode(ST_asewkb(the_geom_3dz), 'hex') FROM public.curvepolygon;
---SELECT 'asewkb04', encode(ST_asewkb(the_geom_4d), 'hex') FROM public.curvepolygon;
-
--- Removed due to descrepencies between hardware
---SELECT 'box2d01', ST_box2d(the_geom_2d) FROM public.curvepolygon;
---SELECT 'box2d02', ST_box2d(the_geom_3dm) FROM public.curvepolygon;
---SELECT 'box2d03', ST_box2d(the_geom_3dz) FROM public.curvepolygon;
---SELECT 'box2d04', ST_box2d(the_geom_4d) FROM public.curvepolygon;
+SELECT 'astext01', ST_AsText(the_geom_2d) FROM public.curvepolygon;
+SELECT 'astext02', ST_AsText(the_geom_3dm) FROM public.curvepolygon;
+SELECT 'astext03', ST_AsText(the_geom_3dz) FROM public.curvepolygon;
+SELECT 'astext04', ST_AsText(the_geom_4d) FROM public.curvepolygon;
 
---SELECT 'box3d01', ST_box3d(the_geom_2d) FROM public.curvepolygon;
---SELECT 'box3d02', ST_box3d(the_geom_3dm) FROM public.curvepolygon;
---SELECT 'box3d03', ST_box3d(the_geom_3dz) FROM public.curvepolygon;
---SELECT 'box3d04', ST_box3d(the_geom_4d) FROM public.curvepolygon;
+SELECT 'asewkt01', ST_AsEWKT(the_geom_2d) FROM public.curvepolygon;
+SELECT 'asewkt02', ST_AsEWKT(the_geom_3dm) FROM public.curvepolygon;
+SELECT 'asewkt03', ST_AsEWKT(the_geom_3dz) FROM public.curvepolygon;
+SELECT 'asewkt04', ST_AsEWKT(the_geom_4d) FROM public.curvepolygon;
 
-SELECT 'isValid01', ST_isValid(the_geom_2d) FROM public.curvepolygon;
-SELECT 'isValid02', ST_isValid(the_geom_3dm) FROM public.curvepolygon;
-SELECT 'isValid03', ST_isValid(the_geom_3dz) FROM public.curvepolygon;
-SELECT 'isValid04', ST_isValid(the_geom_4d) FROM public.curvepolygon;
+SELECT 'isValid01', ST_IsValid(the_geom_2d) FROM public.curvepolygon;
+SELECT 'isValid02', ST_IsValid(the_geom_3dm) FROM public.curvepolygon;
+SELECT 'isValid03', ST_IsValid(the_geom_3dz) FROM public.curvepolygon;
+SELECT 'isValid04', ST_IsValid(the_geom_4d) FROM public.curvepolygon;
 
 SELECT 'dimension01', ST_dimension(the_geom_2d) FROM public.curvepolygon;
 SELECT 'dimension02', ST_dimension(the_geom_3dm) FROM public.curvepolygon;
@@ -276,10 +240,10 @@ SELECT 'SRID02', ST_SRID(the_geom_3dm) FROM public.curvepolygon;
 SELECT 'SRID03', ST_SRID(the_geom_3dz) FROM public.curvepolygon;
 SELECT 'SRID04', ST_SRID(the_geom_4d) FROM public.curvepolygon;
 
-SELECT 'envelope01', ST_asText(ST_snapToGrid(ST_envelope(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'envelope02', ST_asText(ST_snapToGrid(ST_envelope(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'envelope03', ST_asText(ST_snapToGrid(ST_envelope(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
-SELECT 'envelope04', ST_asText(ST_snapToGrid(ST_envelope(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'envelope01', ST_AsText(ST_snapToGrid(ST_envelope(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'envelope02', ST_AsText(ST_snapToGrid(ST_envelope(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'envelope03', ST_AsText(ST_snapToGrid(ST_envelope(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
+SELECT 'envelope04', ST_AsText(ST_snapToGrid(ST_envelope(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.curvepolygon;
 
 SELECT 'startPoint01', (ST_startPoint(the_geom_2d) is null) FROM public.curvepolygon;
 SELECT 'startPoint02', (ST_startPoint(the_geom_3dm) is null) FROM public.curvepolygon;
@@ -291,30 +255,26 @@ SELECT 'endPoint02', (ST_endPoint(the_geom_3dm) is null) FROM public.curvepolygo
 SELECT 'endPoint03', (ST_endPoint(the_geom_3dz) is null) FROM public.curvepolygon;
 SELECT 'endPoint04', (ST_endPoint(the_geom_4d) is null) FROM public.curvepolygon;
 
-SELECT 'exteriorRing01', ST_asEWKT(ST_exteriorRing(the_geom_2d)) FROM public.curvepolygon;
-SELECT 'exteriorRing02', ST_asEWKT(ST_exteriorRing(the_geom_3dm)) FROM public.curvepolygon;
-SELECT 'exteriorRing03', ST_asEWKT(ST_exteriorRing(the_geom_3dz)) FROM public.curvepolygon;
-SELECT 'exteriorRing04', ST_asEWKT(ST_exteriorRing(the_geom_4d)) FROM public.curvepolygon;
+SELECT 'exteriorRing01', ST_AsEWKT(ST_exteriorRing(the_geom_2d)) FROM public.curvepolygon;
+SELECT 'exteriorRing02', ST_AsEWKT(ST_exteriorRing(the_geom_3dm)) FROM public.curvepolygon;
+SELECT 'exteriorRing03', ST_AsEWKT(ST_exteriorRing(the_geom_3dz)) FROM public.curvepolygon;
+SELECT 'exteriorRing04', ST_AsEWKT(ST_exteriorRing(the_geom_4d)) FROM public.curvepolygon;
 
 SELECT 'numInteriorRings01', ST_numInteriorRings(the_geom_2d) FROM public.curvepolygon;
 SELECT 'numInteriorRings02', ST_numInteriorRings(the_geom_3dm) FROM public.curvepolygon;
 SELECT 'numInteriorRings03', ST_numInteriorRings(the_geom_3dz) FROM public.curvepolygon;
 SELECT 'numInteriorRings04', ST_numInteriorRings(the_geom_4d) FROM public.curvepolygon;
 
-SELECT 'interiorRingN-101', ST_asEWKT(ST_interiorRingN(the_geom_2d, 1)) FROM public.curvepolygon;
-SELECT 'interiorRingN-102', ST_asEWKT(ST_interiorRingN(the_geom_3dm, 1)) FROM public.curvepolygon;
-SELECT 'interiorRingN-103', ST_asEWKT(ST_interiorRingN(the_geom_3dz, 1)) FROM public.curvepolygon;
-SELECT 'interiorRingN-104', ST_asEWKT(ST_interiorRingN(the_geom_4d, 1)) FROM public.curvepolygon;
+SELECT 'interiorRingN-101', ST_AsEWKT(ST_InteriorRingN(the_geom_2d, 1)) FROM public.curvepolygon;
+SELECT 'interiorRingN-102', ST_AsEWKT(ST_InteriorRingN(the_geom_3dm, 1)) FROM public.curvepolygon;
+SELECT 'interiorRingN-103', ST_AsEWKT(ST_InteriorRingN(the_geom_3dz, 1)) FROM public.curvepolygon;
+SELECT 'interiorRingN-104', ST_AsEWKT(ST_InteriorRingN(the_geom_4d, 1)) FROM public.curvepolygon;
 
-SELECT 'interiorRingN-201', ST_asEWKT(ST_interiorRingN(the_geom_2d, 2)) FROM public.curvepolygon;
-SELECT 'interiorRingN-202', ST_asEWKT(ST_interiorRingN(the_geom_3dm, 2)) FROM public.curvepolygon;
-SELECT 'interiorRingN-203', ST_asEWKT(ST_interiorRingN(the_geom_3dz, 2)) FROM public.curvepolygon;
-SELECT 'interiorRingN-204', ST_asEWKT(ST_interiorRingN(the_geom_4d, 2)) FROM public.curvepolygon;
+SELECT 'interiorRingN-201', ST_AsEWKT(ST_InteriorRingN(the_geom_2d, 2)) FROM public.curvepolygon;
+SELECT 'interiorRingN-202', ST_AsEWKT(ST_InteriorRingN(the_geom_3dm, 2)) FROM public.curvepolygon;
+SELECT 'interiorRingN-203', ST_AsEWKT(ST_InteriorRingN(the_geom_3dz, 2)) FROM public.curvepolygon;
+SELECT 'interiorRingN-204', ST_AsEWKT(ST_InteriorRingN(the_geom_4d, 2)) FROM public.curvepolygon;
 
-SELECT DropGeometryColumn('public', 'curvepolygon', 'the_geom_2d');
-SELECT DropGeometryColumn('public', 'curvepolygon', 'the_geom_3dm');
-SELECT DropGeometryColumn('public', 'curvepolygon', 'the_geom_3dz');
-SELECT DropGeometryColumn('public', 'curvepolygon', 'the_geom_4d');
 DROP TABLE public.curvepolygon;
 
 SELECT 'valid wkt curve polygon 1', encode(ST_AsBinary(ST_GeomFromEWKT('CURVEPOLYGON((143.62025166838282 -30.037497356076827, 142.92857147299705 -32.75101196874403, 145.96132309891922 -34.985671061528784, 149.57565307617188 -33.41153335571289, 149.41972407584802 -29.824672680573517, 146.1209416055467 -30.19711586270431, 143.62025166838282 -30.037497356076827))'),'ndr'),'hex');
@@ -331,11 +291,11 @@ SELECT 'invalid wkt curve polygon 8', ST_GeomFromEWKT('CURVEPOLYGON(CIRCULARSTRI
 SELECT 'invalid wkt curve polygon 9', ST_GeomFromEWKT('CURVEPOLYGON((143.62025166838282 -30.037497356076827, 142.92857147299705 -32.75101196874403, 145.96132309891922 -34.985671061528784, 149.57565307617188 -33.41153335571289, 149.41972407584802 -29.824672680573517, 146.1209416055467 -30.19711586270431, 143.62025166838282 -30.037497356076827),COMPOUNDCURVE(CIRCULARSTRING(144.84399355252685 -31.26123924022086, 144.20551952601693 -32.27215644886158, 145.55230712890625 -33.49203872680664),CIRCULARSTRING(147.97080993652344 -32.03618621826172, 146.38697244992585 -31.47406391572417, 144.84399355252685 -31.26123924022086))');
 SELECT 'invalid wkt curve polygon a', ST_GeomFromEWKT('CURVEPOLYGON((143.62025166838282 -30.037497356076827, 142.92857147299705 -32.75101196874403, 145.96132309891922 -34.985671061528784, 149.57565307617188 -33.41153335571289, 149.41972407584802 -29.824672680573517, 146.1209416055467 -30.19711586270431, 143.62025166838282 -30.037497356076827),COMPOUNDCURVE(CIRCULARSTRING(144.84399355252685 -31.26123924022086, 144.20551952601693 -32.27215644886158, 145.55230712890625 -33.49203872680664),(145.55230712890625 -33.49203872680664, 147.97080993652344 -32.03618621826172),CIRCULARSTRING(147.97080993652344 -32.03618621826172, 146.38697244992585 -31.47406391572417, 144.84399355252685 -30.76123924022086))');
 SELECT 'invalid wkt curve polygon b', ST_GeomFromEWKT('CURVEPOLYGON((143.62025166838282 -30.037497356076827, 142.92857147299705 -32.75101196874403, 145.96132309891922 -34.985671061528784, 149.57565307617188 -33.41153335571289, 149.41972407584802 -29.824672680573517, 146.1209416055467 -30.19711586270431, 143.62025166838282 -30.037497356076827),COMPOUNDCURVE(CIRCULARSTRING(144.84399355252685 -31.26123924022086, 144.20551952601693 -32.27215644886158, 145.55230712890625 -33.49203872680664),(145.55230712890625 -33.49203872680664),CIRCULARSTRING(147.97080993652344 -32.03618621826172, 146.38697244992585 -31.47406391572417, 144.84399355252685 -31.26123924022086))');
-SELECT 'valid ewkb curve polygon 1', ST_asEWKT(ST_GeomFromEWKB(decode('010a00000001000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0', 'hex')));
-SELECT 'valid ewkb curve polygon 2', ST_asEWKT(ST_GeomFromEWKB(decode('010a00000002000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00102000000060000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
-SELECT 'valid ewkb curve polygon 3', ST_asEWKT(ST_GeomFromEWKB(decode('010a00000001000000010800000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0', 'hex')));
-SELECT 'valid ewkb curve polygon 4', ST_asEWKT(ST_GeomFromEWKB(decode('010a00000002000000010800000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00102000000060000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
-SELECT 'valid ewkb curve polygon 5', ST_asEWKT(ST_GeomFromEWKB(decode('010a00000002000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00109000000030000000108000000030000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c001020000000200000000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c0010800000003000000000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
+SELECT 'valid ewkb curve polygon 1', ST_AsEWKT(ST_GeomFromEWKB(decode('010a00000001000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0', 'hex')));
+SELECT 'valid ewkb curve polygon 2', ST_AsEWKT(ST_GeomFromEWKB(decode('010a00000002000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00102000000060000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
+SELECT 'valid ewkb curve polygon 3', ST_AsEWKT(ST_GeomFromEWKB(decode('010a00000001000000010800000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0', 'hex')));
+SELECT 'valid ewkb curve polygon 4', ST_AsEWKT(ST_GeomFromEWKB(decode('010a00000002000000010800000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00102000000060000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
+SELECT 'valid ewkb curve polygon 5', ST_AsEWKT(ST_GeomFromEWKB(decode('010a00000002000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00109000000030000000108000000030000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c001020000000200000000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c0010800000003000000000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0', 'hex')));
 SELECT 'valid curve 6', encode(ST_AsBinary(ST_GeomFromText('CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0,2 0, 2 1, 2 3, 4 3),(4 3, 4 5, 1 4, 0 0)), CIRCULARSTRING(1.7 1, 1.4 0.4, 1.7 1) )'),'ndr'),'hex');
 SELECT 'valid curve 7', encode(ST_AsBinary(ST_GeomFromText('CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0,2 0, 2 1, 2 3, 4 3),(4 3, 4 5, 1 4, 0 0)), (1.7 1, 1.4 0.4, 1.7 1) )'),'ndr'),'hex');
 SELECT 'valid curve 8', encode(ST_AsBinary(ST_GeomFromText('CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0,2 0, 2 1, 2 3, 4 3),(4 3, 0 0)), CIRCULARSTRING(1.7 1, 1.4 0.4, 1.7 1) )'),'ndr'),'hex');
index 082ff709addfc69a02dd85cc067039c187f2e796..90bb28266dc2feabfd9ca618bde1c0c718f2a918 100644 (file)
@@ -7,6 +7,14 @@ geometrytype03|CURVEPOLYGONM
 ndims04|2
 geometrytype04|CURVEPOLYGON
 ndims05|4
+asbinary01|010a0000000200000001080000000700000000000000000000c00000000000000000000000000000f0bf000000000000f0bf00000000000000000000000000000000000000000000f03f000000000000f0bf000000000000004000000000000000000000000000000000000000000000004000000000000000c00000000000000000010200000005000000000000000000f0bf00000000000000000000000000000000000000000000e03f000000000000f03f00000000000000000000000000000000000000000000f03f000000000000f0bf0000000000000000
+asbinary02|00000007da0000000200000007d800000007c00000000000000000000000000000000000000000000000bff0000000000000bff000000000000040000000000000000000000000000000000000000000000040100000000000003ff0000000000000bff00000000000004018000000000000400000000000000000000000000000004020000000000000000000000000000040000000000000004010000000000000c0000000000000000000000000000000000000000000000000000007d200000005bff00000000000000000000000000000400000000000000000000000000000003fe000000000000040100000000000003ff00000000000000000000000000000401800000000000000000000000000003ff00000000000004010000000000000bff000000000000000000000000000004000000000000000
+asbinary03|01f20300000200000001f00300000700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f000000000000000000000000000000000000000000000040000000000000f03f000000000000f0bf000000000000084000000000000000400000000000000000000000000000104000000000000000000000000000000040000000000000004000000000000000c00000000000000000000000000000000001ea03000005000000000000000000f0bf0000000000000000000000000000f03f0000000000000000000000000000e03f0000000000000040000000000000f03f000000000000000000000000000008400000000000000000000000000000f03f0000000000000840000000000000f0bf0000000000000000000000000000f03f
+asbinary04|0000000bc2000000020000000bc000000007c000000000000000000000000000000000000000000000000000000000000000bff0000000000000bff00000000000003ff0000000000000400000000000000000000000000000000000000000000000400000000000000040100000000000003ff0000000000000bff00000000000004008000000000000401800000000000040000000000000000000000000000000401000000000000040200000000000000000000000000000400000000000000040000000000000004010000000000000c0000000000000000000000000000000000000000000000000000000000000000000000bba00000005bff000000000000000000000000000003ff0000000000000400000000000000000000000000000003fe0000000000000400000000000000040100000000000003ff000000000000000000000000000004008000000000000401800000000000000000000000000003ff000000000000040080000000000004010000000000000bff000000000000000000000000000003ff00000000000004000000000000000
+asewkb01|000000000a00000002000000000800000007c0000000000000000000000000000000bff0000000000000bff0000000000000000000000000000000000000000000003ff0000000000000bff00000000000004000000000000000000000000000000000000000000000004000000000000000c0000000000000000000000000000000000000000200000005bff0000000000000000000000000000000000000000000003fe00000000000003ff0000000000000000000000000000000000000000000003ff0000000000000bff00000000000000000000000000000
+asewkb02|010a0000400200000001080000400700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf0000000000000040000000000000000000000000000000000000000000001040000000000000f03f000000000000f0bf000000000000184000000000000000400000000000000000000000000000204000000000000000000000000000000040000000000000104000000000000000c000000000000000000000000000000000010200004005000000000000000000f0bf000000000000000000000000000000400000000000000000000000000000e03f0000000000001040000000000000f03f000000000000000000000000000018400000000000000000000000000000f03f0000000000001040000000000000f0bf00000000000000000000000000000040
+asewkb03|008000000a00000002008000000800000007c00000000000000000000000000000000000000000000000bff0000000000000bff00000000000003ff00000000000000000000000000000000000000000000040000000000000003ff0000000000000bff00000000000004008000000000000400000000000000000000000000000004010000000000000000000000000000040000000000000004000000000000000c00000000000000000000000000000000000000000000000008000000200000005bff000000000000000000000000000003ff000000000000000000000000000003fe000000000000040000000000000003ff00000000000000000000000000000400800000000000000000000000000003ff00000000000004008000000000000bff000000000000000000000000000003ff0000000000000
+asewkb04|010a0000c00200000001080000c00700000000000000000000c0000000000000000000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f00000000000000400000000000000000000000000000000000000000000000400000000000001040000000000000f03f000000000000f0bf000000000000084000000000000018400000000000000040000000000000000000000000000010400000000000002040000000000000000000000000000000400000000000000040000000000000104000000000000000c000000000000000000000000000000000000000000000000001020000c005000000000000000000f0bf0000000000000000000000000000f03f00000000000000400000000000000000000000000000e03f00000000000000400000000000001040000000000000f03f0000000000000000000000000000084000000000000018400000000000000000000000000000f03f00000000000008400000000000001040000000000000f0bf0000000000000000000000000000f03f0000000000000040
 ST_CurveToLine-201|POLYGON((-2 0,-1.70710678 -0.70710678,-1 -1,-0.29289322 -0.70710678,0 0,0.29289322 -0.70710678,1 -1,1.70710678 -0.70710678,2 0,1.41421356 1.41421356,0 2,-1.41421356 1.41421356,-2 0),(-1 0,0 0.5,1 0,0 1,-1 0))
 ST_CurveToLine-202|POLYGONM((-2 0 0,-1.70710678 -0.70710678 1,-1 -1 2,-0.29289322 -0.70710678 3,0 0 4,0.29289322 -0.70710678 5,1 -1 6,1.70710678 -0.70710678 7,2 0 8,1.41421356 1.41421356 6,0 2 4,-1.41421356 1.41421356 2,-2 0 0),(-1 0 2,0 0.5 4,1 0 6,0 1 4,-1 0 2))
 ST_CurveToLine-203|POLYGON((-2 0 0,-1.70710678 -0.70710678 0.5,-1 -1 1,-0.29289322 -0.70710678 1.5,0 0 2,0.29289322 -0.70710678 2.5,1 -1 3,1.70710678 -0.70710678 3.5,2 0 4,1.41421356 1.41421356 3,0 2 2,-1.41421356 1.41421356 1,-2 0 0),(-1 0 1,0 0.5 2,1 0 3,0 1 3,-1 0 1))
@@ -27,10 +35,10 @@ asewkt01|CURVEPOLYGON(CIRCULARSTRING(-2 0,-1 -1,0 0,1 -1,2 0,0 2,-2 0),(-1 0,0 0
 asewkt02|CURVEPOLYGONM(CIRCULARSTRINGM(-2 0 0,-1 -1 2,0 0 4,1 -1 6,2 0 8,0 2 4,-2 0 0),(-1 0 2,0 0.5 4,1 0 6,0 1 4,-1 0 2))
 asewkt03|CURVEPOLYGON(CIRCULARSTRING(-2 0 0,-1 -1 1,0 0 2,1 -1 3,2 0 4,0 2 2,-2 0 0),(-1 0 1,0 0.5 2,1 0 3,0 1 3,-1 0 1))
 asewkt04|CURVEPOLYGON(CIRCULARSTRING(-2 0 0 0,-1 -1 1 2,0 0 2 4,1 -1 3 6,2 0 4 8,0 2 2 4,-2 0 0 0),(-1 0 1 2,0 0.5 2 4,1 0 3 6,0 1 3 4,-1 0 1 2))
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+isValid01|t
+isValid02|t
+isValid03|t
+isValid04|t
 dimension01|2
 dimension02|2
 dimension03|2
@@ -67,10 +75,6 @@ interiorRingN-201|
 interiorRingN-202|
 interiorRingN-203|
 interiorRingN-204|
-public.curvepolygon.the_geom_2d effectively removed.
-public.curvepolygon.the_geom_3dm effectively removed.
-public.curvepolygon.the_geom_3dz effectively removed.
-public.curvepolygon.the_geom_4d effectively removed.
 valid wkt curve polygon 1|010a00000001000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0
 valid wkt curve polygon 2|010a00000002000000010200000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec00102000000060000006844c4fe011b6240342e2993e0423fc0d45daf9d93066240c4a0c305d62240c000000080ac31624000000020fbbe40c0000000e0107f6240000000c0a10440c04e1c0c14624c6240bf3fb6405c793fc06844c4fe011b6240342e2993e0423fc0
 valid wkt curve polygon 3|010a00000001000000010800000007000000ccdf061ad9f3614054093e6d99093ec0ab9085dbb6dd614081540229216040c0ebd7a828c33e62409bf026782a7e41c0000000c06bb2624000000020adb440c08e632f616ead6240c9f7b0bf1dd33dc09011eec0de4362407dd6672f76323ec0ccdf061ad9f3614054093e6d99093ec0
index 044631c4d594c1bde16015cb4124dd4850893762..e020d74d1970eceddf0f95b3570eea1c70af777f 100644 (file)
@@ -124,89 +124,54 @@ UPDATE public.multicurve
                 0.26794919243112270647255365849413 1, 
                 0.5857864376269049511983112757903 1.4142135623730950488016887242097))');
 
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(asbinary(the_geom_2d), 'hex') FROM public.multicurve;
---SELECT 'asbinary02', encode(asbinary(the_geom_3dm), 'hex') FROM public.multicurve;
---SELECT 'asbinary03', encode(asbinary(the_geom_3dz), 'hex') FROM public.multicurve;
---SELECT 'asbinary04', encode(asbinary(the_geom_4d), 'hex') FROM public.multicurve;
---
---SELECT 'asewkb01', encode(asewkb(the_geom_2d), 'hex') FROM public.multicurve;
---SELECT 'asewkb02', encode(asewkb(the_geom_3dm), 'hex') FROM public.multicurve;
---SELECT 'asewkb03', encode(asewkb(the_geom_3dz), 'hex') FROM public.multicurve;
---SELECT 'asewkb04', encode(asewkb(the_geom_4d), 'hex') FROM public.multicurve;
-
-SELECT 'ST_CurveToLine-201', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-202', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-203', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-204', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-
-SELECT 'ST_CurveToLine-401', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-402', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-403', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine-404', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-
-SELECT 'ST_CurveToLine01', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine02', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine03', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-SELECT 'ST_CurveToLine04', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
-
--- Removed due to descrepencies between hardware
---SELECT 'box2d01', box2d(the_geom_2d) FROM public.multicurve;
---SELECT 'box2d02', box2d(the_geom_3dm) FROM public.multicurve;
---SELECT 'box2d03', box2d(the_geom_3dz) FROM public.multicurve;
---SELECT 'box2d04', box2d(the_geom_4d) FROM public.multicurve;
-
---SELECT 'box3d01', box3d(the_geom_2d) FROM public.multicurve;
---SELECT 'box3d02', box3d(the_geom_3dm) FROM public.multicurve;
---SELECT 'box3d03', box3d(the_geom_3dz) FROM public.multicurve;
---SELECT 'box3d04', box3d(the_geom_4d) FROM public.multicurve;
+SELECT 'asbinary01', encode(ST_AsBinary(the_geom_2d, 'xdr'), 'hex') FROM public.multicurve;
+SELECT 'asbinary02', encode(ST_AsBinary(the_geom_3dm, 'ndr'), 'hex') FROM public.multicurve;
+SELECT 'asbinary03', encode(ST_AsBinary(the_geom_3dz, 'xdr'), 'hex') FROM public.multicurve;
+SELECT 'asbinary04', encode(ST_AsBinary(the_geom_4d, 'ndr'), 'hex') FROM public.multicurve;
+
+SELECT 'asewkb01', encode(ST_AsEWKB(the_geom_2d, 'ndr'), 'hex') FROM public.multicurve;
+SELECT 'asewkb02', encode(ST_AsEWKB(the_geom_3dm, 'xdr'), 'hex') FROM public.multicurve;
+SELECT 'asewkb03', encode(ST_AsEWKB(the_geom_3dz, 'ndr'), 'hex') FROM public.multicurve;
+SELECT 'asewkb04', encode(ST_AsEWKB(the_geom_4d, 'xdr'), 'hex') FROM public.multicurve;
+
+SELECT 'ST_CurveToLine-201', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-202', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-203', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-204', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+
+SELECT 'ST_CurveToLine-401', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-402', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-403', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine-404', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+
+SELECT 'ST_CurveToLine01', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine02', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine03', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+SELECT 'ST_CurveToLine04', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multicurve;
+
 -- TODO: ST_SnapToGrid is required to remove platform dependent precision
 -- issues.  Until ST_SnapToGrid is updated to work against curves, these
 -- tests cannot be run.
---SELECT 'ST_LineToCurve01', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.multicurve;
---SELECT 'ST_LineToCurve02', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.multicurve;
---SELECT 'ST_LineToCurve03', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.multicurve;
---SELECT 'ST_LineToCurve04', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.multicurve;
+--SELECT 'ST_LineToCurve01', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.multicurve;
+--SELECT 'ST_LineToCurve02', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.multicurve;
+--SELECT 'ST_LineToCurve03', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.multicurve;
+--SELECT 'ST_LineToCurve04', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.multicurve;
 
 -- Repeat all tests with the new function names.
-SELECT 'astext01', ST_astext(the_geom_2d) FROM public.multicurve;
-SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.multicurve;
-SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.multicurve;
-SELECT 'astext04', ST_astext(the_geom_4d) FROM public.multicurve;
-
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.multicurve;
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.multicurve;
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.multicurve;
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.multicurve;
-
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(ST_asbinary(the_geom_2d), 'hex') FROM public.multicurve;
---SELECT 'asbinary02', encode(ST_asbinary(the_geom_3dm), 'hex') FROM public.multicurve;
---SELECT 'asbinary03', encode(ST_asbinary(the_geom_3dz), 'hex') FROM public.multicurve;
---SELECT 'asbinary04', encode(ST_asbinary(the_geom_4d), 'hex') FROM public.multicurve;
---
---SELECT 'asewkb01', encode(ST_asewkb(the_geom_2d), 'hex') FROM public.multicurve;
---SELECT 'asewkb02', encode(ST_asewkb(the_geom_3dm), 'hex') FROM public.multicurve;
---SELECT 'asewkb03', encode(ST_asewkb(the_geom_3dz), 'hex') FROM public.multicurve;
---SELECT 'asewkb04', encode(ST_asewkb(the_geom_4d), 'hex') FROM public.multicurve;
-
--- Removed due to descrepencies between hardware
---SELECT 'box2d01', ST_box2d(the_geom_2d) FROM public.multicurve;
---SELECT 'box2d02', ST_box2d(the_geom_3dm) FROM public.multicurve;
---SELECT 'box2d03', ST_box2d(the_geom_3dz) FROM public.multicurve;
---SELECT 'box2d04', ST_box2d(the_geom_4d) FROM public.multicurve;
-
---SELECT 'box3d01', ST_box3d(the_geom_2d) FROM public.multicurve;
---SELECT 'box3d02', ST_box3d(the_geom_3dm) FROM public.multicurve;
---SELECT 'box3d03', ST_box3d(the_geom_3dz) FROM public.multicurve;
---SELECT 'box3d04', ST_box3d(the_geom_4d) FROM public.multicurve;
-
-SELECT 'isValid01', ST_isValid(the_geom_2d) FROM public.multicurve;
-SELECT 'isValid02', ST_isValid(the_geom_3dm) FROM public.multicurve;
-SELECT 'isValid03', ST_isValid(the_geom_3dz) FROM public.multicurve;
-SELECT 'isValid04', ST_isValid(the_geom_4d) FROM public.multicurve;
+SELECT 'astext01', ST_AsText(the_geom_2d) FROM public.multicurve;
+SELECT 'astext02', ST_AsText(the_geom_3dm) FROM public.multicurve;
+SELECT 'astext03', ST_AsText(the_geom_3dz) FROM public.multicurve;
+SELECT 'astext04', ST_AsText(the_geom_4d) FROM public.multicurve;
+
+SELECT 'asewkt01', ST_AsEWKT(the_geom_2d) FROM public.multicurve;
+SELECT 'asewkt02', ST_AsEWKT(the_geom_3dm) FROM public.multicurve;
+SELECT 'asewkt03', ST_AsEWKT(the_geom_3dz) FROM public.multicurve;
+SELECT 'asewkt04', ST_AsEWKT(the_geom_4d) FROM public.multicurve;
+
+SELECT 'isValid01', ST_IsValid(the_geom_2d) FROM public.multicurve;
+SELECT 'isValid02', ST_IsValid(the_geom_3dm) FROM public.multicurve;
+SELECT 'isValid03', ST_IsValid(the_geom_3dz) FROM public.multicurve;
+SELECT 'isValid04', ST_IsValid(the_geom_4d) FROM public.multicurve;
 
 SELECT 'dimension01', ST_dimension(the_geom_2d) FROM public.multicurve;
 SELECT 'dimension02', ST_dimension(the_geom_3dm) FROM public.multicurve;
@@ -218,19 +183,20 @@ SELECT 'numGeometries02', ST_numGeometries(the_geom_3dm) FROM public.multicurve;
 SELECT 'numGeometries03', ST_numGeometries(the_geom_3dz) FROM public.multicurve;
 SELECT 'numGeometries04', ST_numGeometries(the_geom_4d) FROM public.multicurve;
 
-SELECT 'geometryN-201', ST_asEWKT(ST_geometryN(the_geom_2d, 2)) FROM public.multicurve;
-SELECT 'geometryN-202', ST_asEWKT(ST_geometryN(the_geom_3dm, 2)) FROM public.multicurve;
-SELECT 'geometryN-203', ST_asEWKT(ST_geometryN(the_geom_3dz, 2)) FROM public.multicurve;
-SELECT 'geometryN-204', ST_asEWKT(ST_geometryN(the_geom_4d, 2)) FROM public.multicurve;
+SELECT 'geometryN-201', ST_AsEWKT(ST_geometryN(the_geom_2d, 2)) FROM public.multicurve;
+SELECT 'geometryN-202', ST_AsEWKT(ST_geometryN(the_geom_3dm, 2)) FROM public.multicurve;
+SELECT 'geometryN-203', ST_AsEWKT(ST_geometryN(the_geom_3dz, 2)) FROM public.multicurve;
+SELECT 'geometryN-204', ST_AsEWKT(ST_geometryN(the_geom_4d, 2)) FROM public.multicurve;
 
-SELECT 'geometryN-301', (ST_asEWKT(ST_geometryN(the_geom_2d, 3)) is null) FROM public.multicurve;
-SELECT 'geometryN-302', (ST_asEWKT(ST_geometryN(the_geom_3dm, 3)) is null) FROM public.multicurve;
-SELECT 'geometryN-303', (ST_asEWKT(ST_geometryN(the_geom_3dz, 3)) is null) FROM public.multicurve;
-SELECT 'geometryN-304', (ST_asEWKT(ST_geometryN(the_geom_4d, 3)) is null) FROM public.multicurve;
+SELECT 'geometryN-301', (ST_AsEWKT(ST_geometryN(the_geom_2d, 3)) is null) FROM public.multicurve;
+SELECT 'geometryN-302', (ST_AsEWKT(ST_geometryN(the_geom_3dm, 3)) is null) FROM public.multicurve;
+SELECT 'geometryN-303', (ST_AsEWKT(ST_geometryN(the_geom_3dz, 3)) is null) FROM public.multicurve;
+SELECT 'geometryN-304', (ST_AsEWKT(ST_geometryN(the_geom_4d, 3)) is null) FROM public.multicurve;
 
 SELECT DropGeometryColumn('public', 'multicurve', 'the_geom_2d');
 SELECT DropGeometryColumn('public', 'multicurve', 'the_geom_3dm');
 SELECT DropGeometryColumn('public', 'multicurve', 'the_geom_3dz');
 SELECT DropGeometryColumn('public', 'multicurve', 'the_geom_4d');
+
 DROP TABLE public.multicurve;
 
index 457c0ef39866595e215cbb07379d57dec367e71c..7c7f2c35f9f9b2d170896de44d9b915831d32a2c 100644 (file)
@@ -6,6 +6,14 @@ ndims03|3
 geometrytype03|MULTICURVEM
 ndims04|2
 geometrytype04|MULTICURVE
+asbinary01|000000000b0000000200000000020000000440140000000000004014000000000000400800000000000040140000000000004008000000000000400800000000000000000000000000004008000000000000000000000800000003000000000000000000000000000000003fd126145e9ecd563ff00000000000003fe2bec3330188673ff6a09e667f3bcd
+asbinary02|01db0700000200000001d20700000400000000000000000014400000000000001440000000000000084000000000000008400000000000001440000000000000004000000000000008400000000000000840000000000000f03f00000000000000000000000000000840000000000000f03f01d80700000300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f00000000000000c067880133c3bee23fcd3b7f669ea0f63f0000000000000040
+asbinary03|00000003f30000000200000003ea00000004401400000000000040140000000000003ff0000000000000400800000000000040140000000000004000000000000000400800000000000040080000000000004008000000000000000000000000000040080000000000003ff000000000000000000003f0000000030000000000000000000000000000000000000000000000003fd126145e9ecd563ff000000000000040080000000000003fe2bec3330188673ff6a09e667f3bcd3ff0000000000000
+asbinary04|01c30b00000200000001ba0b00000400000000000000000014400000000000001440000000000000f03f00000000000008400000000000000840000000000000144000000000000000400000000000000040000000000000084000000000000008400000000000000840000000000000f03f00000000000000000000000000000840000000000000f03f000000000000f03f01c00b000003000000000000000000000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084000000000000000c067880133c3bee23fcd3b7f669ea0f63f000000000000f03f0000000000000040
+asewkb01|010b00000002000000010200000004000000000000000000144000000000000014400000000000000840000000000000144000000000000008400000000000000840000000000000000000000000000008400108000000030000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f67880133c3bee23fcd3b7f669ea0f63f
+asewkb02|004000000b00000002004000000200000004401400000000000040140000000000004008000000000000400800000000000040140000000000004000000000000000400800000000000040080000000000003ff0000000000000000000000000000040080000000000003ff00000000000000040000008000000030000000000000000000000000000000000000000000000003fd126145e9ecd563ff0000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd4000000000000000
+asewkb03|010b0000800200000001020000800400000000000000000014400000000000001440000000000000f03f00000000000008400000000000001440000000000000004000000000000008400000000000000840000000000000084000000000000000000000000000000840000000000000f03f01080000800300000000000000000000000000000000000000000000000000000056cd9e5e1426d13f000000000000f03f000000000000084067880133c3bee23fcd3b7f669ea0f63f000000000000f03f
+asewkb04|00c000000b0000000200c000000200000004401400000000000040140000000000003ff0000000000000400800000000000040080000000000004014000000000000400000000000000040000000000000004008000000000000400800000000000040080000000000003ff0000000000000000000000000000040080000000000003ff00000000000003ff000000000000000c00000080000000300000000000000000000000000000000000000000000000000000000000000003fd126145e9ecd563ff00000000000004008000000000000c0000000000000003fe2bec3330188673ff6a09e667f3bcd3ff00000000000004000000000000000
 ST_CurveToLine-201|MULTILINESTRING((5 5,3 5,3 3,0 3),(0 0,0.58578644 1.41421356))
 ST_CurveToLine-202|MULTILINESTRINGM((5 5 3,3 5 2,3 3 1,0 3 1),(0 0 0,0.58578644 1.41421356 2))
 ST_CurveToLine-203|MULTILINESTRING((5 5 1,3 5 2,3 3 3,0 3 1),(0 0 0,0.58578644 1.41421356 1))
@@ -26,10 +34,10 @@ asewkt01|MULTICURVE((5 5,3 5,3 3,0 3),CIRCULARSTRING(0 0,0.267949192431123 1,0.5
 asewkt02|MULTICURVEM((5 5 3,3 5 2,3 3 1,0 3 1),CIRCULARSTRINGM(0 0 0,0.267949192431123 1 -2,0.585786437626905 1.4142135623731 2))
 asewkt03|MULTICURVE((5 5 1,3 5 2,3 3 3,0 3 1),CIRCULARSTRING(0 0 0,0.267949192431123 1 3,0.585786437626905 1.4142135623731 1))
 asewkt04|MULTICURVE((5 5 1 3,3 5 2 2,3 3 3 1,0 3 1 1),CIRCULARSTRING(0 0 0 0,0.267949192431123 1 3 -2,0.585786437626905 1.4142135623731 1 2))
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+isValid01|t
+isValid02|t
+isValid03|t
+isValid04|t
 dimension01|1
 dimension02|1
 dimension03|1
index 3e8ac29e06f5f9472793486e60fec561005fb749..631428ec121b0955785b1a4cc7a8b7e57dae5ce1 100644 (file)
@@ -250,63 +250,50 @@ UPDATE public.multisurface
                 4 11,
                 7 8)))')
         WHERE id = 1;
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(asbinary(the_geom_2d), 'hex') FROM public.multisurface;
---SELECT 'asbinary02', encode(asbinary(the_geom_3dm), 'hex') FROM public.multisurface;
---SELECT 'asbinary03', encode(asbinary(the_geom_3dz), 'hex') FROM public.multisurface;
---SELECT 'asbinary04', encode(asbinary(the_geom_4d), 'hex') FROM public.multisurface;
---
---SELECT 'asewkb01', encode(asewkb(the_geom_2d), 'hex') FROM public.multisurface;
---SELECT 'asewkb02', encode(asewkb(the_geom_3dm), 'hex') FROM public.multisurface;
---SELECT 'asewkb03', encode(asewkb(the_geom_3dz), 'hex') FROM public.multisurface;
---SELECT 'asewkb04', encode(asewkb(the_geom_4d), 'hex') FROM public.multisurface;
+        
+SELECT 'asbinary01', encode(ST_AsBinary(the_geom_2d, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asbinary02', encode(ST_AsBinary(the_geom_3dm, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asbinary03', encode(ST_AsBinary(the_geom_3dz, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asbinary04', encode(ST_AsBinary(the_geom_4d, 'ndr'), 'hex') FROM public.multisurface;
 
-SELECT 'ST_CurveToLine-201', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-202', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-203', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-204', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'asewkb01', encode(ST_AsEWKB(the_geom_2d, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asewkb02', encode(ST_AsEWKB(the_geom_3dm, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asewkb03', encode(ST_AsEWKB(the_geom_3dz, 'ndr'), 'hex') FROM public.multisurface;
+SELECT 'asewkb04', encode(ST_AsEWKB(the_geom_4d, 'ndr'), 'hex') FROM public.multisurface;
 
-SELECT 'ST_CurveToLine-401', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-402', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-403', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine-404', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-201', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-202', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-203', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-204', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 2), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
 
-SELECT 'ST_CurveToLine01', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine02', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine03', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
-SELECT 'ST_CurveToLine04', ST_Asewkt(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-401', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-402', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-403', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine-404', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d, 4), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+
+SELECT 'ST_CurveToLine01', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_2d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine02', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dm), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine03', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_3dz), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
+SELECT 'ST_CurveToLine04', ST_AsEWKT(ST_SnapToGrid(ST_CurveToLine(the_geom_4d), 'POINT(0 0 0 0)'::geometry, 1e-8, 1e-8, 1e-8, 1e-8)) FROM public.multisurface;
 
 -- TODO: ST_SnapToGrid is required to remove platform dependent precision
 -- issues.  Until ST_SnapToGrid is updated to work against curves, these
 -- tests cannot be run.
---SELECT 'ST_LineToCurve01', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.multisurface;
---SELECT 'ST_LineToCurve02', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.multisurface;
---SELECT 'ST_LineToCurve03', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.multisurface;
---SELECT 'ST_LineToCurve04', ST_Asewkt(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.multisurface;
+--SELECT 'ST_LineToCurve01', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_2d))) FROM public.multisurface;
+--SELECT 'ST_LineToCurve02', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dm))) FROM public.multisurface;
+--SELECT 'ST_LineToCurve03', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_3dz))) FROM public.multisurface;
+--SELECT 'ST_LineToCurve04', ST_AsEWKT(ST_LineToCurve(ST_CurveToLine(the_geom_4d))) FROM public.multisurface;
 
 -- Repeat tests with new function names.
-SELECT 'astext01', ST_astext(the_geom_2d) FROM public.multisurface;
-SELECT 'astext02', ST_astext(the_geom_3dm) FROM public.multisurface;
-SELECT 'astext03', ST_astext(the_geom_3dz) FROM public.multisurface;
-SELECT 'astext04', ST_astext(the_geom_4d) FROM public.multisurface;
-
-SELECT 'asewkt01', ST_asewkt(the_geom_2d) FROM public.multisurface;
-SELECT 'asewkt02', ST_asewkt(the_geom_3dm) FROM public.multisurface;
-SELECT 'asewkt03', ST_asewkt(the_geom_3dz) FROM public.multisurface;
-SELECT 'asewkt04', ST_asewkt(the_geom_4d) FROM public.multisurface;
+SELECT 'astext01', ST_AsText(the_geom_2d) FROM public.multisurface;
+SELECT 'astext02', ST_AsText(the_geom_3dm) FROM public.multisurface;
+SELECT 'astext03', ST_AsText(the_geom_3dz) FROM public.multisurface;
+SELECT 'astext04', ST_AsText(the_geom_4d) FROM public.multisurface;
 
--- These tests will fail on different architectures
--- We need a way to handle multiple byte orderings
---SELECT 'asbinary01', encode(ST_asbinary(the_geom_2d), 'hex') FROM public.multisurface;
---SELECT 'asbinary02', encode(ST_asbinary(the_geom_3dm), 'hex') FROM public.multisurface;
---SELECT 'asbinary03', encode(ST_asbinary(the_geom_3dz), 'hex') FROM public.multisurface;
---SELECT 'asbinary04', encode(ST_asbinary(the_geom_4d), 'hex') FROM public.multisurface;
---
---SELECT 'asewkb01', encode(ST_asewkb(the_geom_2d), 'hex') FROM public.multisurface;
---SELECT 'asewkb02', encode(ST_asewkb(the_geom_3dm), 'hex') FROM public.multisurface;
---SELECT 'asewkb03', encode(ST_asewkb(the_geom_3dz), 'hex') FROM public.multisurface;
---SELECT 'asewkb04', encode(ST_asewkb(the_geom_4d), 'hex') FROM public.multisurface;
+SELECT 'asewkt01', ST_AsEWKT(the_geom_2d) FROM public.multisurface;
+SELECT 'asewkt02', ST_AsEWKT(the_geom_3dm) FROM public.multisurface;
+SELECT 'asewkt03', ST_AsEWKT(the_geom_3dz) FROM public.multisurface;
+SELECT 'asewkt04', ST_AsEWKT(the_geom_4d) FROM public.multisurface;
 
 SELECT 'box2d01', box2d(the_geom_2d) FROM public.multisurface;
 SELECT 'box2d02', box2d(the_geom_3dm) FROM public.multisurface;
@@ -323,29 +310,25 @@ SELECT 'isValid02', ST_IsValid(the_geom_3dm) FROM public.multisurface;
 SELECT 'isValid03', ST_IsValid(the_geom_3dz) FROM public.multisurface;
 SELECT 'isValid04', ST_IsValid(the_geom_4d) FROM public.multisurface;
 
-SELECT 'dimension01', ST_dimension(the_geom_2d) FROM public.multisurface;
-SELECT 'dimension02', ST_dimension(the_geom_3dm) FROM public.multisurface;
-SELECT 'dimension03', ST_dimension(the_geom_3dz) FROM public.multisurface;
-SELECT 'dimension04', ST_dimension(the_geom_4d) FROM public.multisurface;
+SELECT 'dimension01', ST_Dimension(the_geom_2d) FROM public.multisurface;
+SELECT 'dimension02', ST_Dimension(the_geom_3dm) FROM public.multisurface;
+SELECT 'dimension03', ST_Dimension(the_geom_3dz) FROM public.multisurface;
+SELECT 'dimension04', ST_Dimension(the_geom_4d) FROM public.multisurface;
 
-SELECT 'numGeometries01', ST_numGeometries(the_geom_2d) FROM public.multisurface;
-SELECT 'numGeometries02', ST_numGeometries(the_geom_3dm) FROM public.multisurface;
-SELECT 'numGeometries03', ST_numGeometries(the_geom_3dz) FROM public.multisurface;
-SELECT 'numGeometries04', ST_numGeometries(the_geom_4d) FROM public.multisurface;
+SELECT 'numGeometries01', ST_NumGeometries(the_geom_2d) FROM public.multisurface;
+SELECT 'numGeometries02', ST_NumGeometries(the_geom_3dm) FROM public.multisurface;
+SELECT 'numGeometries03', ST_NumGeometries(the_geom_3dz) FROM public.multisurface;
+SELECT 'numGeometries04', ST_NumGeometries(the_geom_4d) FROM public.multisurface;
 
-SELECT 'geometryN-201', ST_asEWKT(ST_geometryN(the_geom_2d, 2)) FROM public.multisurface;
-SELECT 'geometryN-202', ST_asEWKT(ST_geometryN(the_geom_3dm, 2)) FROM public.multisurface;
-SELECT 'geometryN-203', ST_asEWKT(ST_geometryN(the_geom_3dz, 2)) FROM public.multisurface;
-SELECT 'geometryN-204', ST_asEWKT(ST_geometryN(the_geom_4d, 2)) FROM public.multisurface;
+SELECT 'geometryN-201', ST_AsEWKT(ST_geometryN(the_geom_2d, 2)) FROM public.multisurface;
+SELECT 'geometryN-202', ST_AsEWKT(ST_geometryN(the_geom_3dm, 2)) FROM public.multisurface;
+SELECT 'geometryN-203', ST_AsEWKT(ST_geometryN(the_geom_3dz, 2)) FROM public.multisurface;
+SELECT 'geometryN-204', ST_AsEWKT(ST_geometryN(the_geom_4d, 2)) FROM public.multisurface;
 
-SELECT 'geometryN-301', (ST_geometryN(the_geom_2d, 3) is null) FROM public.multisurface;
-SELECT 'geometryN-302', (ST_geometryN(the_geom_3dm, 3) is null) FROM public.multisurface;
-SELECT 'geometryN-303', (ST_geometryN(the_geom_3dz, 3) is null) FROM public.multisurface;
-SELECT 'geometryN-304', (ST_geometryN(the_geom_4d, 3) is null) FROM public.multisurface;
+SELECT 'geometryN-301', (ST_GeometryN(the_geom_2d, 3) is null) FROM public.multisurface;
+SELECT 'geometryN-302', (ST_GeometryN(the_geom_3dm, 3) is null) FROM public.multisurface;
+SELECT 'geometryN-303', (ST_GeometryN(the_geom_3dz, 3) is null) FROM public.multisurface;
+SELECT 'geometryN-304', (ST_GeometryN(the_geom_4d, 3) is null) FROM public.multisurface;
 
-SELECT DropGeometryColumn('public', 'multisurface', 'the_geom_2d');
-SELECT DropGeometryColumn('public', 'multisurface', 'the_geom_3dm');
-SELECT DropGeometryColumn('public', 'multisurface', 'the_geom_3dz');
-SELECT DropGeometryColumn('public', 'multisurface', 'the_geom_4d');
 DROP TABLE public.multisurface;
 
index c72cc5b6b48a89c151fbaac7cd017621785b6b6f..36cdf7552051200bbb978a997feb3447d9f02302 100644 (file)
@@ -6,6 +6,14 @@ ndims03|3
 geometrytype03|MULTISURFACEM
 ndims04|2
 geometrytype04|MULTISURFACE
+asbinary01|010c00000002000000010a0000000200000001080000000700000000000000000000c00000000000000000000000000000f0bf000000000000f0bf00000000000000000000000000000000000000000000f03f000000000000f0bf000000000000004000000000000000000000000000000000000000000000004000000000000000c00000000000000000010200000005000000000000000000f0bf00000000000000000000000000000000000000000000e03f000000000000f03f00000000000000000000000000000000000000000000f03f000000000000f0bf0000000000000000010300000001000000050000000000000000001c4000000000000020400000000000002440000000000000244000000000000018400000000000002c40000000000000104000000000000026400000000000001c400000000000002040
+asbinary02|01dc0700000200000001da0700000200000001d80700000700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf0000000000000040000000000000000000000000000000000000000000001040000000000000f03f000000000000f0bf000000000000184000000000000000400000000000000000000000000000204000000000000000000000000000000040000000000000104000000000000000c00000000000000000000000000000000001d207000005000000000000000000f0bf000000000000000000000000000000400000000000000000000000000000e03f0000000000001040000000000000f03f000000000000000000000000000018400000000000000000000000000000f03f0000000000001040000000000000f0bf0000000000000000000000000000004001d307000001000000050000000000000000001c400000000000002040000000000000204000000000000024400000000000002440000000000000144000000000000018400000000000002c40000000000000f03f0000000000001040000000000000264000000000000018400000000000001c4000000000000020400000000000002040
+asbinary03|01f40300000200000001f20300000200000001f00300000700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f000000000000000000000000000000000000000000000040000000000000f03f000000000000f0bf000000000000084000000000000000400000000000000000000000000000104000000000000000000000000000000040000000000000004000000000000000c00000000000000000000000000000000001ea03000005000000000000000000f0bf0000000000000000000000000000f03f0000000000000000000000000000e03f0000000000000040000000000000f03f000000000000000000000000000008400000000000000000000000000000f03f0000000000000840000000000000f0bf0000000000000000000000000000f03f01eb03000001000000050000000000000000001c4000000000000020400000000000001c4000000000000024400000000000002440000000000000144000000000000018400000000000002c4000000000000008400000000000001040000000000000264000000000000010400000000000001c4000000000000020400000000000001c40
+asbinary04|01c40b00000200000001c20b00000200000001c00b00000700000000000000000000c0000000000000000000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f00000000000000400000000000000000000000000000000000000000000000400000000000001040000000000000f03f000000000000f0bf000000000000084000000000000018400000000000000040000000000000000000000000000010400000000000002040000000000000000000000000000000400000000000000040000000000000104000000000000000c000000000000000000000000000000000000000000000000001ba0b000005000000000000000000f0bf0000000000000000000000000000f03f00000000000000400000000000000000000000000000e03f00000000000000400000000000001040000000000000f03f0000000000000000000000000000084000000000000018400000000000000000000000000000f03f00000000000008400000000000001040000000000000f0bf0000000000000000000000000000f03f000000000000004001bb0b000001000000050000000000000000001c4000000000000020400000000000001c400000000000002040000000000000244000000000000024400000000000001440000000000000144000000000000018400000000000002c400000000000000840000000000000f03f00000000000010400000000000002640000000000000104000000000000018400000000000001c4000000000000020400000000000001c400000000000002040
+asewkb01|010c00000002000000010a0000000200000001080000000700000000000000000000c00000000000000000000000000000f0bf000000000000f0bf00000000000000000000000000000000000000000000f03f000000000000f0bf000000000000004000000000000000000000000000000000000000000000004000000000000000c00000000000000000010200000005000000000000000000f0bf00000000000000000000000000000000000000000000e03f000000000000f03f00000000000000000000000000000000000000000000f03f000000000000f0bf0000000000000000010300000001000000050000000000000000001c4000000000000020400000000000002440000000000000244000000000000018400000000000002c40000000000000104000000000000026400000000000001c400000000000002040
+asewkb02|010c00004002000000010a0000400200000001080000400700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf0000000000000040000000000000000000000000000000000000000000001040000000000000f03f000000000000f0bf000000000000184000000000000000400000000000000000000000000000204000000000000000000000000000000040000000000000104000000000000000c000000000000000000000000000000000010200004005000000000000000000f0bf000000000000000000000000000000400000000000000000000000000000e03f0000000000001040000000000000f03f000000000000000000000000000018400000000000000000000000000000f03f0000000000001040000000000000f0bf00000000000000000000000000000040010300004001000000050000000000000000001c400000000000002040000000000000204000000000000024400000000000002440000000000000144000000000000018400000000000002c40000000000000f03f0000000000001040000000000000264000000000000018400000000000001c4000000000000020400000000000002040
+asewkb03|010c00008002000000010a0000800200000001080000800700000000000000000000c000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f000000000000000000000000000000000000000000000040000000000000f03f000000000000f0bf000000000000084000000000000000400000000000000000000000000000104000000000000000000000000000000040000000000000004000000000000000c000000000000000000000000000000000010200008005000000000000000000f0bf0000000000000000000000000000f03f0000000000000000000000000000e03f0000000000000040000000000000f03f000000000000000000000000000008400000000000000000000000000000f03f0000000000000840000000000000f0bf0000000000000000000000000000f03f010300008001000000050000000000000000001c4000000000000020400000000000001c4000000000000024400000000000002440000000000000144000000000000018400000000000002c4000000000000008400000000000001040000000000000264000000000000010400000000000001c4000000000000020400000000000001c40
+asewkb04|010c0000c002000000010a0000c00200000001080000c00700000000000000000000c0000000000000000000000000000000000000000000000000000000000000f0bf000000000000f0bf000000000000f03f00000000000000400000000000000000000000000000000000000000000000400000000000001040000000000000f03f000000000000f0bf000000000000084000000000000018400000000000000040000000000000000000000000000010400000000000002040000000000000000000000000000000400000000000000040000000000000104000000000000000c000000000000000000000000000000000000000000000000001020000c005000000000000000000f0bf0000000000000000000000000000f03f00000000000000400000000000000000000000000000e03f00000000000000400000000000001040000000000000f03f0000000000000000000000000000084000000000000018400000000000000000000000000000f03f00000000000008400000000000001040000000000000f0bf0000000000000000000000000000f03f000000000000004001030000c001000000050000000000000000001c4000000000000020400000000000001c400000000000002040000000000000244000000000000024400000000000001440000000000000144000000000000018400000000000002c400000000000000840000000000000f03f00000000000010400000000000002640000000000000104000000000000018400000000000001c4000000000000020400000000000001c400000000000002040
 ST_CurveToLine-201|MULTIPOLYGON(((-2 0,-1.70710678 -0.70710678,-1 -1,-0.29289322 -0.70710678,0 0,0.29289322 -0.70710678,1 -1,1.70710678 -0.70710678,2 0,1.41421356 1.41421356,0 2,-1.41421356 1.41421356,-2 0),(-1 0,0 0.5,1 0,0 1,-1 0)),((7 8,10 10,6 14,4 11,7 8)))
 ST_CurveToLine-202|MULTIPOLYGONM(((-2 0 0,-1.70710678 -0.70710678 1,-1 -1 2,-0.29289322 -0.70710678 3,0 0 4,0.29289322 -0.70710678 5,1 -1 6,1.70710678 -0.70710678 7,2 0 8,1.41421356 1.41421356 6,0 2 4,-1.41421356 1.41421356 2,-2 0 0),(-1 0 2,0 0.5 4,1 0 6,0 1 4,-1 0 2)),((7 8 8,10 10 5,6 14 1,4 11 6,7 8 8)))
 ST_CurveToLine-203|MULTIPOLYGON(((-2 0 0,-1.70710678 -0.70710678 0.5,-1 -1 1,-0.29289322 -0.70710678 1.5,0 0 2,0.29289322 -0.70710678 2.5,1 -1 3,1.70710678 -0.70710678 3.5,2 0 4,1.41421356 1.41421356 3,0 2 2,-1.41421356 1.41421356 1,-2 0 0),(-1 0 1,0 0.5 2,1 0 3,0 1 3,-1 0 1)),((7 8 7,10 10 5,6 14 3,4 11 4,7 8 7)))
@@ -34,10 +42,10 @@ box3d01|BOX3D(-2 -1 0,10 14 0)
 box3d02|BOX3D(-2 -1 0,10 14 0)
 box3d03|BOX3D(-2 -1 0,10 14 7)
 box3d04|BOX3D(-2 -1 0,10 14 7)
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
-ERROR:  Exception in LWGEOM2GEOS: curved geometry not supported.
+isValid01|t
+isValid02|t
+isValid03|t
+isValid04|t
 dimension01|2
 dimension02|2
 dimension03|2
@@ -54,7 +62,3 @@ geometryN-301|t
 geometryN-302|t
 geometryN-303|t
 geometryN-304|t
-public.multisurface.the_geom_2d effectively removed.
-public.multisurface.the_geom_3dm effectively removed.
-public.multisurface.the_geom_3dz effectively removed.
-public.multisurface.the_geom_4d effectively removed.