When I bring PostGIS data in EPSG:900913 into TileMill, my layers end up on other continents.

This is my workflow:

(1) Save shapefiles in QGIS to EPSG:900913

(2) Import the shapefiles using PostGIS Shapefile and DBF loader 2.0 in pgadminIII ... specify SRID as 900913 in the loader

(3) Add PostGIS layer in TileMill... specify SRS as 900913.

I get this result: https://www.dropbox.com/s/ztw2c03o9r7gv30/tileMill_projection.png

Some notes: I have no problems loading the PostGIS data into QGIS afterwards in the same projection (on-the-fly disabled). I have tried the same process using WGS84 EPSG:4326 & WGS84 / Pseudo Mercator EPSG:3857 with no luck.

My guesses are that either (1) the Extent parameters when Adding PostGIS Layer in TileMill have something to do with this (2) TileMill is not reading my PostGIS spatial_ref_sys table correctly. Any thoughts and/or suggestions?

I'm going to try inserting a new spatial_ref_sys table like here.

Thanks again!

  • What is the original projection of the shapefiles before you save them out to 900913? – Get Spatial Apr 27 '13 at 0:19
  • EPSG:26913 - NAD83 / UTM zone 13N – Zach Apr 27 '13 at 0:21

After finding this comment, I searched for this spatial_ref_sys table and inserted it into to my PostGIS database.

Reloaded the shapefiles into PostGIS in ESPG: 900913.

Restarted TileMill, added my PostGIS layers, and they are all layered correctly.

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.