用法: 1. 載入proj4js.js, 例如: 2. 定義自定座標檔案(座標檔案的自定方法有多種, 可用檔案的方式, 或者在程式內自行宣告, 或者直接給定EPSG名稱, proj4js會自己抓取), 以下採用自己定義的方式, 幾個台灣常用的座標系統如下: Proj4js.defs["EPSG:3821"] = "+title=經緯度:TWD67 +proj=longlat +towgs84=-752,-358,-179,-.0000011698,.0000018398,.0000009822,.00002329 +ellps=aust_SA +units=度 +no_defs"; Proj4js.defs["EPSG:3825"] = "+title=二度分帶:TWD97 TM2 澎湖 +proj=tmerc +lat_0=0 +lon_0=119 +k=0.9999 +x_0=250000 +y_0=0 +ellps=GRS80 +units=公尺 +no_defs"; Proj4js.defs["EPSG:3826"] = "+title=TWD97 TM2+proj=tmerc +lat_0=0 +lon_0=121 +k=0.9999 +x_0=250000 +y_0=0 +ellps=GRS80 +units=公尺 +no_defs"; 3. 宣告要使用的投影系統, 這邊Proj()的方法有點類似 loading 的方式會把程式加載到proj4js內, 例如 var EPSG3826 = new Proj4js.Proj('EPSG:3826'); var EPSG4326 = new Proj4js.Proj('EPSG:4326'); 4. 自定轉換函式 function TransCoord(x, y) { var result; if (Proj4js) { var p = new Proj4js.Point(parseFloat(x), parseFloat(y)); Proj4js.transform(EPSG3826, EPSG4326, p); result = {x: p.x, y: p.y}; } return result; } 再來就可用 var c = TransCoord(217400, 2672400); 來取得轉換過的座標 (c.x, c.y)
創作者介紹
創作者 Give 的頭像
give

Give

give 發表在 痞客邦 留言(0) 人氣( 2836 )