Problems with Oracle Spatial and 3D Geometries

Fernando Simon fsimon at UNIVALI.BR
Fri Nov 25 08:34:56 PST 2005


Hi Rafael,
    The 3D support for Oracle Spatial leyer just started in the 4.4 
version, so it's very new and not completely tested with all of kind of 
data. When I added this support I didn't have access for data with LRS 
dimension as 3, so I didn't implement this support, sorry.
    I intend to add the support for this kind of data for the next 
version of maporaclespatial.c, I don't know if can be added for the 4.8 
version (it's in beta now) but for  5.0 of course. To do this I need 
some data examples, can you send me some examples of this kind of data?
    Thanks for your reply.
    Best regards.

------------------------------------------------------------------------
Fernando Simon
Mapserver and Oracle Spatial developer
G10 - Laboratorio de Computacao Aplicada - Brazil
http://www.univali.br/g10 - UNIVALI/CTTMAR
------------------------------------------------------------------------

Rafael Lucero wrote:

>Hi All,
>
>  I'm attempting to display an Oracle Spatial layer in Mapserver using
>native support (OCI) and while I have been successful with most layers, I am
>experiencing problems with a road network.  The road network is three
>dimensional (i.e. it has measures) and the geometry of the vast majority of
>the elements have an SDO_GTYPE value of 3002 (3D line).  When I display an
>extent of the layer that only has geometries of this type, there is
>absolutely no problem.
>
>  However, a few of the elements in this layer have an SDO_GTYPE of 3306 (3D
>Multiline, measure value is contained on third dimension).  If I try to
>display an extent that contains one of these elements, Mapserver displays a
>blank map. To test this, I defined the DATA portion of my layer as such:
>
>Blank Map
>---------
>LAYER
>...
>  CONNECTIONTYPE oraclespatial
>  DATA "SHAPE FROM LOCAL_ROAD_NETWORK USING UNIQUE NE_ID FILTER VERSION 9i"
>...
>END
>
>Workaround (no Multiline shapes)
>--------------------------------
>LAYER
>...
>  CONNECTIONTYPE oraclespatial
>  DATA "SHAPE FROM (SELECT c.SHAPE,c.NE_ID FROM LOCAL_ROAD_NETWORK c WHERE
>c.SHAPE.GET_LRS_DIM()=0) USING UNIQUE NE_ID FILTER VERSION 9i"
>...
>END
>
>
>Since the only shapes in my layer that are Multiline ALSO have an LRS_DIM of
>3, the workaround will simply not display any Multiline shapes.  Although
>I'm not a C programmer, I had a quick look at maporaclespatial.c and while I
>may be completely off, I noticed that osGetOrdinates() function only
>supports geometries that have an LRS_DIM of 0 (e.g. 2001, 2002, 2003, 3001,
>3002, 3003 etc.).
>
>Has anyone else experienced issues with display 3D Line elements (multiline
>or not) with an LRS dimension set to 3 rather than 0?  Is this currently
>supported in Mapserver's Oracle Spatial functionality? Thanks, and I look
>forward to any help or suggestions anyone might have to offer.
>
>Cheers,
>
>Rafael
>
>  
>



More information about the MapServer-users mailing list