Boole Magnetic Declination Ima icon

Boole Magnetic Declination Ima

1.01

Chạm vào một điểm trên bản đồ thế giới và lấy độ lệch từ tính từ phía bắc

App Information

Phiên bản
Cập nhật
16 th 12, 2018
Nhà phát triển
Thể loại
Lượt cài đặt
1.000+

App Names

App Description
Touch a point at the world map and get Magnetic North Deviation.
When using a GPS position, the compass presents the True (geographic) North and the Magnetic North.
When pointed trough map, card is locked top, and the Arrow points to Magnet variation, the declination related to the geographic north.
An educational purposes application and is intended just for study the canvas behavior,
to use it as a table to query data from a bidimensional information source, using the MIT App Inventor framework.

The source code is available at:
http://ai2.appinventor.mit.edu/
and search for: Boole Magnetic Declination

The source of the data is the NOAA software obtained from: https://ngdc.noaa.gov/geomag/geomag.shtml

The world map with the declinations lines was obtained from https://www.ngdc.noaa.gov/geomag/magfield-wist/

Once a grid table Declination-89to90.csv has generated from the software wmm_grid.exe, ask for Declination information from -89 until +90 latitude, and from -179 until 180 longitude, 1 degree step, 2019 dated, at 3 km altitude, a png image has generate based on this PHP script:
$im = @imagecreatetruecolor(360,180)
or die("Cannot Initialize new GD image stream");


if ($i<=0) {
$b = intval(abs($i/32)) * 4 ;
$g = (abs($i) % 32)*8;
}

if ($i>0) {
$r = intval(abs($i/32)) * 4 ;
$g = (abs($i) % 32) * 8;
}

printf( "creating color".$i."
\n");
${"color".$i} = imagecolorallocate ( $im, $r,$g,$b );
}

$row = 1;
if (($handle = fopen("Declination-89to90.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "

$num campos na linha $row:

\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $c." > ".$data[$c] . "
\n";
}
$x = 179+$data[1];
$y = 89+($data[0]* (-1));
$color= "color".$data[2]*1;
echo "creating $im , $x , $y , $color
";
imagesetpixel ( $im , $x , $y , ${$color} );
}
fclose($handle);
}


imagepng($im, "Declination_image-89to90.png",0);

imagedestroy($im);

All links above was accessed at 14 October, 2018

At the application, the image above is used as Background image on the canvas, and dragging the finger at the canvas will point a pixel that is checked about its colors.

The Red and Blue are positive and negative deviations, and the green is the lower fraction of the value. As you can see at the source code

I expect you enjoy the application and more information or ideas can be sent to me by: antonio@boolesystems.com
Đọc thêm