summaryrefslogtreecommitdiff
path: root/recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch')
-rw-r--r--recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch128
1 files changed, 128 insertions, 0 deletions
diff --git a/recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch b/recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch
new file mode 100644
index 0000000000..878cb1dba9
--- /dev/null
+++ b/recipes/gpsdrive/gpsdrive-2.10pre4/gpsdrive-2.10pre4-openstreetmap-download.patch
@@ -0,0 +1,128 @@
+diff -ur gpsdrive-2.10pre4.orig/scripts/gpsfetchmap.pl gpsdrive-2.10pre4/scripts/gpsfetchmap.pl
+--- gpsdrive-2.10pre4.orig/scripts/gpsfetchmap.pl 2007-12-28 18:49:44.000000000 +0100
++++ gpsdrive-2.10pre4/scripts/gpsfetchmap.pl 2008-01-04 19:01:35.000000000 +0100
+@@ -35,6 +35,7 @@
+ modified (Jul 2005) by Jaroslaw Zachwieja <grok\@filippa.org.uk>
+ modified (Dec 2005) by David Pollard <david dot pollard\@optusnet.com.au>
+ modified (Jul 2007) by Maciek Kaliszewski <mkalkal\@interia.pl>
++modified (Jan 2008) by Gernot Hillier <gernot\@hillier.de> (added Openstreetmap support)
+ Version svn-$Version
+ ";
+
+@@ -176,6 +177,25 @@
+ 15812 => 3 ,
+ 7906 => 2,
+ 3953 => 1
++ },
++ openstreetmap_tah => {
++ 256*576000 => 1,
++ 128*576000 => 2,
++ 64*576000 => 3,
++ 32*576000 => 4,
++ 16*576000 => 5,
++ 8*576000 => 6,
++ 4*576000 => 7,
++ 2*576000 => 8,
++ 576000 => 9,
++ 288000 => 10,
++ 144000 => 11,
++ 72000 => 12,
++ 36000 => 13,
++ 18000 => 14,
++ 9000 => 15,
++ 4500 => 16,
++ 2250 => 17
+ }
+ };
+
+@@ -331,7 +351,6 @@
+ exit();
+ }
+
+-
+ # Verify that we have the options that we need
+ pod2usage(1) if (&error_check);
+
+@@ -417,6 +436,13 @@
+ print "+-----------------------------------------------------------+\n";
+ print "| Landsat Maps are Copyright, ..... |\n";
+ print "| They are free for non commercial use. |\n";
++}elsif ( $mapserver eq 'openstreetmap_tah' ){
++ print "+-----------------------------------------------------------+\n";
++ print "| OpenStreetmap Maps are Copyright by the OpenStreetmap |\n";
++ print "| project. |\n";
++ print "| They are free for use under the terms of the |\n";
++ print "| Creative Commons \"Attribution-Share Alike 2.0 Generic\" |\n";
++ print "| license. See http://www.openstreetmap.org for details. |\n";
+ } elsif ( ! $force) {
+ print "You are violating the map servers copyright!\n";
+ print "Are you sure you want to continue? [y|n] ";
+@@ -700,6 +726,11 @@
+ {
+ ($url,$mapscale)=googlemap_url($lati,$long,$scale);
+ }
++ elsif ( $mapserver eq 'openstreetmap_tah')
++ {
++ $filename=~s/\.gif/.png/;
++ ($url,$mapscale)=openstreetmap_tah_url($lati,$long,$scale);
++ }
+ else
+ {
+ print "Unknown map sever :", $mapserver, "\n";
+@@ -935,6 +966,37 @@
+ return ($url,$mapscale);
+ }
+
++#############################################################################
++sub openstreetmap_tah_url($$$){
++ my $lati = shift;
++ my $long = shift;
++ my $scale = shift;
++
++ my $mapscale = $scale;
++ my $zoom = undef;
++ for my $s ( sort keys %{$Scale2Zoom->{openstreetmap_tah}} ) {
++ next unless $s == $scale;
++ $zoom = $Scale2Zoom->{openstreetmap_tah}->{$s};
++ $mapscale = $s;
++ last;
++ }
++
++ unless ( $zoom ) {
++ print "Error calculating Zoomlevel for Scale: $scale\n";
++ return (undef,undef);
++ }
++
++ if ($debug) {
++ print "\n";
++ print "Using openstreetmap_tah zoom ", $zoom, " for requested scale ", $scale, ":1 actual scale ", $mapscale, ":1\n";
++ print "lat: $lati\n";
++ print "lon: $long\n";
++ }
++
++ my $url = "http://tah.openstreetmap.org/MapOf/?lat=$lati&long=$long&z=$zoom&w=1280&h=1024&format=png";
++# print "$url\n";
++ return ($url,$mapscale);
++}
+
+ #############################################################################
+ sub eniro_url($$$){
+@@ -2284,7 +2346,7 @@
+ =item B<--mapserver <MAPSERVER>>
+
+ Mapserver to download from. Default: 'expedia'.
+-Currently can use: landsat or expedia.
++Currently usable: landsat, expedia or openstreetmap_tah.
+
+ geoscience, gov_au, incrementp, googlesat, googlemap and eniro have download stubs,
+ but they are !!!NOT!!!! in the right scale.
+@@ -2294,6 +2356,9 @@
+
+ landsat covers the whole world with satelite Photos
+
++openstreetmap_tah: Free maps from the OpenStreetmap Tiles@Home project, see
++ http://www.openstreetmap.org and http://tah.openstreetmap.org.
++
+ gov_au is for Australia
+
+ incrementp for japanese Maps