[Mapserver-DE] Puffer mit Mapserver und PostGIS erstellen

Armin Burger armin.burger at gmx.net
Fre Jan 6 12:14:04 CET 2006


Eine Moeglichkeit waere zB:

fuer Layer Ereignisse:
-----------------------
den Tag DATA via Mapscript setzen (mit einem Bsp fuer PHP):


$newdata = "the_geom from
     (select e.the_geom as the_geom, e.oid as oid
      from ereignisse e, poi p
      where distance(e.the_geom, p.the_geom) < 10000 and p.gid = 2984)
AS new_table USING UNIQUE oid USING SRID=3035";

//10000 ist die buffer-Distanz

$ereignis_layer = $map->getLayerByName("ereignisse");
$ereignis_layer->set("data", $newdata);

wobei p.gid der Identifier fuer den POI Layer ist.


Darstellung des Buffers:
-------------------------
Du koenntest mit Mapscript einen neuen Layer erzeugen und ihn der MAP 
hinzufuegen. Der Layer wuerde auf dem POI basieren, aber als "TYPE 
polygon" definiert sein.

DATA waere zB. zu setzen auf sowas wie

$data = "the_geom from (select buffer(the_geom, 10000, 16) as the_geom, 
oid, gid from poi and gid = 2984) AS new_table USING UNIQUE oid USING 
SRID=3035";

//10000 ist die buffer-Distanz und 16 die Anzhl der Zwischenpunkte pro 
Kreisviertel)

$newResLayer = ms_newLayerObj($this->map);
$newResLayer->set("name", "reslayer");
$newResLayer->set("type", 2);
$newResLayer->set("data", $data);
... andere Eigenschaften wie CLASS/COLOR, etc ...
$newResLayer->set("status", MS_ON);


Wenn keine Selektion auf die POI benoetigt wird, muesstest du halt den 
Filter "and p.gid = 2984" jeweils weglassen. In diesem Fall koenntest du 
den Buffer-Layer auch als statischen Layer ueber den MAP File definieren.

Viele Gruesse, Armin


Klaus Schiefer wrote:
> Hallo Liste,
> 
> kann man mit dem Mapserver und PostGIS eine Pufferung realisieren?
> 
> Beispiel: Ich habe einen Layer mit Points of Interest und einen mit 
> Ereignissen. Beide Layer liegen als Punkte in PostGIS. Nun möchte ich 
> alle Ereignisse dargestellt bekommen, die im Umkreis von n Metern um die 
> POI liegen.
> 
> Wenn so etwas möglich ist, kann man dann den Pufferbereich auch 
> visualisieren?
> 
> Über Tipps und Hinweise auf mögliche Beispielscripts würde ich mich sehr 
> freuen.
> 
> Vielen Dank im vorraus.
> 
> Mit freundlichen Grüßen
> 
> Klaus Schiefer
> 
>  
> 
> 
> 
> Erweitern Sie FreeMail zu einem noch leistungsstärkeren E-Mail-Postfach!    
> Mehr Infos unter *http://freemail.web.de/home/landingpad/?mc=021131*  
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Mapserver-DE mailing list
> Mapserver-DE at freegis.org
> https://freegis.org/mailman/listinfo/mapserver-de




This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)