# The annotated map file (sort of)
# Created by Pericles S. Nacionales for the MapServer tutorial
# Maintained & enhanced since by Jeff McKenna, GatewayGeo
# 2023-04-19 last updated
# MapServer map file uses the pound sign (#) to denote the start of a line
# comment--each line that needs to be commented has to be prepended with a "#".
# Map files begin with MAP keyword to signify the start of the map object.
# Well, the entire map file is THE map object. Enclosed between MAP and END
# at the very bottom of this map file, are keyword/value pairs and other
EXTENT 201621.496941 -294488.285333 1425518.020722 498254.511514 # LAEA
#EXTENT -97.5 41.619778 -82.122902 49.38562 # Geographic
SIZE 400 300
IMAGECOLOR 255 255 255
# NAME pdf
# MIMETYPE "application/x-pdf"
# DRIVER pdf
# #FORMATOPTION "OUTPUT_TYPE=RASTER" # not mandatory but needed for WMS layer
# The web object is defined at the level below the map object. All
# web-related parameters (I interchange "parameters" and "keyword/value
# pairs" quite frequently, sorry about that) are defined in this object.
# The projection object is typically used within the map and the layer
# objects. You only define it once within the map object and this definition
# becomes your output projection--MapServer will render your maps in this
# projection. You also use the projection object within the layer object to
# define your input projection. Your layers can be in different
# projections--MapServer will reproject them into your output projection.
# If no projection is defined within the layer object, MapServer assumes
# your input projection is the same as your output projection. This is not
# a required object unless you're creating a map file that supports one of
# the OGC interoperability web services specifications (WMS/WFS/WCS).
# This is the output PROJECTION definition ------
# Projection parameters can be defined in two ways...
# This is the traditional PROJ definition of Lambert Azimuthal Equal-Area
# projection for the Continental U.S.
# Alternatively, you can specify an EPSG code.
# This is the EPSG code for Lambert Azimuthal Equal-Area
# projection for the U.S.
# Layer objects are defined beneath the map object. You need at least one
# layer defined in your map file before you can display a map... You can
# define as many layers as you'd like.
# Start of LAYER DEFINITIONS ---------------------------------------------
LAYER # States polygon layer begins here
# Here's an example of the input projection definition.
# EPSG:4326 is code for geographic (latlong) projection
# using the WGS84 datum.
# PROJECTION objects within the LAYER object define the input
# projection--this is the native projection of your data.
# CLASSITEM defines the non-spatial attribute that you will be using to
# separate a layer into classes. This attribute will be in the DBF file
# of your shapefile (it will be different for each data format). In this
# example the shapefile states_ugl has an associated database
# (states_ugl.dbf) that contains an attribute called "CLASS". You will be
# using two values in the CLASS attribute to separate the classes (also
# called themes) used in this layer--land and water. CLASSITEM is used in
# association with the EXPRESSION parameter in the CLASS object. See below.
# Just like CLASSITEM, LABELITEM defines the database attribute that you
# will be using to draw labels. In this case, the values of the attribute
# "STATE" will be used to label the states polygons.
# The class object is defined within the layer object. You can define as
# many classes as you need but it is good cartographic practice to limit
# classes to 8 to 10 per layer.
COLOR 232 232 232
# There can be labels in a class, just like there are classes in a layer,
# just like there are layers in a map. You can define multiple labels in
# a class just as you can define multiple classes in a layer and multiple
# layers in a map.
# MapServer has a very flexible labeling system. With that flexibility
# comes complexity, specially when using truetype fonts. Please read
# through the LABEL section of the MapServer map file documentation at
# http://www.mapserver.org/mapfile for more information.
COLOR 255 255 255
END # end of label
END # States polygon layer ends here
# In addition to vector data (shapefiles are vector data), MapServer supports
# a host of raster formats. In GIS world, one of the most common raster
# formats is GeoTIFF, a TIFF image with geospatial headers. MapServer also
# supports JPEG, PNG, GIF, and other common formats. Other raster formats
# supported by MapServer include ESRI Arc/Info grid, HDF and HDF-EOS, NetCDF,
# Generic raster binaries, OGC Web Map Service (WMS) layers, etc. Pretty much
# any raster format you can think of is probably supported, thanks to the
# impressive Geospatial Data Abstraction Library (GDAL, pronounced "GOODALL"
# or GOODLE?). More information on GDAL is available at http://www.gdal.org.
# MapServer can read and display bitmapped (like GIFs), RGB/A (true
# color), and multispectral (images with more than 3 bands, like raw LandSat
# images) rasters.
LAYER # MODIS raster layer begins here
OFFSITE 71 74 65
END # MODIS raster layer ends here
LAYER # MODIS WMS map from NASA
OFFSITE 0 0 0
"wms_name" "Blue Marble"
END # Modis WMS image ends here
LAYER # States line layer begins here
COLOR 32 32 32
END # States line layer ends here
# End of LAYER DEFINITIONS -------------------------------
END # end of map file