<html>
Hi Jim,<br><br>
mabe have a look at the Rosa applet -->
<a href="http://www2.dmsolutions.ca/webtools/rosa/rosa_gallery.html" eudora="autourl">http://www2.dmsolutions.ca/webtools/rosa/rosa_gallery.html</a><br>
Here you'll find a full working php-version (java) which also uses the
option to highlight and select and objects like parcels.<br><br>
Good luck,<br><br>
Erwin<br><br>
<br><br>
At 15:30 29-10-01 -0500, Jim Burnett wrote:<br>
<blockquote type=cite class=cite cite><font face="arial" size=2>I am
using this function for selecting, and highlighting parcels, however when
I do select a parcel, the hole map seems to shift down, and to the right
a little. Not sure who wrote this function though. Any
sugestions?</font><br>
 <br>
 <br>
<font face="arial" size=2>php_mapscript</font><br>
<font face="arial" size=2>2 month old build of
mapserver_nightly</font><br>
 <br>
<font face="arial" size=2>-jb-</font><br>
 <br>
 <br>
<font face="arial" size=2> session_start();<br>
  dl("php_mapscript.so");</font><br>
 <br>
<font face="arial" size=2>require 'config.php';<br>
$dfMinX = $CUREXTENT[minx];<br>
  $dfMinY = $CUREXTENT[miny];<br>
   $dfMaxX = $CUREXTENT[maxx];<br>
    $dfMaxY = $CUREXTENT[maxy];</font><br>
 <br>
<font face="arial" size=2><br>
$mapObj = ms_newMapObj("$mapfilePath/$mapfile.map");<br>
 <br>
######Loop through to display checkboxes for layers, loop the lay_name
array and lay_stats arrays###<br>
 for ($i = 0; $i <= ( count ($lay_name_array) -1 ); $i++) {<br>
  $layerObj = $mapObj->getLayerByName($lay_name_array[$i]);<br>
  $layerObj->set("status",$lay_status_array[$i]);<br>
  #$layerObj->free();<br>
 }<br>
######END#####################################################<br>
</font> <br>
<font face="arial" size=2> 
$mapObj->setExtent($CUREXTENT[minx],$CUREXTENT[miny],$CUREXTENT[maxx],$CUREXTENT[maxy]);<br>
   $nClickGeoX = GMapPix2Geo(intval($map_x), 0, $width,
$dfMinX, $dfMaxX, 0);<br>
    $nClickGeoY = GMapPix2Geo(intval($map_y), 0, $height,
$dfMinY, $dfMaxY, 1);<br>
     $ptClicked = ms_newPointObj();<br>
      $ptClicked->setXY($nClickGeoX,
$nClickGeoY);<br>
       $queryObj =
$mapObj->queryByPoint( $ptClicked,MS_SINGLE,0 );<br>
        $gbShowQueryResults =
TRUE;<br>
#print" $map $map_x $map_y $dataPath \n";</font><br>
 <br>
<font face="arial" size=2>$img = $mapObj->drawQuery();</font><br>
 <br>
<font face="arial" size=2>header("Cache-Control: no-cache,
must-revalidate");<br>
header("Pragma: no-cache");<br>
header("content-type: image/png");<br>
$img->saveImage("",MS_PNG,0,0, 100);<br>
</font> <br>
 <br>
 <br>
<font face="arial" size=2>function GMapPix2Geo($nPixPos, $dfPixMin,
$dfPixMax, $dfGeoMin, $dfGeoMax, $nInversePix)<br>
 {<br>
    $dfWidthGeo = $dfGeoMax - $dfGeoMin;<br>
    $dfWidthPix = $dfPixMax - $dfPixMin;<br>
    $dfPixToGeo = $dfWidthGeo / $dfWidthPix;<br>
    if (!$nInversePix)<br>
        $dfDeltaPix = $nPixPos -
$dfPixMin;<br>
    else<br>
        $dfDeltaPix = $dfPixMax -
$nPixPos;<br>
    $dfDeltaGeo = $dfDeltaPix * $dfPixToGeo;<br>
    $dfPosGeo = $dfGeoMin + $dfDeltaGeo;<br>
    return ($dfPosGeo);<br>
 }<br>
</font> <br>
<font face="arial" size=2> </blockquote>
<x-sigsep><p></x-sigsep>
<br>
=================<br>
Azimuth Geodetic<br>
Koldingweg 8<br>
9723 HK Groningen<br>
tel. 050-5493454<br>
fax. 050-5497217<br>
=================<br>
<a href="http://www.azimuth.nl/" eudora="autourl">www.azimuth.nl</a><br>
perik@azimuth.nl<br>
=================</font></html>