Jan, The problem was that I needed to specify PROJECTION both at the MAP and at the LAYER level. So, I had to specify PROJECTION "init=esri:54004" at the MAP level so it's rendered with this projection and PROJECTION "init=epsg:4326" at the LAYER level (because the data is in this projection).
Special thanks to Ei Fugioka who find the issue. Thanks a lot! Jose Jan Hartmann wrote: > > Hi Jose, > > I think mapext must have two negative and two postive values (you > specify four negative values): > > mapext=-7143498.91542+-3665050.56612+7142887.41919+3664442.05663 > > Does this work? > > Jan > > joseolcese wrote: >> Jan, >> >> Thanks a lot for your responses! >> >> I still have no success getting the right tile with mapscript or even >> mapserv. >> I implemented a code that Ei Fujioka sent me and this is the result: >> >> I guess I've nailed down the problem to this: >> >> **** .map with no PROJECTION and latlon coordinates: >> http://127.0.0.1/cgi-bin/mapserv?map=/mapear/map/mapNoProjection.map&mode=map&mapext=-64.171142578125+-31.419288124288343+-64.1656494140625+-31.41460027631321 >> This gives me an image with some data printed -> OK >> >> **** .map with PROJECTION and latlon coordinates: >> http://127.0.0.1/cgi-bin/mapserv?map=/mapear/map/mapProjection.map&mode=map&mapext=-64.171142578125+-31.419288124288343+-64.1656494140625+-31.41460027631321 >> This gives me an image with NO data printed -> WRONG >> >> Only difference between mapNoProjection.map and mapProjection.map is that >> the second one has: >> CONFIG PROJ_LIB '/usr/local/share/proj/' >> PROJECTION >> "init=esri:54004" >> END >> >> Now, using the code to convert coordinates to mercator meters, I got >> -64.171142578125+-31.419288124288343+-64.1656494140625+-31.41460027631321 >> equal to: >> -7143498.91542,-3665050.56612,-7142887.41919,-3664442.05663 >> >> But if I request >> **** .map with PROJECTION and mercator meters coordinates: >> http://127.0.0.1/cgi-bin/mapserv?map=/mapear/map/mapProjection.map&mode=map&mapext=-7143498.91542+-3665050.56612+-7142887.41919+-3664442.05663 >> This gives me an image with NO data printed -> WRONG >> >> Any ideas?? >> >> Jose >> >> >> >> >> Jan Hartmann wrote: >>> With Mapscript it's easy: >>> >>> function ll2merc($lon,$lat) { >>> $projIn = ms_newprojectionobj("proj=latlong"); >>> $projOut = ms_newprojectionobj("proj=merc"); >>> $p = ms_newpointobj(); >>> $p->setXY($lon,$lat); >>> $p->project($projIn, $projOut); >>> return($p); >>> } >>> >>> If you don't use Mapscript, you have to do the computations in >>> Javascript. There is a project to implement the Proj package in >>> Javascript: >>> >>> http://lists.maptools.org/pipermail/proj/2006-February/002125.html >>> >>> but I have never worked with it >>> >>> Jan >>> >>> Jose Olcese wrote: >>>> Hi Jan, >>>> >>>> I really appreciate your help!. It seems that it might be the problem!. >>>> I'll try sending Mercator Coordinates in meters as the mapexp parameter >>>> of mapserv. >>>> >>>> Do you have the algorithm for converting it? >>>> >>>> Thanks again >>>> Jose >>>> >>>> >>>> >>>> >>>> On 6/4/07, *Jan Hartmann* < [EMAIL PROTECTED] >>>> <mailto:[EMAIL PROTECTED]>> wrote: >>>> >>>> Hi Jose >>>> >>>> Epsg 54004 is the classic Mercator projection. The units it uses >>>> are >>>> not >>>> degrees but meters (only at the equator these are real meters). >>>> Using >>>> proj I get the following boundary values (note that -180W/-90S and >>>> 180E/90N cannot be represented in a Mercator projection): >>>> >>>> proj +init=epsg:54004 >>>> -170 -80 >>>> -18924313.43 -15496570.74 >>>> 170 80 >>>> 18924313.43 15496570.74 >>>> >>>> Hope this helps, >>>> >>>> Jan >>>> >>>> Dr. J. Hartmann >>>> Department of Geography >>>> University of Amsterdam >>>> >>>> joseolcese wrote: >>>> > Hi >>>> > >>>> > I'm trying to use Google maps & Mapserver with partial >>>> success... >>>> > I have a .shp configured in mapserver and I can get a >>>> transparent >>>> tile from >>>> > an html page where it load google satellite view and my tiles. >>>> > The problem is that I wasn't using any projection on my .map so >>>> every tile >>>> > was a little distorted. >>>> > I added the epsg:54004 project to the .map but now the tiles are >>>> empty. >>>> > >>>> > Do you have any idea why this my be happening? >>>> > >>>> > Thanks >>>> > Jose Olcese >>>> > >>>> > .map: >>>> > IMAGETYPE PNG >>>> > EXTENT -64.20 -31.41 -64.19 -31.40 >>>> > SIZE 256 256 >>>> > SHAPEPATH '/ms4w/apps/tutorial/data_jose' >>>> > FONTSET '/ms4w/apps/tutorial/fonts/fonts.list' >>>> > TRANSPARENT ON >>>> > CONFIG PROJ_LIB '/var/www/html/share/proj/' >>>> > PROJECTION >>>> > "init=esri:54004" >>>> > END >>>> > LAYER >>>> > ... >>>> > ... >>>> > >>>> > >>>> > .html: >>>> > ... >>>> > ... >>>> > tileCountry.getTileUrl=function(xy,zoom) >>>> > { >>>> > var lng = >>>> (-180+((xy.x+0.5)*(360/Math.pow(2,zoom)))); >>>> // -180 >>>> > +180 >>>> > >>>> > var merclat_extent = 360/Math.pow(2,zoom); >>>> > var l = 180 - (( xy.y+0.5) * merclat_extent); >>>> > var e = Math.exp(2 * ( l * Math.PI) /180); >>>> > e = (e - 1)/(e + 1); >>>> > var lat = (Math.atan2(e, Math.sqrt(1 - (e * e))) >>>> *180 >>>> / >>>> > Math.PI ); >>>> > >>>> > return >>>> > ' >>>> >>>> http://127.0.0.1/cgi-bin/mapserv?map=/ms4w/apps/tutorial/htdocs/map_test5.map&mode=map&mapxy= >>>> >>>> <http://127.0.0.1/cgi-bin/mapserv?map=/ms4w/apps/tutorial/htdocs/map_test5.map&mode=map&mapxy=>' >>>> > + lng + '+' + lat + '&buffer=' + ((360/Math.pow(2,zoom))/2); >>>> > } >>>> > ... >>>> > >>>> > >>>> > >>>> >>>> >>> >> > > -- View this message in context: http://www.nabble.com/Google-maps---Mapserver-projection-issue-tf3852632.html#a10996574 Sent from the Mapserver - User mailing list archive at Nabble.com.
