Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort
Vorwort
1 PEAR – Einführung
2 Authentication
3 Caching
4 Date and Time
5 File Formats
6 HTTP
7 Internationalization
8 Mail
9 Networking
10 PHP
11 Text
12 Web Services
13 Benchmarking
14 Configuration
15 Database
16 File System
17 HTML
18 Images
19 Logging
20 Math
21 Numbers
22 Tools and Utilities
23 XML
24 Selbst Pakete erstellen
25 PECL
Index
Ihre Meinung?

Spacer
 <<   zurück
PHP PEAR von Carsten Möhrke
Anwendung und Entwicklung – Erweiterungen für PHP schreiben
Buch: PHP PEAR

PHP PEAR
798 S., 39,90 Euro
Rheinwerk Computing
ISBN 3-89842-580-0
gp 18 Images
  gp 18.1 Image_Barcode
  gp 18.2 Image_Text
  gp 18.3 Image_GIS
  gp 18.4 Image_Color
  gp 18.5 Image_Graph
    gp 18.5.1 Farben
    gp 18.5.2 Linien
    gp 18.5.3 Füllungen
    gp 18.5.4 Schriftarten
    gp 18.5.5 Die Achsen
    gp 18.5.6 Gitternetz
    gp 18.5.7 Diagrammtypen


Rheinwerk Computing

18.3 Image_GIS  toptop


Besprochene Version: 1.1.1 Lizenz: PHP-Lizenz 2.02
Klassendatei(en): Image/GIS.php

Eines meiner Lieblingspakete ist Image_GIS von Jan Kneschke und Sebastian Bergmann. Die Abkürzung GIS steht für »Geografische Informationssysteme«, und Sie haben mit dem Paket die Möglichkeit, auf einfachste Art und Weise Landkarten zeichnen zu lassen. Allerdings benötigt das Paket GIS-Daten von den Regionen, die gezeichnet werden sollen. Logischerweise kann das Paket nicht alle Daten von allen Ländern mitbringen, weil das Datenvolumen einfach viel zu groß wäre und sich auch Copyright-Probleme ergeben könnten.

Aber all das ist kein Problem, da Sie die Daten kostenlos bei der GeoCommunity unter www.geocomm.com herunterladen können. Für einzelne Informationen wie Straßen, Landesgrenzen, Gewässer etc. sind jeweils eigene Dateien im E00-Format vorgesehen.

Nachdem Sie die Dateien heruntergeladen haben, können Sie auch schon loslegen. Hierzu übergeben Sie dem Konstruktor die Information, wie groß die zu erstellende Abbildung werden soll. Sie können ein Array übergeben, das über die Schlüssel height und width verfügt und die entsprechenden Angaben als Werte enthält. Maximal darf eine solche Grafik 2048 Pixel hoch oder breit sein. Geben Sie keine Größe an, wird die Datei automatisch 640 x 480 Pixel groß.

Die geografischen Informationen, die in der Grafik vertreten sein sollen, müssen danach jeweils mithilfe der Daten-Dateien hinzugefügt werden. Die Methode addDataFile(), die das für Sie übernimmt, bekommt den Namen der Datendatei und die Farbe übergeben, in der die Linien gezeichnet werden sollen. Die Farbe können Sie hierbei über ihren Namen, also beispielsweise red, green, black, blue, gray angeben, oder Sie nutzen eine hexadezimale Farbangabe.

require_once 'Image/GIS.php'; 
 
$groesse=array( 
            'width'  => 490, 
            'height' => 550 
         ); 
 
$map = new Image_GIS($groesse); 
 
$map->addDataFile('./PONET.E00', 'gray'); 
$map->addDataFile('./RDLINE.E00', 'black'); 
$map->addDataFile('./DNNET.E00', 'blue'); 
$map->addDataFile('./PPPOLY.E00', '#ff0000'); 
 
$map->setRange(5, 17.2, 47, 55.1); 
 
$map->saveImage('deutschland.png'); 
echo 'Daten gespeichert';

Listing 18.5 Ausgabe einer Deutschlandkarte mit PEAR::Image_GIS

Die Methode setRange() bekommt vier Werte übergeben. Bei diesen vier Fließkommazahlen handelt es sich um die Angabe der Längen- und Breitengrade. Der erste Wert sagt aus, an welchem Längengrad die Ausgabe der Karte beginnen soll, und der zweite definiert, an welchem Längengrad sie endet. Das zweite Koordinatenpaar bezeichnet den ersten und letzten Breitengrad, der auf der Karte dargestellt werden soll. Um diese Koordinaten zu bestimmen, können Sie auf eine »konventionelle« Landkarte zurückgreifen.

Es empfiehlt sich, eine einmal berechnete Karte als Datei abzuspeichern, da die Erstellung sehr ressourcenintensiv ist, wie Sie feststellen werden. Neben der recht langen Rechenzeit benötigen die Scripts auch sehr viel Speicher. Daher kann es sein, dass Sie die PHP-Konfigurationsdatei überarbeiten müssen, um Ihren Scripts mehr Speicher zuzubilligen.

Möchten Sie die Datei dennoch direkt an den Client senden, können Sie an Stelle der Methode saveImage(), die die Datei speichert, die Methode showImage() nutzen.

Standardmäßig werden die Dateien im PNG-Format erstellt. Allerdings unterstützt das Paket auch den Datentyp SVG, den Sie selektieren können, wenn Sie das Array, das dem Konstruktor beim Instanziieren übergeben wird, um den Schlüssel renderer erweitern, der auf den Wert SVG verweisen muss.

Abbildung 18.4 Mit PEAR::Image_GIS generierte Deutschlandkarte

 <<   zurück
     
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: PHP PEAR
PHP PEAR
Jetzt Buch bestellen!
 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchtipps
Zum Rheinwerk-Shop: PHP 5.6 und MySQL 5.7






 PHP 5.6 und
 MySQL 5.7


Zum Rheinwerk-Shop: Einstieg in PHP 5.6 und MySQL 5.6






 Einstieg in PHP 5.6
 und MySQL 5.6


Zum Rheinwerk-Shop: Responsive Webdesign






 Responsive Webdesign


Zum Rheinwerk-Shop: Moderne Websites entwickeln






 Moderne Websites
 entwickeln


Zum Rheinwerk-Shop: MySQL 5.6






 MySQL 5.6


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo








Copyright © Rheinwerk Verlag GmbH 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern