data not visible at the poles

Bruce Raup brauplists at GMAIL.COM
Wed Jun 29 12:31:59 EDT 2005


Hi all,

Summary:
We have a global data set stored in lon/lat coordinates in a PostGIS
database.  When displaying these data in a polar stereographic
projection, if the view window includes the pole, some data don't get
displayed.

We have discerned the following. MapServer is aware of the output
projection as well as the projections of the input layers. If these
are different, it apparently reprojects the coordinates of the view
window from output projection coordinates to the coordinate system of
the source data and applys that window to subset the source data.

In the case where the output projection is polar stereographic and the
input data is lon/lat, if the window includes the pole, then when
these coordinates are converted to lon/lat, one can get an annulus.
The result is that data "drop out" or disappear from the inside of the
annulus.

Please have a look at the illustration of the problem at
http://spot.colorado.edu/~braup/MapServer/

The top figure shows an overview of Antarctica. When zooming into the
area marked in green, which does not include the pole, the data that
were missing in the overview show up (bottom figure).  In both
figures, the red lines are areas of interest polygons, and the squares
are image footprints; both are affected by the problem

This problem makes it impossible to show an overview with complete
data layers, unless we break our global dataset into three pieces
(north polar, middle latitudes, and south polar), already projected. 
The same problem afflicts queries.

Are there any other ways around this?  It would be great if MapServer
could handle this "smarter".  One way MapServer might be smarter about
this would be to detect the case where the pole is included in the
view window or selection box.  The other (brute force) way would be to
project all the source data and do the subsetting in projected
coordinates, but of course, this is a lot of computation.

So I'm asking two things:  Is there a good way to handle this
(preferrably not by breaking up our dataset)?  And, Can MapServer be
fixed so that this problem doesn't happen?

Thanks in advance,
Bruce

-- 
Bruce Raup
http://cires.colorado.edu/~braup/



More information about the mapserver-users mailing list