viernes, 17 de diciembre de 2010

mcx2gpx

Convierte informacion de calibracion de imagen de un archivo mcx en un mosaico.gpx.
demo:
http://dev.gervan.com.ar/gps/mcx2gpx/mcx2gpx.php

download

php source:

// mcx2gpx
// 2010 Fabian Gervan.
$action=$_GET['action'];
if (!$action) {
echo "MCX2GPX<br>";
echo '<form method=post action="mcx2gpx.php?action=convert">
<textarea name=data cols=90 rows=25>paste here .mcx content</textarea><input type=submit>';
die;
}
if ($action=='convert') {
f_put_contents('1.mcx',$_POST['data']);
}
$gestor = fopen("1.mcx", "r");

if ($gestor) {
$buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096);
$buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096);

$lon1=substr($buffer,31,10);
$lat1=substr($buffer,55,10);


$buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096);

$lon2=substr($buffer,31,10);
$lat2=substr($buffer,55,10);

$buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096);

$lon3=substr($buffer,31,10);
$lat3=substr($buffer,55,10);

$buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096); $buffer = fgets($gestor, 4096);

$lon4=substr($buffer,31,10);
$lat4=substr($buffer,55,10);
fclose($gestor);

header("Content-Type: application/octet-stream; ");
header("Content-Disposition: attachment; filename=\"fagcode".date("Y-m-d_Hi").".gpx\"");
header("Content-Transfer-Encoding:­ binary");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>

<gpx
version=\"1.0\"
creator=\"GPSBabel - http://www.gpsbabel.org\"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
xmlns=\"http://www.topografix.com/GPX/1/0\"
xsi:schemaLocation=\"http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd\">

<time>2010-09-12T21:10:35Z</time>
<trk>
<trkseg>
<trkpt lat=\"$lat1\" lon=\"$lon1\">
</trkpt>
<trkpt lat=\"$lat2\" lon=\"$lon2\">

</trkpt>
<trkpt lat=\"$lat4\" lon=\"$lon4\">
</trkpt>
<trkpt lat=\"$lat3\" lon=\"$lon3\">
</trkpt>

<trkpt lat=\"$lat1\" lon=\"$lon1\">
</trkpt>
</trkseg>
</trk>
</gpx>";
}

die;
function f_put_contents($filename, $data) {
$f = @fopen($filename, 'w');
if (!$f) {
return false;
} else {
$bytes = fwrite($f, $data);
fclose($f);
return $bytes;
}
}

No hay comentarios: