[Proj] How to Scale a Mercator projection?
warmerdam at pobox.com
Tue Jul 25 21:42:42 EDT 2006
Christopher Barker wrote:
>>> A more common formulation for Mercator is to drop the +k_0, and
>>> instead to provide a latitude of true scale using the +lat_ts
>>> parameter, which is the latitude at which the scale is 0
>> Where exactly did you see this? You are quite right that a scale of zero
>> is nonsensical.
> I found that here:
> It must be a typo.
Yes, and apparently my typo. I have fixed this.
> However, this is a GDAL issue. This all started with my trying to use
> the python bindings to osr. I initialized the projection with various
> versions of:
> Proj.SetMercator( clat = 29.1333,
> The scale parameter didn't make a difference. Thinking it may be an
> issue with the bindings, I then went straight to the proj command line
> tool, but I started with the command line spit out by osr.py when I
> passed in 0 as the scale:
> ValueError: Failed to initialize PROJ.4 with `+proj=merc +lat_ts=29.1333
> +lon_0=-89.583333 +k=0.000000 +x_0=100 +y_0=-2972000 +ellps=WGS84
> +datum=WGS84 +units=m +no_defs '
> In there, I see that lat_ts has been set, which is why scale didn't do
> anything. In fact, lat_ts is always set by osr.py, even if you set it to
> 0, and, with the python bindings, you don't have the option of not
> setting it at all, as they are all non-keyword arguments.
Ugg. What a nightmare.
I think I've seriously mixed things up by not properly
differentiating between the 1SP and 2SP forms of Mercator
in my OGR / WKT handling code and I'll need to do some work
to fix that.
> This issue aside, I'm still a bit confused. My understanding is that the
> projection (at least on nautical charts) is defined by it being
> Mercator, and by the scale at a reference latitude. That's why I was
> trying to set lat_ts: I know the scale at a latitude near the middle of
> the chart. Given that the scale changes with latitude with a mercator
> projection, it seems that that's a needed parameter.
My understanding is that PROJ.4 does not support a latitude of origin
(ie. lat_0) other than the equator.
I set the clouds in motion - turn up | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush | President OSGF, http://osgeo.org
More information about the Proj