• 用Proj4js实现客户端坐标转换

    作者:  • 2008 年 5 月 11 日 • 技术主义 • 10 条评论

    Proj4js 用javascript重写了Proj4,而且使客户端对坐标转换的功能又有增强。相传OpenLayers 2.6要增加坐标转换的功能,可只是提供了相关接口。现在Proj4js已经完善了很多,如下代码实现了将在WGS84坐标系下的(108.80, 32.08) 的坐标转换为google 投影的过程:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </meta><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <script src="lib/OLprototype.js"></script>
    <script src="lib/proj4js/proj4js-combined.js"></script>
    <script type="text/javascript">
    Proj4js.defs["EPSG:4326"] = "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs ";
    Proj4js.defs["EPSG:900913"] = "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs";
    var sourceProj = new Proj4js.Proj("WGS84");
    var destProj = new Proj4js.Proj("EPSG:900913");
    var p = new Proj4js.Point(108.80,32.08);
    Proj4js.transform(sourceProj,destProj,p);
    alert(p);
    </script>
    </meta>

    PS:请到Proj4js的主页上下载Proj4js最新的脚本文件。

    相关文章:

    关于

    生于古城長安,求學金陵,輾轉赴美深造,現漂泊於長安與北京。

    http://www.yenching.org

    1. 我下了2个js 然后把这个script代到html里了。。结果啥都没发生 我对于我已经完全没信心了。。。

    2. 你好,我下了proj4js包 测试了你的代码,返回的P的值是[object object]?帮忙看看为什么……谢了

    3. 谢谢你的回答,问题解决了。没来的及回复你。现在有另一个问题,老是弄不明白,很棘手,能帮忙看一下吗?http://topic.csdn.net/u/20100802/12/a344e163-29e5-4f04-a0e9-b99039f45378.html 我的一段代码也贴在上面。先谢过。