[Mapserver-DE] Ein WMS-Layer aus zwei Shapefiles

Jörg Thomsen jt at mapmedia.de
Mon Jan 28 15:45:49 CET 2008


Hallo Roland,

Du könntest eine Gruppe bilden

LAYER
  NAME ...
  GROUP gebaeude
  METADATA
   WMS_NAME ...
   WMS_GROUP "Gebaeude"

dann sind alle Layer der Gruppe Gebaeude unter diesem Namen abrufbar, 
die Layer bleiben aber auch einzeln verfügbar.

Ansonsten könntest Du mit 'requires' arbeiten, Gebäude benötigt 
Hausnummern, dann würden die Nr. mit ausgeliefert, wenn nur die Gebäude 
angefragt werden. Aber der HausNr.-Layer existziert weiterhin

sonst fällt mir nur ein: Daten vorher zusammen führen oder kaskadieren, 
aber das bedeutet unnötige Performanceverlsute.

Gruß, Jörg



Roland Krueger wrote:
> Hallo Liste,
> 
> ich möchte mit dem UMN-Mapserver einen OGC-WMS bereitstellen. Der WMS soll
> einen Layer anbieten, deren Datenquelle jedoch zwei Shapefiles sind.
> 
> Ein Beispiel:
> Die Gebäudegeometrien liegen im Shapefile "gebaeudegeo.shp".
> Die Hausnummern liegen in einem anderen Shapefile "gebaeudenr.shp".
> Der UMN soll nun EINEN WMS-Layer "Gebaeude" anbieten, der die
> Gebaeudegeometrien und die Hausnummern darstellt.
> 
> Mein Mapfile sind so aus:
> 
> ---------------Anfang Mapfile-----------------------------------------------
> MAP
>   NAME           "Stadtkarte"
>   STATUS         ON
>   IMAGETYPE      PNG
>   IMAGECOLOR     255 255 255
>   EXTENT         3305000 5838000 3370000 5915000
>   MAXSIZE        8192
>   UNITS          METERS
>   SIZE           600 600
>   SHAPEPATH      '/var/www/kreisopr/alk/'
>   FONTSET        '/var/www/kreisopr/fonts/fonts.fnt'
>   SYMBOLSET      'symbols/symbols01.sym'
> 
> WEB
>   IMAGEPATH '/tmp/ms_tmp/'
>   IMAGEURL  '/ms_tmp/'
>   METADATA
>     "WMS_TITLE"                  "Stadtkarte"
>     "WMS_ABSTRACT"               "Gebaeude der Stadtkarte, erstmal nur zum
> testen."
>     "WMS_FEATURE_INFO_MIME_TYPE" "text/html"
>     "WMS_ONLINERESOURCE"         "http://geoservice.kv.o-p-r.de/ows/wmstmp?"
>     "WMS_SRS"                    "EPSG:25833 EPSG:4326"
>     END  #Metadata
>   END  #Web
> 
> PROJECTION
>   "init=epsg:25833"
>   END  #PROJECTION
> 
> # -------------------- Gebaeude --------------------
> 
> LAYER
>   # GebäudeGeometrie
>   NAME "Gebaeude"
>   DATA 'gebaeudegeo'
>   TYPE polygon
>   STATUS ON
>   METADATA
>     WMS_TITLE          'Gebaeude'
>     WMS_SRS            'EPSG:25833 EPSG:4326'
>     WMS_INCLUDE_ITEMS  'all'
>     END  #Metadata
>   CLASS
>     NAME "Gebäude"
>     COLOR 220 170 170
>     OUTLINECOLOR 0 0 0
>     END  #Class
>   END  #Layer
> 
> LAYER
>   # Hausnummer
>   NAME "Gebaeude"
>   TYPE         annotation
>   STATUS       on
>   DATA        'gebaeudenr'
>   LABELITEM  'INFOTEXT'
>   SIZEUNITS meters
>   METADATA
>     WMS_TITLE          'Gebaeude'
>     WMS_SRS            'EPSG:25833 EPSG:4326'
>     WMS_INCLUDE_ITEMS  'all'
>     END  #Metadata
>   CLASS
>     LABEL
>       TYPE TRUETYPE
>       FONT 'arial'
>       POSITION uc
>       COLOR 0 0 0
>       SIZE 1
>       ANGLE AUTO
>       FORCE TRUE
>       END  #Label
>     END  #Class
>   END  #Layer
> 
> END  #Map
> ---------------Ende Mapfile-------------------------------------------------
> 
> 
> 
> Mit diesem Mapfile bietet der UMN jedoch die Layer Gebaeude_01 und
> Gebaeude_02 an. Hier ein Ausschnitt aus dem GetCapabilities-Dokument.
> 
> -----schnipp---Anfang Ausschnitt GetCapabilities----------------------------
>   <Layer>
>     <Name>Stadtkarte</Name>
>     <Title>Stadtkarte</Title>
>     <SRS>EPSG:25833</SRS>
>     <SRS>EPSG:4326</SRS>
>     <LatLonBoundingBox minx="51.654" miny="46.1692" maxx="52.714"
> maxy="46.9763" />
>     <BoundingBox SRS="EPSG:25833"
>                 minx="3.305e+06" miny="5.838e+06" maxx="3.37e+06"
> maxy="5.915e+06" />
>     <Layer queryable="0" opaque="0" cascaded="0">
>         <Name>Gebaeude_01</Name>
>         <Title>Gebaeude</Title>
>         <SRS>EPSG:25833</SRS>
>         <SRS>EPSG:4326</SRS>
>         <LatLonBoundingBox minx="51.6836" miny="46.1835" maxx="52.6737"
> maxy="46.9294" />
>         <BoundingBox SRS="EPSG:25833"
>                     minx="3.30721e+06" miny="5.83938e+06"
> maxx="3.36884e+06" maxy="5.90969e+06" />
>         <Style>
>           <Name>default</Name>
>           <Title>default</Title>
>           <LegendURL width="20" height="10">
>              <Format>image/png</Format>
>              <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink"
> xlink:type="simple"
> xlink:href="http://geoservice.kv.o-p-r.de/ows/wmstmp?version=1.1.1&amp;service=WMS&amp;request=GetLegendGraphic&amp;layer=Gebaeude_01&amp;format=image/png"/>
>           </LegendURL>
>         </Style>
>     </Layer>
>     <Layer queryable="0" opaque="0" cascaded="0">
>         <Name>Gebaeude_02</Name>
>         <Title>Gebaeude</Title>
>         <SRS>EPSG:25833</SRS>
>         <SRS>EPSG:4326</SRS>
>         <LatLonBoundingBox minx="51.6834" miny="46.1833" maxx="52.6736"
> maxy="46.9293" />
>         <BoundingBox SRS="EPSG:25833"
>                     minx="3.30722e+06" miny="5.83934e+06"
> maxx="3.36884e+06" maxy="5.90968e+06" />
>     </Layer>
>   </Layer>
> -----schnapp---Ende Ausschnitt GetCapabilities------------------------------
> 
> 
> Wie muss ich das Mapfile formulieren, damit nicht zwei Layer "Gebaeude_01"
> und "Gebaeude_02" sondern nur ein Layer "Gebaeude" bereitgestellt wird? An
> der Sruktur der Shapefiles möchte ich nichts ändern.
> 
> Ich setze Mapserver 4.10.2 ein. Hier die Info von "mapserv -v":
> 
> MapServer version 4.10.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP
> OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=FREETYPE SUPPORTS=WMS_SERVER
> SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT
> SUPPORTS=WCS_SERVER SUPPORTS=THREADS SUPPORTS=GEOS INPUT=TIFF INPUT=EPPL7
> INPUT=SDE INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
> 
> 
> 
> Danke für eure Antworten
> 
> 
> Viele Grüsse
> Roland
> 
> 
> 
> Mail wurde vom Landkreis-Ostprignitz-Ruppin versandt
> ----------------------------------------------------
> 
> _______________________________________________
> Mapserver-DE mailing list
> Mapserver-DE at freegis.org
> https://freegis.org/mailman/listinfo/mapserver-de


-- 

_________________________________________________

MapMedia
Kartographie und raumbezogene Informationssysteme

Heilbronner Straße 10
D-10711 Berlin

fon:  +49.(0)30.89 06 82 70
fax:  +49.(0)30.89 06 82 73
mail: jt at mapmedia.de
net:  www.mapmedia.de
pgp:  on demand
_________________________________________________