Datei:ADL-Kartenvorlage fuer Modifikation.svg

Aus Shadowhelix
Zur Navigation springen Zur Suche springen

Originaldatei(SVG-Datei, Basisgröße: 1.000 × 1.294 Pixel, Dateigröße: 400 KB)

Übersicht
Lizenz Creative Commons Attribution-Noncommercial Unported 3.0
Kartenauschnitt 5.7° oestl. Laenge, 15.3° oestl. Laenge, 47.2° noerdl. Breite, 55° noerdl. Breite
Projektion Mercator-Projektion
Datenquelle Global Administrative Areas [1]
Shadowrun-Karten (in Form übertragener Geodaten)
Beschreibung ADL-Kartenvorlage zur Modifikation

Skript zur Einfärbung

Folgendes Perlskript sollte in eine Datei mit der Endung .pl kopiert werden. Zur Ausführung benötigt man Perl (auf den meisten Linuxdistributionen vorinstalliert). Gegebenenfalls muss auch das "Encode"-Paket z.B. über CPAN nachinstalliert werden.

use strict;
use utf8;
use Encode;

my $filename;
unless ($filename = $ARGV[0]) {
	$filename = 0;
}

my $restyle_file = "restyle.dat";
my $output_file = $filename.".changed";

my %restyle;
open(IN,$restyle_file);
	while(defined(my $i = decode("utf8", <IN>))) {
		my @entry = split /\t/, $i;
		$restyle{$entry[0]} = $entry[1];
	}
close(IN);

my $text;
open(IN,$filename);
	while(defined(my $i = decode("utf8", <IN>))) {
		if ($i =~ /<path id="([^\/]+)\/[0-9][0-9][0-9][0-9]" style=".+ fill:/) {
			if ($restyle{$1}) {
				my $newfill = $restyle{$1};
				$i =~ s/(<path id="[^\/]+\/[0-9][0-9][0-9][0-9]" style=".+ fill:)[^;]+;/$1$newfill/;
			}
		}
		$text = $text.$i;
	}
close(IN);

open(OUT,"> $output_file");
	print OUT encode("utf8",$text);
close(OUT);

Das Skript benötigt eine weitere Datei, "restyle.dat", die eine Liste von Ländern enthält, die neueingefärbt werden sollen, sowie die zugehörige Farbe, beides getrennt mit einem Tabulator. Farben können mit Namen angeben werden (siehe diese Liste) oder in der gängigen Hexadezimaldarstellung mit vorangestelltem Doppelkreuz (#). Jedes Land/Farbe-Paar muss in einer eigenen Zeile stehen. Die Ländernamen können im SVG gefunden werden, sie stehen jeweils im ersten Teil des id-Attributs eines Pathelements ggf. einfach die Suchfunktion einsetzen.

Beispiel (\t steht für einen Tabulatorabstand):

Westrhein-Luxemburg\t#0000FF
Pomorya\tred

Der Skriptaufruf erfolgt mit:

perl skriptname.pl ADL-Karte.svg

Anschließend sollte die Datei ADL-Karte.changed erzeugt worden sein, die eine entsprechend restyle.dat neueingefärbte Weltkarte darstellt.

Dateiversionen

Klicke auf einen Zeitpunkt, um diese Version zu laden.

Version vomVorschaubildMaßeBenutzerKommentar
aktuell23:02, 11. Jun. 2014Vorschaubild der Version vom 23:02, 11. Jun. 20141.000 × 1.294 (400 KB)Loki (Diskussion | Beiträge)
21:48, 10. Jun. 2014Vorschaubild der Version vom 21:48, 10. Jun. 20141.000 × 1.294 (401 KB)Loki (Diskussion | Beiträge)
14:11, 10. Jun. 2014Vorschaubild der Version vom 14:11, 10. Jun. 20141.000 × 1.294 (401 KB)Loki (Diskussion | Beiträge)Korrektur Bayern, Franken +Sonderzonengrenze
13:02, 10. Jun. 2014Vorschaubild der Version vom 13:02, 10. Jun. 20141.000 × 1.294 (401 KB)Loki (Diskussion | Beiträge){{Karteninfo |LIZENZ=[http://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-Noncommercial Unported 3.0] |AUSSCHNITT=5.7° oestl. Laenge, 15.3° oestl. Laenge, 47.2° noerdl. Breite, 55° noerdl. Breite |PROJEKTION=Mercator-Projekt…

Die folgende Seite verwendet diese Datei:

Metadaten