<br><font size=2 face="sans-serif">As I don't get any answers, I think you may need more information on my problem ;-) :</font>
<br>
<br><font size=2 face="sans-serif">I'd like to get the X coordinate for a each point of a linestring :</font>
<br>
<br><font size=2 face="sans-serif">Here is a part of my code :</font>
<br>
<br><font size=2 face="sans-serif">        geom = (GEOMETRY *)PG_DETOAST_DATUM(datum);</font>
<br><font size=2 face="sans-serif">                                </font>
<br><font size=2 face="sans-serif">        offsets = (int32 *) ( ((char *) &(geom->objType[0] ))+ sizeof(int32) * geom->nobjs ) ;</font>
<br><font size=2 face="sans-serif">                                    </font>
<br><font size=2 face="sans-serif">                        for (k=0; k< geom->nobjs; k++)        </font>
<br><font size=2 face="sans-serif">                        {</font>
<br><font size=2 face="sans-serif">                                o = (char *) geom + offsets[k] ;</font>
<br><font size=2 face="sans-serif">                                type =  geom->objType[k];</font>
<br><font size=2 face="sans-serif">                </font>
<br><font size=2 face="sans-serif">                                if (type == LINETYPE)</font>
<br><font size=2 face="sans-serif">                                {</font>
<br><font size=2 face="sans-serif">                                    line = (LINE3D *)o;</font>
<br><font size=2 face="sans-serif">                                    </font>
<br><font size=2 face="sans-serif">                                    for(l=0;l<coord.NbCoord;l++){</font>
<br><font size=2 face="sans-serif">                                        </font>
<br><font size=2 face="sans-serif">                                        point.x = DatumGetFloat8(x_point((GEOMETRY *) make_oneobj_geometry(sizeof(POINT3D),</font>
<br><font size=2 face="sans-serif">                                                                            (char *)&line->points[k+1],</font>
<br><font size=2 face="sans-serif">                                                                                POINTTYPE,  </font>
<br><font size=2 face="sans-serif">                                                                                geom->is3d, </font>
<br><font size=2 face="sans-serif">                                                                                geom->SRID, </font>
<br><font size=2 face="sans-serif">                                                                                geom->scale, </font>
<br><font size=2 face="sans-serif">                                                                                geom->offsetX, </font>
<br><font size=2 face="sans-serif">                                                                                geom->offsetY)));</font>
<br><font size=2 face="sans-serif">                                }</font>
<br><font size=2 face="sans-serif">                                }</font>
<br><font size=2 face="sans-serif">                        }</font>
<br>
<br>
<br>
<br><font size=2 face="sans-serif">Here is how I compile my code :</font>
<br>
<br><font size=2 face="sans-serif">gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations -I/usr/src/postgresql-7.4.1-3/src/include  -c -o MyFunc.o MyFunc.c</font>
<br><font size=2 face="sans-serif">dlltool --export-all --output-def MyFunc.def MyFunc.o</font>
<br><font size=2 face="sans-serif">dllwrap -o gdf2ToGdf1.dll --dllname MyFunc.dll \</font>
<br><font size=2 face="sans-serif">--def MyFunc.def MyFunc.o \</font>
<br><font size=2 face="sans-serif">/usr/src/postgresql-7.4.1-3/src/utils/dllinit.o \</font>
<br><font size=2 face="sans-serif">-L/usr/src/postgresql-7.4.1-3/contrib/postgis-0.8.1/ -lpostgis \</font>
<br><font size=2 face="sans-serif">-L/usr/src/postgresql-7.4.1-3/src/backend -lpostgres \</font>
<br>
<br><font size=2 face="sans-serif">Here is how I create the function :</font>
<br>
<br><font size=2 face="sans-serif">CREATE FUNCTION MyFunc() RETURNS integer</font>
<br><font size=2 face="sans-serif">      AS '/home/bsimon/functions/MyFunc'</font>
<br><font size=2 face="sans-serif">      LANGUAGE 'c';</font>
<br>
<br><font size=2 face="sans-serif">Here is the error I get :</font>
<br>
<br><font size=2 face="sans-serif">ERROR:  could not load library "/home/bsimon/functions/MyFunc.dll": dlopen: Win32 error 126   </font>
<br>
<br>
<br><font size=2 face="sans-serif">I hope this could help !!!</font>
<br><font size=2 face="sans-serif">Thanks.</font>
<br><font size=2 face="sans-serif">B.S.</font>
<br>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td>
<td><font size=1 face="sans-serif"><b>bsimon@loxane.com</b></font>
<br><font size=1 face="sans-serif">Envoyé par : postgis-users-bounces@postgis.refractions.net</font>
<p><font size=1 face="sans-serif">25/02/2004 11:45</font>
<br><font size=1 face="sans-serif">Veuillez répondre à PostGIS Users Discussion</font>
<br>
<td><font size=1 face="Arial">        </font>
<br><font size=1 face="sans-serif">        Pour :        postgis-users@postgis.refractions.net</font>
<br><font size=1 face="sans-serif">        cc :        </font>
<br><font size=1 face="sans-serif">        Objet :        [postgis-users] Creating a C spi function that calls Postgis        functions</font></table>
<br>
<br>
<br><font size=2 face="sans-serif"><br>
Hi,</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
I 've written a C spi function that connects to a base, retrieves some geometries and does some proccessing on them. Everything is Ok so far.</font><font size=3 face="Times New Roman"> </font><font size=2 face="sans-serif"><br>
The problem occurs when in my processing algorithm I try to use some Postgis functions (such as "x_point" or "make_oneobj_geometry"). I manage to link my code with postgis export library but I can't figure out why my CREATE FUNCTION statement fails !</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
here is the error I get when I try to create the function :</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
ERROR:  could not load library "/home/bsimon/functions/MyFunc.dll": dlopen: Win32 error 126   (I use cygwin)</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
Any ideas ??</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
B.S</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="Courier New">_______________________________________________<br>
postgis-users mailing list<br>
postgis-users@postgis.refractions.net<br>
http://postgis.refractions.net/mailman/listinfo/postgis-users<br>
</font>
<br>
<br>