________________________________
From: ssss [mailto:[email protected]]
Sent: Wednesday, 20 October 2010 11:16 PM
To: Tan, Florence (CESRE, Kensington); [email protected]
Subject: RE: [Geoserver-users] About gsml:Borehole again

Hi,

I find one problem I didn't notice before. Since each borehole corresponds to 
one point and in Oracle, the spatial value is like "(2001, , (275730, 234970, 
), , )" (I only define one X, Y),

However, the output is like

<sa:shape>
<gml:LineString>
<gml:posList>163410.0 264500.0 163410.0 264500.0</gml:posList>
</gml:LineString>
</sa:shape>

There are two X, Y. Why?
 I don't know exactly how geoserver encode point to linestring...  may be Rini 
can help to answer this question.

As for our Borehole, I'd created 2 point linestring as below since geoserver 
require 2 point for a linestring :
SDO_GEOMETRY(2002,NULL,NULL,SDO_ELEM_INFO_ARRAY(1,2,1),SDO_ORDINATE_ARRAY(LONGITUDE,
 LATITUDE, LONGITUDE, LATITUDE)) SHAPE,

Thanks,

Ying






________________________________
From: [email protected]
To: [email protected]; [email protected]
Date: Wed, 20 Oct 2010 09:08:46 +0800
Subject: RE: [Geoserver-users] About gsml:Borehole again

Hi Ying, to answer your questions :

I asked this question in May, could I ask whether <sa:shape> has been improved 
to support 3-dimension?
AND how to add 'srsName', 'srsDimension' to gml:LineString as above?
No, geoserver do not support 3D coordinate yet.  (Someone please correct me if 
it does now...)
To get the srsName, srsDimension for LineString, in Oracle, you need to add the 
linestring column to USER_SDO_GEOM_METADATA table, e.g. :

INSERT INTO USER_SDO_GEOM_METADATA VALUES (table_name,column_name,diminfo,srid);
e.g.
INSERT INTO USER_SDO_GEOM_METADATA VALUES (
    'SITE',
    'GEODETIC_POINT',
    MDSYS.SDO_DIM_ARRAY(
        MDSYS.SDO_DIM_ELEMENT('longitude', -180, 180, 0.000001),
        MDSYS.SDO_DIM_ELEMENT('latitude', -90, 90, 0.000001)
    ),
    4326);

GeoServer will encode the srsName and srsDimension base on the SRID.


For your second question on 1D mapping, I don't think GeoServer support 1D 
coordinate at the moment as well.


Regards,
Florence


________________________________
From: ssss [mailto:[email protected]]
Sent: Tuesday, 19 October 2010 11:19 PM
To: [email protected]
Subject: [Geoserver-users] About gsml:Borehole again

Hi,

I come back to gsml:borehole again. Now, the GeoServer runs very well except 
for several small questions. Thanks very much.

1. About gsml:Borehole/sa:shape

What I want is like

            <sa:shape>
                <gml:LineString
                    gml:id="bh.TR34SWBJ90.shape"
                    srsName="urn:ogc:def:crs:EPSG:6.15:7405"
                    srsDimension="3">
                    <gml:pos>630400 0141150 29.5</gml:pos>
                    <gml:pos>630400 0141150 74.5</gml:pos>
                </gml:LineString>
            </sa:shape>

So in <gml:pos>, it should be like 'X Y Depth'.

In mapping file, I define,

                <AttributeMapping>
                    <targetAttribute>gsml:Borehole/sa:shape</targetAttribute>
                    <sourceExpression>
                    <OCQL>GEOM</OCQL>
                    </sourceExpression>
                 </AttributeMapping>

where 'GEOM' is a Oracle spatial field in a table. But I can only get

<sa:shape>
<gml:LineString>
<gml:posList>163410.0 264500.0 163410.0 264500.0</gml:posList>
</gml:LineString>
</sa:shape>

It seems GeoServer still doesn't support 3-dimension.

I asked this question in May, could I ask whether <sa:shape> has been improved 
to support 3-dimension?
AND how to add 'srsName', 'srsDimension' to gml:LineString as above?


2. About gsml:shape in gsml:MappedInterval

If I encode a borehole log as MappedIntervals, then in gsml:MappedInterval, I 
need to define gsml:shape. What I want is

                    <gsml:shape>
                        <gml:LineString
                            srsName="bh.TR34SWBJ90.shape"
                            srsDimension="1">
                            <gml:pos>0</gml:pos>
                            <gml:pos>1.0</gml:pos>
                        </gml:LineString>
                    </gsml:shape>

as Above, it define the starting depth to the end depth from 0 to 1.0, which is 
one layer of a borehole.

Could I ask how to define this in the mapping? Should I define a new Oracle 
spatial field and use something like,

                <AttributeMapping>
                    
<targetAttribute>gsml:MappedInterval/sa:shape</targetAttribute>
                    <sourceExpression>
                    <OCQL>GDEPTH</OCQL>
                    </sourceExpression>
                 </AttributeMapping>
??????????????? Or there is better way???

Meanwhile, how to add srsDimension to gml:LineString?


Thanks very much for your help,

Ying


------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store 
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to