[mapserver-users] PostGIS data in EPSG:31300 using for Google Maps overlay
Steven De Vriendt
gisaalter at gmail.com
Tue Apr 8 11:25:29 PDT 2008
Brent,
Very, very usefull info. Thanks. I was just about to reprojecting my data :-)
I thought the SRID table was "constrained" to the geometry and you couldn't
change it. Seems like that's why the 'virtual' table is there for. Ok,
well, I'll give
it a try. Thanks for your input !
Regards,
Steven
On Tue, Apr 8, 2008 at 7:58 PM, Brent Wood <pcreso at pcreso.com> wrote:
>
> --- Steven De Vriendt <gisaalter at gmail.com> wrote:
>
> > Hi list,
> >
> > I have some data in PostGIS I wish to overlay in Google Maps using WMS
> > I'm using the same data in a mapserver application, where EPSG code
> > 31300 is used.
> > Now for overlay in Google Maps, 4326 is required.
> > I have made a copy of my map-file and specified 4326 as projection
> > system.Yet, non of my data is showing up.
> >
> > Do I need to reproject my data for this use ? I thought PostGIS was
> > capable of doing reprojection on the fly ?
>
> Hi Steven,
>
> Both mapserver & POstGIS can reproject the data on the fly, but they need to be
> told the input & output projections.
>
> As your data is all displayed via mapserver, the instructions either way will
> be in your mapfile.
>
> To reproject using PostGIS, edit the SQL command in your data statement which
> retrieves the PostGIS data. You need to tell PostGIS to return a virtual table
> to mapserver, and transform the data to the required projection in this. Edit
> the data line in the layer something like this:
>
> DATA "new_geom from (select gid, transform(the_geom,4326) as new_geom from
> table) as mytable using unique gid using srid=4326"
>
>
> To reproject in mapserver, you need to set the main mapfile projection to
> EPSG:4326, using, in the global header part of the mapfile:
>
> UNITS DD
> PROJECTION
> "init=epsg:4326"
> END
>
> In the METADATA section, you'll need to set the output projection for WMS, eg:
> METADATA
> "wms_title" "My WMS Server"
> "wms_srs" "EPSG:4326"
> END
>
> Then in the layer definition, you specify the layer's native projection, so
> mapserver can reproject from one to the other:
>
> LAYER
> ...
> PROJECTION
> "init=epsg:31300"
> END
> ...
> END
>
> Note that to reproject in PostGIS, Proj.4 support must be compiled into
> PostGIS, and similarly for mapserver if you do the reprojection there. If you
> compiled these from source, this is not done by default, & you'll need to run
> configure with the appropriate flag. If you installed from a package, or on
> Windows, proj support is generally built in.
>
>
> HTH,
>
> Brent Wood
>
More information about the MapServer-users
mailing list