用Proj4js实现客户端坐标转换

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最新的脚本文件。

Share with:

  • email
  • LinkedIn
  • Twitter
  • Facebook
  • del.icio.us
  • StumbleUpon
  • Reddit
  • Digg
  • 豆瓣

Related posts: