Is there a way to mention multiple projection systems / spatial reference systems in MapServer's (ms4w 3.0.3) MAPFILE? For example for Malaysia - GIS data could lie across three spatial references WGS 84 / UTM zone 47N, WGS 84 / UTM zone 48N and WGS 84 / UTM zone 49N. The GIS data stored in Oracle DB has no SRID mentioned and each layer may consist of data that may lie in any of the above mentioned 3 spatial references. Is there a way we can dynamically project GIS data through mapfile?

Regards, Shiva

  • I doubt how this should work. How should the software decide in which UTM zone the data lies? – AndreJ Jan 3 '14 at 11:59
  • Hi Andre, Thanx for replying. Can we specify multiple projections (in this case 3) to indicate to mapserver that the map data may lie within these projection systems and in each individual layer definitions mention projection as auto so that it projects the data according to the SRID for each geometry record? – Shiva Jan 3 '14 at 13:05

Yes you can configure multiple projections that your service will support in your map file, as part of the METADATA block of either your MAP in which case the projections apply to all layers, or in your LAYER in which case the projections apply to just that layer.

  "WMS_SRS" “EPSG:4326 EPSG:3857 EPSG:27700 EPSG:4258”
  # Change above to meet your requirements 

The reprojection is done by MapServer (not by the underlying data store). In your map file you need to specify the projection your data is actual in (e.g. as it is within your data store) with the LAYER > PROJECTION block.

| improve this answer | |

I suggest to store all data in lat/lon degrees.

Then you can decide later independently in which projection you want to display all or part of the data.

For areas stretching over several UTM zones, a lcc or Mercator projection sounds better.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.