<div dir="ltr"><div><div>Dear everyone, <br></div><div><br></div>I found sometehing a way more easy that I could use. It's the method Distance(). Apparently, " if OGR is built without the GEOS library, this method will always fail, issuing a CPLE_NotSupported error ". I guess if it returns me -1 means that it was built with GEOS, but an error occured, isn't it? My code is quite simple, <br>
<br>I got the following polyligne poLine that seems to be correctly read as when I look at its numbers of points, its length and so on, it seems to be found without error. Then, I got the start point of my poLine, which is also correct.<br>
<br><br><span style="color:rgb(61,133,198)"><span style="font-family:comic sans ms,sans-serif">poLine = (OGRLineString *) poGeometry;</span></span><br><span style="color:rgb(61,133,198)"><span style="font-family:comic sans ms,sans-serif">poPoint = OGRPoint::OGRPoint(0,0);<br>
poLine->StartPoint(& poPoint);</span><br><br><br></span></div><span style="color:rgb(61,133,198)"><span style="color:rgb(0,0,0)">After that I have some points poPointBis in one layer, and it gives me well the number of points : </span><br>
<br><br><span style="font-family:comic sans ms,sans-serif">poPointBis = (OGRPoint *) poGeometryBis;</span><br></span><div><span style="color:rgb(61,133,198)"><br><br></span></div><div><span style="color:rgb(61,133,198)"><span style="color:rgb(0,0,0)">But when I do the following with a loop over the number of points, I have -1 as the return value.</span><br>
<br>poPointBis = (OGRPoint *) poGeometryBis;<br><span style="font-family:comic sans ms,sans-serif">vector<double> Shorter;<br></span></span></div><div><span style="color:rgb(61,133,198)"><span style="font-family:comic sans ms,sans-serif">for all the points {<br>
</span></span></div><div><span style="color:rgb(61,133,198)"><span style="font-family:comic sans ms,sans-serif"> Shorter.push_back(poPointBis->Distance(poLine)); <br></span></span></div><div><span style="color:rgb(61,133,198)"><span style="font-family:comic sans ms,sans-serif">}<br>
</span></span><br><br></div><div>I thought may be it's beacause one geometry is a line and the other one is a point. So I did the same thing with poGeometry and poGeometryBis and now I'm trying with two points. And I still have -1 as the return value.<br>
</div><div><br></div><div>So, I missed something, but I really don't see what.  Does someone know something about it?<br></div><div><br></div><div>Thanks a lot in advance, <br></div><div>Marion.<br></div><div><br><br>
<br>
</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, May 6, 2013 at 9:27 AM, MARION VIOLOT <span dir="ltr"><<a href="mailto:marion.violot@gmail.com" target="_blank">marion.violot@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Dear everyone, <br><br></div><div>I am new with GDAL-OGR and 
only need to orthogonally project points on polyline and then calculate 
the distance from the projections and the start point of the polyline 
(in C++, in a Windows Form Application with Visual Studio 2008).<br>
</div><div><br></div>I didn't find yet a developed method in GDAL-OGR 
that enables me to do it. I would like to know if there is any existing 
one, or at least one method that calculates the shorter distance between
 a point and a polyline? I was thinking about first understanding and then using the OGR Projections Tutorial, but it's seems very complicated for doing so little.  <br></div><br>Thanks a lot for your time and your help.<span class="HOEnZb"><font color="#888888"><br>

</font></span></div><span class="HOEnZb"><font color="#888888">Marion.<br></font></span></div>
</blockquote></div><br></div>