[mapserver-users]: wrong results querybypoint

Peter blackmail@snafu.de
Tue, 26 Mar 2002 11:53:07 +0100


--------------060702070301040902090904
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Hi Listers,

doing a querybypoint the zoom to the queried polygon is doing well, but 
the information is wrong. It gives the wrong result. Here's the code:

Thanks a lot


Peter


 $queryresult = @$map -> queryByPoint ($querypoint, MS_SINGLE, -1);
 
 
  if ($queryresult == MS_SUCCESS) {
 
    /* Bei einem Erfolg: Ergebnisse aus dem gewünschten Layer holen*/
    $resultlayer = $map -> getLayerByName ('objekte');

/* Uns interessiert nur das erste (i.e. nullte) Resultat */
    $theresult = $resultlayer -> getResult (0);
    $shapefile = ms_newShapefileObj ('C:\Programme\Apache 
Group\Apache\htdocs\immogis3w\code\data\objekte', -1);
    $resultshape = $shapefile -> getShape ($theresult -> shapeindex);
    $resultbounds = $resultshape -> bounds;  
    
    
   
    /* Karte auf diese Extents zoomen */
    $map -> setExtent ($resultbounds -> minx-80, $resultbounds -> 
miny-80,$resultbounds -> maxx+80, $resultbounds -> maxy+80); = CORRECT 
ZOOM!!!
    $resultlayer = $map -> getLayerByName ('objekte');
    $numresults = $resultlayer -> getNumResults ();
    $theresult = $resultlayer -> getResult (0);
    $resultclass = $resultlayer -> getClass (0);
   
    $dbasefile = dbase_open ("C:\Programme\Apache 
Group\Apache\htdocs\immogis3w\code\data\objekte.dbf", 0);
    $dbrecord = dbase_get_record_with_names ($dbasefile, $theresult -> 
shapeindex);
    $Dummy = $dbrecord['ID'];
    printf ("%f<br>", $Dummy);  = WRONG RESULT!!!




--------------060702070301040902090904
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit

<html>
<head>
</head>
<body>
Hi Listers,<br>
<br>
doing a querybypoint the zoom to the queried polygon is doing well, but the
information is wrong. It gives the wrong result. Here's the code:<br>
<br>
Thanks a lot<br>
<br>
<br>
Peter <br>
<br>
<br>
<i>&nbsp;$queryresult = @$map -&gt; queryByPoint ($querypoint, MS_SINGLE, -1);<br>
&nbsp;<br>
&nbsp; <br>
&nbsp; if ($queryresult == MS_SUCCESS) {<br>
&nbsp;<br>
&nbsp;&nbsp;&nbsp; /* Bei einem Erfolg: Ergebnisse aus dem gew&uuml;nschten Layer holen*/<br>
&nbsp;&nbsp;&nbsp; $resultlayer = $map -&gt; getLayerByName ('objekte');<br>
<br>
/* Uns interessiert nur das erste (i.e. nullte) Resultat */<br>
&nbsp;&nbsp;&nbsp; $theresult = $resultlayer -&gt; getResult (0);<br>
&nbsp;&nbsp;&nbsp; $shapefile = ms_newShapefileObj ('<a class="moz-txt-link-freetext" href="C:\Programme\Apache">C:\Programme\Apache</a> Group\Apache\htdocs\immogis3w\code\data\objekte',
-1);<br>
&nbsp;&nbsp;&nbsp; $resultshape = $shapefile -&gt; getShape ($theresult -&gt; shapeindex);<br>
&nbsp;&nbsp;&nbsp; $resultbounds = $resultshape -&gt; bounds; &nbsp;</i><br>
&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp; &nbsp;<br>
&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp; /* Karte auf diese Extents zoomen */<br>
&nbsp;&nbsp;&nbsp; $map -&gt; setExtent ($resultbounds -&gt; minx-80, $resultbounds -&gt;
miny-80,$resultbounds -&gt; maxx+80, $resultbounds -&gt; maxy+80); <b>= CORRECT
ZOOM!!!</b><br>
&nbsp;&nbsp;&nbsp; $resultlayer = $map -&gt; getLayerByName ('objekte');<br>
&nbsp;&nbsp;&nbsp; $numresults = $resultlayer -&gt; getNumResults ();<br>
&nbsp;&nbsp;&nbsp; $theresult = $resultlayer -&gt; getResult (0);<br>
&nbsp;&nbsp;&nbsp; $resultclass = $resultlayer -&gt; getClass (0);<br>
&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp; $dbasefile = dbase_open (<a class="moz-txt-link-rfc2396E" href="C:\Programme\ApacheGroup\Apache\htdocs\immogis3w\code\data\objekte.dbf">"C:\Programme\Apache Group\Apache\htdocs\immogis3w\code\data\objekte.dbf"</a>,
0);<br>
<i>&nbsp;&nbsp;&nbsp; $dbrecord = dbase_get_record_with_names ($dbasefile, $theresult -&gt;
shapeindex);<br>
&nbsp;&nbsp;&nbsp; $Dummy = $dbrecord['ID'];<br>
&nbsp;&nbsp;&nbsp; printf ("%f&lt;br&gt;", $Dummy); &nbsp;</i><b>= WRONG RESULT!!!</b><br>
<br>
<br>
<br>
</body>
</html>

--------------060702070301040902090904--