Salve a tutti,
ho un quesito per gli esperti di mapserver. Vorrei produrre
con mapserver la solita mappa topp:states usata nelle
demo di GeoServer, di cui allego una copia in questa mail.

Ora, se non ho capito male per ottenere lo stesso risultato
in mapserver devo definire tre layer, uno per i poligoni
con i filtri sul numero di persone (è quello che pilota
il colore del poligono), uno per disegnare i bordi,
uno per le etichette.

Avevo provato a far tutto con un solo layer, ma se metto
campitura poligoni e label nello stesso layer, le etichette
non si vedono, e se uso l'outline per disegnare i bordi
insieme ai poligoni, i bordi risultano sbavati o incompleti
(vengono comperti in alcuni punti dalla campitura del poligono).

Ho allegato il file map (ha un layer estraneo che mi
serve per altre prove).

Mi sapete dire se sto sbagliando qualcosa?
Si può impostare un mapfile in modo da ottenere lo stesso
risultato, ma facendo lavorare meno mapserver?

Ciao
Andrea

<<inline: states_gs.png>>

# Map server benchmark map file
MAP
  IMAGETYPE      PNG
  EXTENT         -180 -90 180 90
  SIZE           400 300
  SHAPEPATH      "./data"
  IMAGECOLOR     255 255 255
  FONTSET        "./fonts/fonts.list"

  # Debug
  # CONFIG  "MS_ERRORFILE" "/home/aaime/public_html/bench/tmp/mapserver.log"
  # DEBUG   2

  # WMS and WFS metadata
  WEB
    METADATA
      "wms_title"           "WMS Demo Server"
      "wms_onlineresource"  
"http://localhost/cgi-bin/mapserv?map=/bench/bench.map&";
      "wms_srs"             "EPSG:4326"
      "wfs_title"           "WFS Demo Server"
      "wfs_onlineresource"  
"http://localhost/cgi-bin/mapserv?map=/bench/bench.map&";
      "wfs_srs"             "EPSG:4326"
    END
  END

  # Projection (shared by all layers)
  PROJECTION
    "init=epsg:4326"
  END

  # GSSH
  LAYER 
    NAME         gshhs
    METADATA
      "wms_title"    "Global high resolution shorelines"
    END
    PROCESSING   "CLOSE_CONNECTION=DEFER"
    DATA         gshhs_land
    STATUS       OFF
    TYPE         LINE

    CLASS
      NAME 'gshhs'
      STYLE
        COLOR      0 0 0
      END
    END
  END # GSSH

  # STATE_POLYGONS
  LAYER
    NAME        state_polygons
    METADATA
      "wms_title"    "Distribution of population in USA, polygons"
    END
    PROCESSING "CLOSE_CONNECTION=DEFER"
    DATA        states
    STATUS      OFF
    TYPE        POLYGON
    
    CLASS
      NAME 'less than 2M'
      EXPRESSION ([PERSONS] < 2000000)
      STYLE
        COLOR     77 255 77
      END
    END
    
    CLASS
      NAME 'between 2M and 4M'
      EXPRESSION (2000000 <= [PERSONS] AND [PERSONS] < 4000000 )
      STYLE
        COLOR     255 77 77
      END
    END

    CLASS
      NAME 'more than 4M'
      EXPRESSION ([PERSONS] >= 4000000 )
      STYLE
        COLOR     77 77 255
      END
    END
  END

  # STATE_LINES
  LAYER
    NAME        state_lines
    METADATA
      "wms_title"    "Distribution of population in USA, lines"
      "gml_featureid" "ID" ## REQUIRED
      "gml_include_items" "all"  ## serve all attributes
    END
    PROCESSING "CLOSE_CONNECTION=DEFER"
    DATA        states
    STATUS      OFF
    TYPE        LINE
    
    CLASS
      NAME 'outline and label'
      STYLE
        COLOR     0 0 0
      END
    END

  END

  # STATE_LABELS
  LAYER
    NAME        state_labels
    METADATA
      "wms_title"    "Distribution of population in USA, labels"
    END
    PROCESSING "CLOSE_CONNECTION=DEFER"
    DATA        states
    STATUS      OFF
    TYPE        POLYGON
    LABELITEM   "STATE_ABBR"
    
    CLASS
      NAME 'label'
      LABEL
        COLOR 0 0 0
        ANTIALIAS FALSE
        TYPE TRUETYPE
        FONT "Times"
        SIZE 12
        POSITION CC
        PARTIALS FALSE
      END
    END

  END

  OUTPUTFORMAT
    NAME 'AGG'
    DRIVER AGG/PNG
    IMAGEMODE RGB
  END
  OUTPUTFORMAT
   NAME 'AGGA'
   DRIVER AGG/PNG
   IMAGEMODE RGBA 
  END
END

# End of map file
END 
_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[email protected]
http://www.faunalia.com/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti. 
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.

Rispondere a