[mapserver-users] MapServer dynamic map creation - Is this possible?

Frank Warmerdam warmerdam at pobox.com
Mon Sep 28 09:11:24 PDT 2009


Dan Walton wrote:
> I am new to WMS, so bear with my ignorance please. 
> 
> I have a service that processes imagery and outputs large TIFF + World file
> images (5-40 MB), and some shapefiles. Currently these images have no

Dan,

Note that 5-40MB files are normally considered small in this domain.

> pyramid or tiling. I would like to further make the images web map friendly
> and my thought is that WMS and MapServer is the way to go. We will likely be
> creating dozens or perhaps hundreds of these images per day. This needs to
> run on Windows alongside or within IIS. 
> 
> So I have a volley of questions for anyone who might have answers. Feel free
> to skip any:
> 
> 1. Can MapServer even do this, that is, host several large images and allow
> new ones to be added on the fly via the api? 

Yes, this is possible.  One question is whether the images are intended
to be treated as a mosaic or as distinct, individually addressable layers.

If they are to be a mosaic, then you want to read up on tileindexes which
allow you to treat a set of images as a single layer - a mosaic.  Then your
task boils down to creating a static mapfile, and dynamically adding files to
the tileindex as they are created.

If each is a distinctly addressable product then they should each either
have an associated layer in a mapfile or you need a distinct map for each
image.

I will say it is not prudent to have hundreds of layers in a map - it becomes
quite cumbersome, so I think it would be better to treat each image as a
distinct WMS service with it's own mapfile (possibly generated on the fly
from a database record).

> 2. Can each image be a map layer or does each image need its own mapserver
> instance?

As above, either is possible.

> 3. Does the OSGeo4W include utilities to tile and pyramid the images or do I
> have to arrange for that myself?

OSGeo4W's gdal package includes the required tools.  In particular to take
a TIFF image ("in.tif") and convert it to an optimized form with internal
tiling and overviews ("out.tif") you would do something like:

  gdal_translate -co TILED=YES in.tif out.tif
  gdaladdo out.tif 2 4 8 16 32 64

OSGeo4W is setup primarily for Apache, so to use it with IIS there
will be some manual fiddling you will need to do yourself.  However,
people do it, so it is doable.

Best regards,
-- 
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent




More information about the MapServer-users mailing list