Aitab.

Kuna mul pole imagemagicut installitud ja ei viitsinud hakata seda väga torkima, siis üldpildi kättesaamiseks tuleb kasutada kavalust. Mina tarbin selleks Firefoxi pluginit Screengrab, mis teeb siis kogu veebilehest pildi.
Võibolla on kogu selle tegevuse jaoks mõni parem tööriist olemas, kuid mulle pole kahjuks ette sattunud. Nii mõnigi programm oskab WMS infot tõmmata ja kihina kaardile kuvada, kuid pildi kätte saamise või printimise puhul on alati hambad.
Edaspidi igaljuhul on minu kaartide ettevalmistamine palju lühemaajalisem ning saab rohkem aega kulutada trajektoori enda tuunimisele.
Kujundus on muidugi nagu on, aga nuppude tähendus võiks enamvähem loogiline olla.Ja mõõtkava temaatikast pole ma ennast veel läbi närinud. Kui viitsin, siis millagi uurin. Senimaani tuleb loovalt läheneda.
Kes soovib see proovib. Heade soovituste puhul võib teada anda.
<html>
<head><title>wms kaardi kodu</title>
</head><body>
<?php
if(!isset($x)) $x = "553675";
if(!isset($y)) $y = "6580486";
if(!isset($xsize)) $xsize = "1000";
if(!isset($ysize)) $ysize = "1000";
if(!isset($tilex)) $tilex = "3";
if(!isset($tiley)) $tiley = "3";
if(!isset($pixels)) $pixels = "300";
if(!isset($layer)) $layer = "ALUSKAART";
if(!isset($grid)) $grid = "0";
$layers = array('ALUSKAART' => "pohi_vr2",
'ORTO'=>"of10000",
'MV-ALUSKAART' => 'pohi_mvr2');
$imgurl = "http://kaart.maaamet.ee/wms/alus?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&FORMAT=image/png&LAYERS=".
$layers["$layer"]."&STYLES=&SRS=EPSG:3301";
$height = $pixels;
$width = $pixels;
$imgheight = "height=$height";
$imgwidth = "width=$width";
$zoomfactorx = $xsize;
$zoomfactory = $ysize;
if (isset($pan)) {
if ($pan == 'left') $x-=$zoomfactorx;
if ($pan == 'right') $x+=$zoomfactorx;
if ($pan == 'up') $y+=$zoomfactory;
if ($pan == 'down') $y-=$zoomfactory;
}
if(isset($submit) && $submit == 'zoomout') {
$xsize +=round($zoomfactorx/4);
$ysize +=round($zoomfactory/4);
} else if(isset($submit) && $submit == 'zoomin') {
$xsize -=round($zoomfactorx/4);
$ysize -=round($zoomfactory/4);
}
$sx = $x-round(($tilex*$xsize)/2);
$sy = $y+round(($tiley*$ysize)/2)-$ysize;
for ($i=-1;$i>=-$tiley;$i--) { //y
for ($j=0;$j<$tilex;$j++) { // x
$x1 = $sx+($j*$xsize);
$y1 = $sy+$i*$ysize;
$x2 = $x1+$xsize;
$y2 = $y1+$ysize;
$bbox = "bbox=$x1,$y1,$x2,$y2";
$imgurl2 = $imgurl."&$imgheight&$imgwidth&$bbox";
$images .= "<img border=$grid margin=0 src=\"$imgurl2\" />";
}
}
$divwidth = $width*$tilex+30;
$divheight = $height*$tiley+30;
?>
<form action="<?=$PHP_SELF?>" >
x<input type="text" name="x" value="<?=$x?>">
suurus<input type="text" name="xsize" value="<?=$xsize?>">
<br />y<input type="text" name="y" value="<?=$y?>">
suurus<input type="text" name="ysize" value="<?=$ysize?>">
<br /><input type="submit" name="submit" value="zoomin">
<input type="submit" name="submit" value="zoomout">
<div>
<input type="submit" name="pan" value="left">
<input type="submit" name="pan" value="up">
<input type="submit" name="pan" value="down">
<input type="submit" name="pan" value="right">
</div>
<select name="layer"><? print makeoption(array_keys($layers), false, $layer)?></select>
pilte <input type="text" size="2" name="tilex" value="<?=$tilex?>"> * <input type="text" size="2" name="tiley" value="<?=$tiley?>">
pixleid (<2048) <input type="text" size="4" name="pixels" value="<?=$pixels?>">
Grid <input type="checkbox" name="grid" value="1" <? if($grid==1) echo "checked";?>>
<br /><input style="width:200;height:50;" type="submit" name="submit" value="uuenda">
</form>
<div style="border:2px;width:<?=$divwidth?>px;height:<?=$divheight?>px;" >
<?=$images?>
</div>
<?php
function makeoption($data, $keys, $sel='') {
$result = '';
if (is_array($data) && count($data) >0) {
while (list($key, $val) = each($data)) {
if ($keys != true) $key = $val;
if ($key == $sel) $s = "selected";
else $s = '';
$result .= "<option value=\"$key\" $s>$val</option>\n";
}
}
return $result;
}
?>
</body></html>