next up previous contents index
Next: GRASS im praktischen Einsatz: Up: Kartenausgabe Previous: Kartengestaltung mit xfig   Contents   Index


Die Benutzung des CELL-Treibers

Alternativ zu ps.map kann es interessant sein, Karten aus GRASS hochauflösend für andere Programme (z.B. zur Postergestaltung) zu exportieren. Prinzipiell können alle im GRASS-Monitor darstellbaren Abbildungen (das heisst alle Datentypen) über den speziellen CELL-Treiber in eine Datei umgelenkt werden. Die Auflösung lässt sich beliebig hoch einstellen, limitierend sind eventuell nur die entstehenden Dateigrößen.

Wenn also Karten aus GRASS exportiert werden sollen, die sowohl Raster- als auch Vektordaten beinhalten, haben "`Bildschirmfotos"' bekanntlich nur eine geringe Qualität. Daher wurde der CELL-Treiber geschaffen, der sich wie ein GRASS-Monitor verhält. Dieser Treiber wird gestartet, und alles, was nun über die Display-Befehle sonst angezeigt wird, in eine Datei umgeleitet, bis der Treiber wieder beendet wird. Der CELL-Treiber erzeugt Rasterdaten, dargestellte Vektordaten werden in das Rasterformat umgewandelt. Bei hoher Auflösung ist diese Umwandlung kaum erkennbar.

Ist die CELL-Ergebniskarte erzeugt (GRASS-Rasterdatei: D cell), kann sie beispielsweise mit $ r.out.tiff exportiert werden. Die Schwierigkeit bei der Benutzung des Treibers besteht da"-rin, dass man nicht sehen kann, was passiert. Er muss quasi "`blind"' bedient werden (deshalb ist anzuraten, vorher den Ablauf mit dem normalen GRASS-Monitor zu üben oder ein kleines Script zu schreiben).

Das genaue Verfahren läuft folgendermaßen ab:

  1. Die Größe der Ergebniskarte ist anhand von zwei Umgebungsvariablen im GRASS-Fenster festzulegen (Pixelanzahl in x- bzw. y-Richtung)

    $ export GRASS WIDTH=xxx

    $ export GRASS HEIGHT=yyy

    Beispiel (1500 $\ast$ 1000):

    $ export GRASS WIDTH=1500

    $ export GRASS HEIGHT=1000

  2. Dann wird der CELL-Treiber gestartet (dauert je nach Rechnergeschwindigkeit etwas, da der oben definierte Speicherplatz nun reserviert wird):

    $ d.mon start=CELL

  3. Nun können alle Anzeigemodule für Karten, Legenden usw. von GRASS (d.*-Befehle) benutzt werden, wie beispielsweise $ d.rast oder $ d.vect. Die Daten werden vom CELL-Treiber in die GRASS-Raster"-datei "`D cell"' geschrieben.
  4. Wenn alle gewünschten Befehle aufgerufen wurden, wird der CELL-Treiber beendet. Dabei erzeugt GRASS die gewünschte Datei "`D cell"':  
    $ d.mon stop=CELL

  5. Die Datei "`D cell"' wird grundsätzlich in der xy-Projektion dargestellt, obwohl sie vielleicht in einer Gauß-Krüger-Projektion erzeugt wurde. Um die Datei zu betrachten oder zu exportieren, müssen daher erst die mapset-Einstellungen auf die Datei "`D cell"' umgesetzt werden. Praktischerweise sollte vorher die aktuelle Regionseinstellung gespeichert werden, um sie nach dem Export der erzeugten CELL-Datei auf einfache Weise wiederherstellen zu können:

    $ g.region save=aktuelle region

    Nun wird die mapset auf die xy-Projektion der neuen "`D cell"' Datei umgesetzt:

    $ g.region raster=D cell

    Dann kann entweder ein GRASS-Monitor mit $ d.mon zum Betrachten der Karte "`D cell"' gestartet oder die Datei "`D cell"' beispielsweise mit

    $ r.out.tiff

    exportiert werden. Ist der Monitor bereits geöffnet, muss $ d.erase aufgerufen werden, um auch den Monitor auf die xy-Projektion umzustellen.

  6. Zum Schluss sollte die ursprüngliche (Gauß-Krüger-)Region wieder aktiviert werden, die vorher gespeichert worden war:

    $ g.region region=aktuelle region

    Läuft der GRASS-Monitor bereits, wird er mit $ d.erase von der xy-Projektion von "`D cell"' wieder in die übliche Projektion zurückgesetzt.

Die exportierte Rasterdatei "`D cell"' (die auch gerasterte Vektoren enthalten kann) lässt sich dann beispielsweise für die Kartenherstellung in $ xfig verwenden (vgl.  vorigen Abschnitt 9.2).

Die Benutzung des CELL-Treibers erscheint vielleicht etwas umständlich, dafür können aber auch Karten in beliebiger Größe mit hoher Auflösung erzeugt werden.  
Alternativ läßt sich auch der PNG-Treiber benutzen (ab GRASS 5.x).


next up previous contents index
Next: GRASS im praktischen Einsatz: Up: Kartenausgabe Previous: Kartengestaltung mit xfig   Contents   Index
Markus Neteler 2005-04-14