经纬度与墨卡托坐标互转

来源:互联网 发布:sql注入检测网站 编辑:程序博客网 时间:2024/05/22 16:48
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="经纬度与墨卡托互换.aspx.cs" Inherits="经纬度与墨卡托互换" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="../js/jquery.js" type="text/javascript"></script>
    <script>
        //经纬度转墨卡托
       function Lonlat2Mercator() {
            var x = parseFloat($("#X").attr("value"));
            var y = parseFloat($("#Y").attr("value"));
            var tmepx = x * 20037508.342787 / 180;
            var tempy = Math.log(Math.tan((90 + y) * Math.PI / 360)) / (Math.PI / 180);
            tempy = tempy * 20037508.342787 / 180;
            var str = "MX="+tmepx+"<br/>MY="+tempy;
            $("#content").html(str);
        }
        //墨卡托转经纬度
        function Mercator2Lonlat(){
            var x = parseFloat($("#X").attr("value"));
            var y = parseFloat($("#Y").attr("value"));
            var tmepx = x / 20037508.34 * 180;
            var tempy = y / 20037508.34 * 180;
            tempy = 180 / Math.PI * (2 * Math.atan(Math.exp(tempy * Math.PI / 180)) - Math.PI / 2);
            var str = "MX="+tmepx+"<br/>MY="+tempy;
            $("#content").html(str);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <div style="height:30px;line-height:30px;">
    x:<input id="X" type="text" />, y:<input id="Y" type="text" /> <input type="button" value="经纬度转墨卡托" onclick="Lonlat2Mercator()" /> <input type="button" value="墨卡托转经纬度" onclick="Mercator2Lonlat()" /> 
    <br />
    <div id="content">
    </div>
    </div>
    </div>
    </form>
</body>
</html>
0 0
原创粉丝点击