[Mapserver-users] dynamic labeling -- help needed

Murat Isik muratisik at megatek.com.tr
Thu Nov 6 03:17:23 EST 2003


This is a multi-part message in MIME format.

------=_NextPart_000_009B_01C3A44F.2B920F70
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Thank you:)
I dont know any French, but visually I can see that it is a superb =
work...
I didnot understand how I can relate it to street-name-printing :(
Something else attracted my attention. If I am not wrong, you have some =
sort of radio buttons which move the map up-down-right-left. I need =
something like that more than I need street-name-printing. I cant really =
get the map to move anywhere either panned or zoomed. How did you get =
that done?

Thank you.
Have a nice day

Murat Isik
  ----- Original Message -----=20
  From: fx gamoy=20
  To: mapserver-users at lists.gis.umn.edu ; Murat Isik=20
  Sent: Thursday, November 06, 2003 11:07 AM
  Subject: Re: [Mapserver-users] dynamic labeling -- help needed


  hello Murat
  i have used mif/mid file instead of shpefileobj
  i have written a php function which write new mif/mid file when i have =
to refresh car position.
  fx gamoy
  http://www.mapxplore.com/
    ----- Original Message -----=20
    From: Murat Isik=20
    To: mapserver-users at lists.gis.umn.edu=20
    Sent: Thursday, November 06, 2003 7:42 AM
    Subject: [Mapserver-users] dynamic labeling -- help needed


    Hello,
    I am working on a mapscript project, it is a car tracking project.
    Coordinates data comes to mysql, and my mapscript reads the data and =
prints
    points on the map accordingly. However I am given a new task which =
is truely
    above me...
    I am handed a new layer for my project, a layer about streets. I am =
supposed
    to add this layer to the map (which is easy) and have the php code
    dynamicaly query this layer (which is "????" for me) I have used =
some free
    map tools to "look
    into" the layer. The database coloumn has two coloumns: an ID and an =
ADI
    coloumn. ADI means "its name" in Turkish. Every time this php code =
is
    called, it should not only print the streets on the map but next to =
each
    street, it
    should also write its name. Even if it is zoomed, it should still =
maintain
    the names of the streets within the picture on the page. I have no =
idea
    about how to do this, it is way above me...

    One problem might be that while ID coloumn is all numbers, ADI =
coloumn has a
    lot of Turkish characters (8859-9 named code set I believe, UTF-9 =
might be
    another name too.) I dont know if php/mapscript supports this one. =
This is
    not a big problem anyway. If I can get the ID coloumn to be printed, =
then I
    can use ArcView or some other windows tool to open up the .dbf file =
and
    rewrite the names with international characters and then change it =
to ID to
    ADI.

    But I dont have any ideas about how to get anything read out of the =
static
    layer and properly printed on the page. I have searched the net and =
mail
    list archieve but didnot understand much. Please help me...:)

    Have a nice day:)

    Murat Isik
    =20
    current php code:
    =20
    <HEAD>
    <TITLE>Displaying a Point</TITLE>
    </HEAD>
    <CENTER>
    <FORM METHOD=3DPOST ACTION=3D<?php echo $PHP_SELF?>>
    <H1>DYNAMIC POINT</H1>
    <P>
    <?php
    dl("php_mapscript.so");

    mysql_connect("localhost","root","sqlpass") or
            die ("Could not connect to database");

    mysql_select_db("gpstrack") or
            die("Could not select database");

    $val_zsize=3D3;
    $check_pan=3D"CHECKED";

    $shpFname =3D "target1";
    $shpFile =3D ms_newShapeFileObj($shpFname, MS_SHP_POINT);

    $shpFname1 =3D "target2";
    $shpFile1 =3D ms_newShapeFileObj($shpFname1, MS_SHP_POINT);

    $pt =3D ms_newPointObj();

    $i =3D 0;

    $result =3D mysql_query("select * from track2") or
            die (mysql_error());


    $x[0]=3D0;
    $y[0]=3D0;

    while ($row =3D mysql_fetch_array($result))
    {
    ++$i;
    $test_x[$i] =3D $row["lodegrees"]+$row["lominutes"]/60;
    $test_y[$i] =3D $row["ldegrees"]+$row["lminutes"]/60;


    if($test_x[$i]=3D=3D$x[$i-1] || $test_y[$i]=3D=3D$y[$i-1])
    {
    --$i;
    }else
    {

    $x[$i] =3D $test_x[$i];
    $y[$i] =3D $test_y[$i];

    }

    }
    mysql_free_result($result);


    for($k=3D1;$k<=3D$i-1;++$k)
    {
    $pt->setXY($x[$k], $y[$k]);
    $shpFile->addPoint($pt);
    };

    $pt->setXY($x[$i], $y[$i]);
    $shpFile1->addPoint($pt);


    $shpFile->free();
    $shpFile1->free();

    $def =3Darray(array("UNIQID", "C", 13),array("NOM", "C", 128));
    $dbfFile =3D dbase_create($shpFname.".dbf", $def);
    dbase_add_record($dbfFile, array("1","TEST"));

    $def =3Darray(array("UNIQID", "C", 13),array("NOM", "C", 128));
    $dbfFile =3D dbase_create($shpFname1.".dbf", $def);
    dbase_add_record($dbfFile, array("1","TEST"));

    $myMap =3D ms_newMapObj("demo_try.map");

    #$myLayer =3D $myMap->getLayerByName("target1");
    #$myLayer->set("data", $shpFname);
    #$myLayer->set('status', MS_ON);


    if ( isset($HTTP_POST_VARS["mapa_x"]) && =
isset($HTTP_POST_VARS["mapa_y"])
          && !isset($HTTP_POST_VARS["full"]) ) {

     //     $extent_to_set =3D explode(" ",$HTTP_POST_VARS["extent"]);


    $extent_to_set[0] =3D 29.057;
    $extent_to_set[1] =3D 40.954;
    $extent_to_set[2] =3D 29.143;
    $extent_to_set[3] =3D 40.999;


      $myMap->setextent($extent_to_set[0],$extent_to_set[1],
                         $extent_to_set[2],$extent_to_set[3]);

          $my_point =3D ms_newpointObj();
          =
$my_point->setXY($HTTP_POST_VARS["mapa_x"],$HTTP_POST_VARS["mapa_y"]);

          $my_extent =3D ms_newrectObj();

          $my_extent->setextent($extent_to_set[0],$extent_to_set[1],
                                  $extent_to_set[2],$extent_to_set[3]);

          $zoom_factor =3D =
$HTTP_POST_VARS["zoom"]*$HTTP_POST_VARS["zsize"];
          if ($zoom_factor =3D=3D 0) {
                  $zoom_factor =3D 1;
                  $check_pan =3D "CHECKED";
                  $check_zout =3D "";
                  $check_zin =3D "";
          } else if ($zoom_factor < 0) {
                  $check_pan =3D "";
                  $check_zout =3D "CHECKED";
                  $check_zin =3D "";
          } else {
                  $check_pan =3D "";
                  $check_zout =3D "";
                  $check_zin =3D "CHECKED";
          }

          $val_zsize =3D abs($zoom_factor);

          =
$myMap->zoompoint($zoom_factor,$my_point,$myMap->width,$myMap->height,
                          $my_extent);

    }
    $img =3D $myMap->draw();
    $image_url =3D $img->saveWebImage(GIF,1,1,0);

    ?>
    <BODY>
    <center>
    <table border=3D0 cellspacing=3D0 cellpadding=3D4 =
bgcolor=3D"#FFFFFF">
    <tr>
    <td valign=3D"top" align=3Dcenter>
      <table cellpadding=3D"0" cellspacing=3D"5" border=3D"5">
        <tr><td colspan=3D"2"><INPUT NAME=3D"mapa" TYPE=3D"image" =
SRC=3D"<?php echo
    $image_url; ?>" width=3D600 height=3D600 border=3D0></td></tr>
        <tr>
     <TR>
          <TD>
                  Pan
          </TD>
          <TD>
                  <INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D0 <?php echo =
$check_pan?>>
          </TD>
     </TR>
     <TR>
          <TD>
                  Zoom In
          </TD>
          <TD>
                  <INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D1 <?php echo =
$check_zin?>>
          </TD>
     </TR>
     <TR>
          <TD>
                  Zoom Out
          </TD>
          <TD>
                  <INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D-1 <?php =
echo
    $check_zout?>>
          </TD>
     </TR>
     <TR>
          <TD>
                  Zoom Size
          </TD>
          <TD>
                  <INPUT TYPE=3DTEXT NAME=3D"zsize" VALUE=3D"<?php echo =
$val_zsize?>"
                  SIZE=3D2>
          </TD>
     </TR>
     <TR>
          <TD>
                  Full Extent
          </TD>
          <TD>
                  <INPUT TYPE=3DSUBMIT NAME=3D"full" VALUE=3D"Go"
                  SIZE=3D2>
          </TD>
    </TABLE>
    <INPUT TYPE=3DHIDDEN NAME=3D"extent" VALUE=3D"<?php echo =
$extent_to_html?>">
    </FORM>
    </CENTER>

    </BODY>
    </HTML>


    current map file:

    #
    # Start of map file
    #
    NAME ERENKOY
    STATUS ON
    SIZE 600 600
    EXTENT 29.057 40.954 29.143 40.999
    UNITS DD
    SHAPEPATH "/var/www/html/mapserver/itasca/"
    IMAGECOLOR 255 255 255

    #OUTPUTFORMAT
    #  NAME PNG
    #  DRIVER "GD/PNG"
    #  MIMETYPE "image/png"
    #  IMAGEMODE PC256
    #  EXTENSION "png"
    #END

    IMAGETYPE GIF


    WEB
      MINSCALE 1000
      MAXSCALE 1550000
      IMAGEPATH "/var/www/html/mapserver/tmp3/"
      IMAGEURL "/mapserver/tmp3/"
     END


    SYMBOL
      NAME 'circle'
      TYPE ELLIPSE
      POINTS 1 1 END
      FILLED TRUE
    END


    LAYER
      NAME 'ERENKOY_ORNEKILCE_PG_region'
      TYPE polygon
      STATUS DEFAULT
      DATA ERENKOY_ORNEKILCE_PG_region

      CLASSITEM 'ID'
      CLASS
        EXPRESSION '3'
        OUTLINECOLOR 128 128 128
        COLOR 225 225 185
      END
      CLASS
        EXPRESSION /./
        OUTLINECOLOR 128 128 128
        COLOR 255 255 255
      END
    END

    LAYER
     NAME ERENKOY_ORNEKMAHALLE_PG_region
      GROUP cities
      TYPE polygon
     DATA ERENKOY_ORNEKMAHALLE_PG_region
      STATUS ON
     CLASSITEM 'ID'
     CLASS
            EXPRESSION /./
    COLOR 255 225 185
            OUTLINECOLOR 0 0 0

      END


    END

    LAYER
      NAME 'target2'
      TYPE point
      DATA target2
      STATUS ON
       CLASS
        SYMBOL 'circle'
        COLOR 255 255 0
        SIZE 20
         LABEL
          COLOR 0 0 0
         END
       END


    END

    LAYER
      NAME 'target1'
      TYPE point
      DATA target1
      STATUS ON
       CLASS
        SYMBOL 'circle'
        COLOR 255 0 0
        SIZE 4
         LABEL
          COLOR 0 0 0
         END
       END


    END

    END # end of map file




------=_NextPart_000_009B_01C3A44F.2B920F70
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3700.6699" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Thank you:)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I dont know any French, but visually I =
can see that=20
it is a superb work...</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I didnot understand how I can relate it =
to=20
street-name-printing :(</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Something else attracted my attention. =
If I am not=20
wrong, you have some sort of radio buttons which move the map=20
up-down-right-left. I need something like that more than I need=20
street-name-printing. I cant really get the map to move anywhere either =
panned=20
or zoomed. How did you get that done?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Thank you.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Have a nice day</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Murat Isik</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: =
0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
  <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV=20
  style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
  <A href=3D"mailto:fx.gamoy at mapxplore.com" =
title=3Dfx.gamoy at mapxplore.com>fx=20
  gamoy</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
  href=3D"mailto:mapserver-users at lists.gis.umn.edu"=20
  =
title=3Dmapserver-users at lists.gis.umn.edu>mapserver-users at lists.gis.umn.e=
du</A>=20
  ; <A href=3D"mailto:muratisik at megatek.com.tr"=20
  title=3Dmuratisik at megatek.com.tr>Murat Isik</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Thursday, November 06, =
2003 11:07=20
  AM</DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> Re: [Mapserver-users] =
dynamic=20
  labeling -- help needed</DIV>
  <DIV><BR></DIV>
  <DIV><FONT face=3DArial size=3D2>hello Murat</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>i have used mif/mid file instead of=20
  shpefileobj</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>i have written a php function which =
write new=20
  mif/mid file when i have to refresh car position.</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2>fx gamoy</FONT></DIV>
  <DIV><FONT face=3DArial size=3D2><A=20
  =
href=3D"http://www.mapxplore.com/">http://www.mapxplore.com/</A></FONT></=
DIV>
  <BLOCKQUOTE dir=3Dltr=20
  style=3D"BORDER-LEFT: #000000 2px solid; MARGIN-LEFT: 5px; =
MARGIN-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">
    <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
    <DIV=20
    style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
    <A href=3D"mailto:muratisik at megatek.com.tr"=20
    title=3Dmuratisik at megatek.com.tr>Murat Isik</A> </DIV>
    <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
    href=3D"mailto:mapserver-users at lists.gis.umn.edu"=20
    =
title=3Dmapserver-users at lists.gis.umn.edu>mapserver-users at lists.gis.umn.e=
du</A>=20
    </DIV>
    <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Thursday, November 06, =
2003 7:42=20
    AM</DIV>
    <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> [Mapserver-users] =
dynamic=20
    labeling -- help needed</DIV>
    <DIV><BR></DIV>
    <DIV><FONT face=3DArial size=3D2>Hello,<BR>I am working on a =
mapscript project,=20
    it is a car tracking project.<BR>Coordinates data comes to mysql, =
and my=20
    mapscript reads the data and prints<BR>points on the map =
accordingly.=20
    However I am given a new task which is truely<BR>above me...<BR>I am =
handed=20
    a new layer for my project, a layer about streets. I am =
supposed<BR>to add=20
    this layer to the map (which is easy) and have the php =
code<BR>dynamicaly=20
    query this layer (which is "????" for me) I have used some =
free<BR>map tools=20
    to "look<BR>into" the layer. The database coloumn has two coloumns: =
an ID=20
    and an ADI<BR>coloumn. ADI means "its name" in Turkish. Every time =
this php=20
    code is<BR>called, it should not only print the streets on the map =
but next=20
    to each<BR>street, it<BR>should also write its name. Even if it is =
zoomed,=20
    it should still maintain<BR>the names of the streets within the =
picture on=20
    the page. I have no idea<BR>about how to do this, it is way above=20
    me...<BR><BR>One problem might be that while ID coloumn is all =
numbers, ADI=20
    coloumn has a<BR>lot of Turkish characters (8859-9 named code set I =
believe,=20
    UTF-9 might be<BR>another name too.) I dont know if php/mapscript =
supports=20
    this one. This is<BR>not a big problem anyway. If I can get the ID =
coloumn=20
    to be printed, then I<BR>can use ArcView or some other windows tool =
to open=20
    up the .dbf file and<BR>rewrite the names with international =
characters and=20
    then change it to ID to<BR>ADI.<BR><BR>But I dont have any ideas =
about how=20
    to get anything read out of the static<BR>layer and properly printed =
on the=20
    page. I have searched the net and mail<BR>list archieve but didnot=20
    understand much. Please help me...:)<BR><BR>Have a nice =
day:)<BR><BR>Murat=20
    Isik</FONT></DIV>
    <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
    <DIV><FONT face=3DArial size=3D2>current php code:</FONT></DIV>
    <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
    <DIV><FONT face=3DArial =
size=3D2>&lt;HEAD&gt;<BR>&lt;TITLE&gt;Displaying a=20
    Point&lt;/TITLE&gt;<BR>&lt;/HEAD&gt;<BR>&lt;CENTER&gt;<BR>&lt;FORM=20
    METHOD=3DPOST ACTION=3D&lt;?php echo =
$PHP_SELF?&gt;&gt;<BR>&lt;H1&gt;DYNAMIC=20
    =
POINT&lt;/H1&gt;<BR>&lt;P&gt;<BR>&lt;?php<BR>dl("php_mapscript.so");<BR><=
BR>mysql_connect("localhost","root","sqlpass")=20
    or<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; die ("Could not =
connect to=20
    database");<BR><BR>mysql_select_db("gpstrack")=20
    or<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; die("Could not =
select=20
    =
database");<BR><BR>$val_zsize=3D3;<BR>$check_pan=3D"CHECKED";<BR><BR>$shp=
Fname =3D=20
    "target1";<BR>$shpFile =3D ms_newShapeFileObj($shpFname,=20
    MS_SHP_POINT);<BR><BR>$shpFname1 =3D "target2";<BR>$shpFile1 =3D=20
    ms_newShapeFileObj($shpFname1, MS_SHP_POINT);<BR><BR>$pt =3D=20
    ms_newPointObj();<BR><BR>$i =3D 0;<BR><BR>$result =3D =
mysql_query("select * from=20
    track2") or<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; die=20
    (mysql_error());<BR><BR><BR>$x[0]=3D0;<BR>$y[0]=3D0;<BR><BR>while =
($row =3D=20
    mysql_fetch_array($result))<BR>{<BR>++$i;<BR>$test_x[$i] =3D=20
    $row["lodegrees"]+$row["lominutes"]/60;<BR>$test_y[$i] =3D=20
    =
$row["ldegrees"]+$row["lminutes"]/60;<BR><BR><BR>if($test_x[$i]=3D=3D$x[$=
i-1] ||=20
    $test_y[$i]=3D=3D$y[$i-1])<BR>{<BR>--$i;<BR>}else<BR>{<BR><BR>$x[$i] =
=3D=20
    $test_x[$i];<BR>$y[$i] =3D=20
    =
$test_y[$i];<BR><BR>}<BR><BR>}<BR>mysql_free_result($result);<BR><BR><BR>=
for($k=3D1;$k&lt;=3D$i-1;++$k)<BR>{<BR>$pt-&gt;setXY($x[$k],=20
    =
$y[$k]);<BR>$shpFile-&gt;addPoint($pt);<BR>};<BR><BR>$pt-&gt;setXY($x[$i]=
,=20
    =
$y[$i]);<BR>$shpFile1-&gt;addPoint($pt);<BR><BR><BR>$shpFile-&gt;free();<=
BR>$shpFile1-&gt;free();<BR><BR>$def=20
    =3Darray(array("UNIQID", "C", 13),array("NOM", "C", =
128));<BR>$dbfFile =3D=20
    dbase_create($shpFname.".dbf", $def);<BR>dbase_add_record($dbfFile,=20
    array("1","TEST"));<BR><BR>$def =3Darray(array("UNIQID", "C", =
13),array("NOM",=20
    "C", 128));<BR>$dbfFile =3D dbase_create($shpFname1.".dbf",=20
    $def);<BR>dbase_add_record($dbfFile, =
array("1","TEST"));<BR><BR>$myMap =3D=20
    ms_newMapObj("demo_try.map");<BR><BR>#$myLayer =3D=20
    $myMap-&gt;getLayerByName("target1");<BR>#$myLayer-&gt;set("data",=20
    $shpFname);<BR>#$myLayer-&gt;set('status', MS_ON);<BR><BR><BR>if (=20
    isset($HTTP_POST_VARS["mapa_x"]) &amp;&amp;=20
    isset($HTTP_POST_VARS["mapa_y"])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &amp;&amp; !isset($HTTP_POST_VARS["full"]) )=20
    {<BR><BR>&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp; $extent_to_set =3D =
explode("=20
    ",$HTTP_POST_VARS["extent"]);<BR><BR><BR>$extent_to_set[0] =3D=20
    29.057;<BR>$extent_to_set[1] =3D 40.954;<BR>$extent_to_set[2] =3D=20
    29.143;<BR>$extent_to_set[3] =3D 40.999;<BR><BR><BR>&nbsp;=20
    =
$myMap-&gt;setextent($extent_to_set[0],$extent_to_set[1],<BR>&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
$extent_to_set[2],$extent_to_set[3]);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;=20
    $my_point =3D ms_newpointObj();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
$my_point-&gt;setXY($HTTP_POST_VARS["mapa_x"],$HTTP_POST_VARS["mapa_y"]);=
<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    $my_extent =3D =
ms_newrectObj();<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
$my_extent-&gt;setextent($extent_to_set[0],$extent_to_set[1],<BR>&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;=20
    =
$extent_to_set[2],$extent_to_set[3]);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;=20
    $zoom_factor =3D=20
    =
$HTTP_POST_VARS["zoom"]*$HTTP_POST_VARS["zsize"];<BR>&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;=20
    if ($zoom_factor =3D=3D 0)=20
    =
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;=20
    $zoom_factor =3D=20
    =
1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;=20
    $check_pan =3D=20
    =
"CHECKED";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    $check_zout =3D=20
    =
"";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;=20
    $check_zin =3D "";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else if =
($zoom_factor=20
    &lt; 0)=20
    =
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;=20
    $check_pan =3D=20
    =
"";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;=20
    $check_zout =3D=20
    =
"CHECKED";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    $check_zin =3D "";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else=20
    =
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;=20
    $check_pan =3D=20
    =
"";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;=20
    $check_zout =3D=20
    =
"";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;=20
    $check_zin =3D "CHECKED";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    }<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $val_zsize =3D=20
    abs($zoom_factor);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
$myMap-&gt;zoompoint($zoom_factor,$my_point,$myMap-&gt;width,$myMap-&gt;h=
eight,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    $my_extent);<BR><BR>}<BR>$img =3D $myMap-&gt;draw();<BR>$image_url =
=3D=20
    =
$img-&gt;saveWebImage(GIF,1,1,0);<BR><BR>?&gt;<BR>&lt;BODY&gt;<BR>&lt;cen=
ter&gt;<BR>&lt;table=20
    border=3D0 cellspacing=3D0 cellpadding=3D4=20
    bgcolor=3D"#FFFFFF"&gt;<BR>&lt;tr&gt;<BR>&lt;td valign=3D"top"=20
    align=3Dcenter&gt;<BR>&nbsp; &lt;table cellpadding=3D"0" =
cellspacing=3D"5"=20
    border=3D"5"&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;tr&gt;&lt;td=20
    colspan=3D"2"&gt;&lt;INPUT NAME=3D"mapa" TYPE=3D"image" =
SRC=3D"&lt;?php=20
    echo<BR>$image_url; ?&gt;" width=3D600 height=3D600=20
    border=3D0&gt;&lt;/td&gt;&lt;/tr&gt;<BR>&nbsp;&nbsp;&nbsp;=20
    &lt;tr&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    Pan<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    &lt;INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D0 &lt;?php echo=20
    $check_pan?&gt;&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    Zoom In<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    &lt;INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D1 &lt;?php echo=20
    $check_zin?&gt;&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    Zoom Out<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    &lt;INPUT TYPE=3DRADIO NAME=3D"zoom" VALUE=3D-1 &lt;?php=20
    echo<BR>$check_zout?&gt;&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    Zoom Size<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    &lt;INPUT TYPE=3DTEXT NAME=3D"zsize" VALUE=3D"&lt;?php echo=20
    =
$val_zsize?&gt;"<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;=20
    SIZE=3D2&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    Full Extent<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    =
&lt;TD&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;=20
    &lt;INPUT TYPE=3DSUBMIT NAME=3D"full"=20
    =
VALUE=3D"Go"<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;=20
    SIZE=3D2&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    &lt;/TD&gt;<BR>&lt;/TABLE&gt;<BR>&lt;INPUT TYPE=3DHIDDEN =
NAME=3D"extent"=20
    VALUE=3D"&lt;?php echo=20
    =
$extent_to_html?&gt;"&gt;<BR>&lt;/FORM&gt;<BR>&lt;/CENTER&gt;<BR><BR>&lt;=
/BODY&gt;<BR>&lt;/HTML&gt;<BR><BR><BR>current=20
    map file:<BR><BR>#<BR># Start of map file<BR>#<BR>NAME =
ERENKOY<BR>STATUS=20
    ON<BR>SIZE 600 600<BR>EXTENT 29.057 40.954 29.143 40.999<BR>UNITS=20
    DD<BR>SHAPEPATH "/var/www/html/mapserver/itasca/"<BR>IMAGECOLOR 255 =
255=20
    255<BR><BR>#OUTPUTFORMAT<BR>#&nbsp; NAME PNG<BR>#&nbsp; DRIVER=20
    "GD/PNG"<BR>#&nbsp; MIMETYPE "image/png"<BR>#&nbsp; IMAGEMODE=20
    PC256<BR>#&nbsp; EXTENSION "png"<BR>#END<BR><BR>IMAGETYPE=20
    GIF<BR><BR><BR>WEB<BR>&nbsp; MINSCALE 1000<BR>&nbsp; MAXSCALE=20
    1550000<BR>&nbsp; IMAGEPATH =
"/var/www/html/mapserver/tmp3/"<BR>&nbsp;=20
    IMAGEURL "/mapserver/tmp3/"<BR>&nbsp;END<BR><BR><BR>SYMBOL<BR>&nbsp; =
NAME=20
    'circle'<BR>&nbsp; TYPE ELLIPSE<BR>&nbsp; POINTS 1 1 END<BR>&nbsp; =
FILLED=20
    TRUE<BR>END<BR><BR><BR>LAYER<BR>&nbsp; NAME=20
    'ERENKOY_ORNEKILCE_PG_region'<BR>&nbsp; TYPE polygon<BR>&nbsp; =
STATUS=20
    DEFAULT<BR>&nbsp; DATA ERENKOY_ORNEKILCE_PG_region<BR><BR>&nbsp; =
CLASSITEM=20
    'ID'<BR>&nbsp; CLASS<BR>&nbsp;&nbsp;&nbsp; EXPRESSION=20
    '3'<BR>&nbsp;&nbsp;&nbsp; OUTLINECOLOR 128 128 =
128<BR>&nbsp;&nbsp;&nbsp;=20
    COLOR 225 225 185<BR>&nbsp; END<BR>&nbsp; =
CLASS<BR>&nbsp;&nbsp;&nbsp;=20
    EXPRESSION /./<BR>&nbsp;&nbsp;&nbsp; OUTLINECOLOR 128 128=20
    128<BR>&nbsp;&nbsp;&nbsp; COLOR 255 255 255<BR>&nbsp;=20
    END<BR>END<BR><BR>LAYER<BR>&nbsp;NAME=20
    ERENKOY_ORNEKMAHALLE_PG_region<BR>&nbsp; GROUP cities<BR>&nbsp; TYPE =

    polygon<BR>&nbsp;DATA ERENKOY_ORNEKMAHALLE_PG_region<BR>&nbsp; =
STATUS=20
    ON<BR>&nbsp;CLASSITEM=20
    'ID'<BR>&nbsp;CLASS<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
EXPRESSION=20
    /./<BR>COLOR 255 225 =
185<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
    OUTLINECOLOR 0 0 0<BR><BR>&nbsp; =
END<BR><BR><BR>END<BR><BR>LAYER<BR>&nbsp;=20
    NAME 'target2'<BR>&nbsp; TYPE point<BR>&nbsp; DATA target2<BR>&nbsp; =
STATUS=20
    ON<BR>&nbsp;&nbsp; CLASS<BR>&nbsp;&nbsp;&nbsp; SYMBOL=20
    'circle'<BR>&nbsp;&nbsp;&nbsp; COLOR 255 255 0<BR>&nbsp;&nbsp;&nbsp; =
SIZE=20
    20<BR>&nbsp;&nbsp;&nbsp;&nbsp; =
LABEL<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COLOR=20
    0 0 0<BR>&nbsp;&nbsp;&nbsp;&nbsp; END<BR>&nbsp;&nbsp;=20
    END<BR><BR><BR>END<BR><BR>LAYER<BR>&nbsp; NAME 'target1'<BR>&nbsp; =
TYPE=20
    point<BR>&nbsp; DATA target1<BR>&nbsp; STATUS ON<BR>&nbsp;&nbsp;=20
    CLASS<BR>&nbsp;&nbsp;&nbsp; SYMBOL 'circle'<BR>&nbsp;&nbsp;&nbsp; =
COLOR 255=20
    0 0<BR>&nbsp;&nbsp;&nbsp; SIZE 4<BR>&nbsp;&nbsp;&nbsp;&nbsp;=20
    LABEL<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COLOR 0 0=20
    0<BR>&nbsp;&nbsp;&nbsp;&nbsp; END<BR>&nbsp;&nbsp;=20
    END<BR><BR><BR>END<BR><BR>END # end of map=20
file<BR><BR><BR></DIV></BLOCKQUOTE></BLOCKQUOTE></FONT></BODY></HTML>

------=_NextPart_000_009B_01C3A44F.2B920F70--




More information about the mapserver-users mailing list