[postgis-tickets] [PostGIS] #3253: ST_3DMaxDistance curved geometries mixed dimension yields DIST_MAX mode not supported

PostGIS trac at osgeo.org
Thu Aug 20 23:45:14 PDT 2015


#3253: ST_3DMaxDistance curved geometries mixed dimension yields DIST_MAX mode not
supported
---------------------+---------------------------
 Reporter:  robe     |      Owner:  pramsey
     Type:  defect   |     Status:  new
 Priority:  low      |  Milestone:  PostGIS 2.2.0
Component:  postgis  |    Version:  trunk
 Keywords:           |
---------------------+---------------------------
 Running thru garden tests, and just noticed this. I'm not sure if this is
 bug or not, but message is very confusing.

 -- in PostGIS 2.2 r13966
 {{{
 SELECT ST_3DMaxDistance('GEOMETRYCOLLECTION Z (MULTIPOLYGON Z (((-71.0821
 42.3036 2,-71.0822 42.3036 2,-71.082 42.3038 2,-71.0819 42.3037 2,-71.0821
 42.3036 2))),POLYGON Z ((-71.1261 42.2703 1,-71.1257 42.2703 1,-71.1257
 42.2701 1,-71.126 42.2701 1,-71.1261 42.2702 1,-71.1261 42.2703
 1)))'::geometry, 'MULTISURFACE(CURVEPOLYGON(CIRCULARSTRING(-71.0821
 42.3036,-71.4821 42.3036,-71.7821 42.7036,-71.0821 42.7036,-71.0821
 42.3036),(-71.1821 42.4036,-71.3821 42.6036,-71.3821 42.4036,-71.1821
 42.4036)))'::geometry);
 }}}


 returns error:


 {{{
 NOTICE:  One or both of the geometries is missing z-value. The unknown
 z-value will be regarded as "any value"


 ERROR:  lw_dist2d_ptarray_ptarrayarc does not currently support DIST_MAX
 mode
 ********** Error **********

 ERROR: lw_dist2d_ptarray_ptarrayarc does not currently support DIST_MAX
 mode
 SQL state: XX000


 }}}

 In PostGIS 2.1.8 it returns:

 {{{
 ERROR:  Unsupported geometry type: CircularString
 ********** Error **********

 ERROR: Unsupported geometry type: CircularString
 SQL state: XX000


 }}}

 Now I'm unclear do we support curves in 3D now with the 3D functions?

 -- for this query
 {{{
 SELECT ST_3DDistance('GEOMETRYCOLLECTION Z (MULTIPOLYGON Z (((-71.0821
 42.3036 2,-71.0822 42.3036 2,-71.082 42.3038 2,-71.0819 42.3037 2,-71.0821
 42.3036 2))),POLYGON Z ((-71.1261 42.2703 1,-71.1257 42.2703 1,-71.1257
 42.2701 1,-71.126 42.2701 1,-71.1261 42.2702 1,-71.1261 42.2703
 1)))'::geometry, 'MULTISURFACE(CURVEPOLYGON(CIRCULARSTRING(-71.0821
 42.3036,-71.4821 42.3036,-71.7821 42.7036,-71.0821 42.7036,-71.0821
 42.3036),(-71.1821 42.4036,-71.3821 42.6036,-71.3821 42.4036,-71.1821
 42.4036)))'::geometry);

 }}}

 PostGIS 2.2 returns 0.


 In PostGIS 2.1.8, I get

 {{{
 ERROR:  Unsupported geometry type: CircularString
 ********** Error **********
 }}}

--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3253>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list