Esempio n. 1
0
function MakeTile($image, $x, $y, $zoom)
{
    $proj = new Mercator($zoom, G_TILE_SIZE);
    $lonL = $proj->Lon($x * G_TILE_SIZE);
    $lonR = $proj->Lon(($x + 1) * G_TILE_SIZE);
    $lonBound[0] = $lonL;
    $nextBound = floor($lonL / SRTM_TILE_SIZE_DEG) * SRTM_TILE_SIZE_DEG + SRTM_TILE_SIZE_DEG;
    for ($i = 1;; $i++) {
        if ($nextBound >= $lonR) {
            break;
        }
        $lonBound[$i] = $nextBound;
        $nextBound += SRTM_TILE_SIZE_DEG;
    }
    $lonBound[$i] = $lonR;
    $latT = $proj->Lat($y * G_TILE_SIZE);
    $latB = $proj->Lat(($y + 1) * G_TILE_SIZE);
    $latBound[0] = $latB;
    $nextBound = floor($latB / SRTM_TILE_SIZE_DEG) * SRTM_TILE_SIZE_DEG + SRTM_TILE_SIZE_DEG;
    for ($j = 1;; $j++) {
        if ($nextBound >= $latT) {
            break;
        }
        $latBound[$j] = $nextBound;
        $nextBound += SRTM_TILE_SIZE_DEG;
    }
    $latBound[$j] = $latT;
    for ($latIdx = 0; $latIdx < $j; $latIdx++) {
        for ($lonIdx = 0; $lonIdx < $i; $lonIdx++) {
            MakeBlock($image, $lonBound[$lonIdx], $lonBound[$lonIdx + 1], $latBound[$latIdx], $latBound[$latIdx + 1], $proj);
        }
    }
}
Esempio n. 2
0
    $result = mysql_query($query) or die('Query error: ' . mysql_error());
    if (mysql_num_rows($result) == 1) {
        $position = mysql_fetch_object($result);
        // Center psotion
        $lat = isset($_GET['lat']) ? floatval($_GET['lat']) : $position->latitude;
        $lon = isset($_GET['lon']) ? floatval($_GET['lon']) : $position->longitude;
        $img = sprintf("Date: {$position->time}<br/>\n" . "Lieu: " . getNearbyPlace($position->latitude, $position->longitude) . " [" . $position->latitude . " - " . $position->longitude . "]<br/>\n" . "h: " . $position->elevation . "m (" . max(0, $position->elevation - GetElevGnd($position->latitude, $position->longitude)) . "m/sol)<br/>\n" . "<img src='http://maps.google.com/staticmap?zoom=%d&size={$w}x{$h}&" . "center={$lat},{$lon}&" . "maptype=mobile&markers={$position->latitude},{$position->longitude},smallgreen&" . "key=ABQIAAAAJPvmQMZVrrV3inIwT2t4RBQf-JSUIEMNUNF63gcoYgskNGvaZRQmUvzGcFUdj4nlylxP8SK4sRKYsg'></img>\n", $zoom);
        $zoomIn = $zoomOut = $up = $down = $left = $right = "<a href='http://" . $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'] . "?id=" . $_GET['id'];
        $zoomIn .= "&zoom=" . ($zoom + 1) . "&lat={$lat}&lon={$lon}'>+</a>\n";
        $zoomOut .= "&zoom=" . ($zoom - 1) . "&lat={$lat}&lon={$lon}'>-</a>\n";
        $projection = new Mercator($zoom, 256);
        $latUp = $latDown = $projection->Y($lat);
        $lonLeft = $lonRight = $projection->X($lon);
        $latUp = $projection->Lat($latUp - $h / 2);
        $latDown = $projection->Lat($latDown + $h / 2);
        $lonLeft = $projection->Lon($lonLeft - $w / 2);
        $lonRight = $projection->Lon($lonRight + $w / 2);
        $up .= "&zoom={$zoom}&lat={$latUp}&lon={$lon}'>^</a>\n";
        $down .= "&zoom={$zoom}&lat={$latDown}&lon={$lon}'>V</a>\n";
        $left .= "&zoom={$zoom}&lat={$lat}&lon={$lonLeft}'>&lt;</a>\n";
        $right .= "&zoom={$zoom}&lat={$lat}&lon={$lonRight}'>&gt;</a>\n";
        echo "{$img}<br/>{$zoomIn} | {$zoomOut} | {$up} | {$down} | {$left} | {$right}";
    } else {
        echo "No map available";
    }
    mysql_close($link);
} else {
    ?>
    <form action="<?php 
    echo $_SERVER['PHP_SELF'];
    ?>