Dyskusja Wikipedii:Atlas wikipedystów/Mapa świata
Z Wikipedii, wolnej encyclopedia
To ja napisalem programik (w perlu), ktory przelicza współrzędne na pixele, korzystając z interpolacyjnej definicji odwzorowania Robinsona. Trzeba jeszcze troszkę lepiej dobrać parametry $XSCALE, $XSIZE, $YSCALE, $YORIGIN, $XORIGIN.
Czy ktoś wie, jak to można umieścić w Wikipedii, żeby liczyło automatycznie? Jak nie, to mogę zrobić cgi na zewnętrznym serwerze.
Kod jest w poniżej:
Ja, twórca tego pliku, niniejszym udostępniam go na poniższej licencji:
|
Anzelm 21:44, 25 lut 2006 (CET)
#!/usr/bin/perl # This is free software. # Original version by Anzelm (02-25-2006) # # Usage: robinson.pl LONG, LAT # LONG, LAT in degrees, LONG is negative West, positive East. LAT positive North my $XSCALE = 1120; # map x scale in pixels my $XSIZE = 1000; # map x size in pixels my $YSCALE = 540; # map size in pixels, from pole to pole, actual map may be smaller # if arctic / antarctic not pictured my $YORIGIN = 269; # equator on map (pixels) my $XORIGIN = 30; # longitude of center of map (degrees) ($long,$lat) = ($ARGV[0], $ARGV[1]); $rel_long = $long - $XORIGIN; $rel_long += 360 if ($rel_long<-180); $rel_long -= 360 if ($rel_long> 180); @a = qw /00 1.0000 0.0000 05 0.9986 0.0620 10 0.9954 0.1240 15 0.9900 0.1860 20 0.9822 0.2480 25 0.9730 0.3100 30 0.9600 0.3720 35 0.9427 0.4340 40 0.9216 0.4958 45 0.8962 0.5571 50 0.8679 0.6176 55 0.8350 0.6769 60 0.7986 0.7346 65 0.7597 0.7903 70 0.7186 0.8435 75 0.6732 0.8936 80 0.6213 0.9394 85 0.5722 0.9761 90 0.5322 1.0000 /; for (0..18) { $plen{5*$_} = $a[3*$_+1]; $pdfe{5*$_} = $a[3*$_+2]; }; @k = sort {$a<=>$b} keys %plen; my $abslat = abs($lat); my $kk; for $k (0..17) { $kk = $k; last if (5*($kk+1) > $abslat); }; $rat = ($abslat - 5*($kk))/5.0; $PLEN = $plen{5*$kk} + $rat * ($plen{5*($kk+1)} - $plen{5*$kk}); $PDFE = $pdfe{5*$kk} + $rat * ($pdfe{5*($kk+1)} - $pdfe{5*$kk}); $PDFE = -$PDFE if ($lat < 0); $XPOS = $XSIZE/2 + $XSCALE * ( $PLEN * $rel_long / 360 ); $YPOS = $YORIGIN - $PDFE * $YSCALE * 0.5; print $XPOS, "\t", $YPOS, "\n"; exit;
Using Image:Earthmap1000x500.jpg the points are not in the right place. To unify the polish datas with the datas in other languages, it would be necessary to change the points coordinates Arno Lagrange ✉ 19:43, 1 lis 2006 (CET)
See Wikipedia:Atlas wikipedystów/Świat cały Arno Lagrange ✉ 10:34, 2 lis 2006 (CET)