Scale和Resolution的相互转换算法

一、根据resolution计算scale:

     var scale2=0.0254/96/0.35156249999999994/Math.PI/2/6378137*360;

      解释:0.0254代表每英寸0.0254米

                96代表:dpi 每英寸96个像素点

                resolution: 0.35156249999999994

                6378137:地球半径

二、根据scale计算resolution

       var resolution2=147914677*(0.0254/96/Math.PI/2/6378137*360);

       解释:147914677代表scales

         测试代码:

<html>
<body>

<script type="text/javascript">
//第七级 resolution
var resolution=0.00008596045914639882;

//坐标原点:
var x0=-180;
var y0=90;

//切图范围,示例左下角
var minx=88.390660499999981;
var miny=42.729192000000005;

var tilex=(minx-x0)/resolution/256;
var tiley=(miny-y0)/resolution/256;
document.write(tilex+ "<br />");
document.write(tiley+ "<br />");

//1.scale计算resolution,网上算法
var scale=147914677.7272828;
document.write(scale+ "<br />");
var res=scale*0.02540005080010160020/96/111194.872221777; 
document.write(scale+ "<br />");
document.write(res+ "<br />");

//2.resolution计算scale,精确算法
var scale2=0.0254/96/0.35156249999999994/Math.PI/2/6378137*360;
document.write((1/scale2)+ "<br />");

var scale2=1/(0.0254/96/0.35156249999999994/Math.PI/2/6378137*360);

var resolution2=147914677*(0.0254/76.2/Math.PI/2/6378137*360);
document.write(resolution2+"<br />");

document.write(Math.PI*2*6378137/360);
</script>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值