百度座標轉換API使用
http://api.map.baidu.com/geoconv/v1/?coords=121.54759,29.870724&from=1&to=5&ak=sGSOaO07WkRHHiCRxxbSQVBn
前提:121.54759,29.870724 是由手機硬體或谷歌地圖獲取的
錯誤的方法一:
function standard2china(lng,lat){
//http://api.map.baidu.com/geoconv/v1/?coords=121.54759,29.870724&from=1&to=5&ak=sGSOaO07WkRHHiCRxxbSQVBn
var apiurl="http://api.map.baidu.com/geoconv/v1/?coords="+lng+","+lat+"&from=1&to=5&ak=sGSOaO07WkRHHiCRxxbSQVBn";
$.ajax({
url:apiurl,
type:'get',
success:function(data){
console.log(data);
}
});
}
會提示錯誤:No 'Access-Control-Allow-Origin' header is present on the requested resource.
這是跨域問題,見:http://blog.csdn.net/zengmingen/article/details/51321758
錯誤方法二:
知道了跨域問題,解決要用dataType:'jsonp'
function standard2china(lng,lat){
//http://api.map.baidu.com/geoconv/v1/?coords=121.54759,29.870724&from=1&to=5&ak=sGSOaO07WkRHHiCRxxbSQVBn
var apiurl="http://api.map.baidu.com/geoconv/v1/?coords="+lng+","+lat+"&from=1&to=5&ak=sGSOaO07WkRHHiCRxxbSQVBn";
$.ajax({
url:apiurl,
type:'get',
dataType:'jsonp',
success:function(data){
console.log(data);
}
});
}
不提示報錯,但是返回結果是百度的js檔案內容:
正確方法:
百度demo:http://developer.baidu.com/map/jsdemo.htm#a5_2
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=sGSOaO07WkRHHiCRxxbSQVBn"></script>
<script type="text/javascript">
abc();
function abc(){
var x = 121.5473;
var y = 29.87061;
var ggPoint = new BMap.Point(x,y);
var convertor = new BMap.Convertor();
//座標轉換完之後的回撥函式
translateCallback = function (data){
if(data.status === 0) {
for (var i = 0; i < data.points.length; i++) {
var newPoint=data.points[i];
console.log(newPoint.lng);
console.log(newPoint.lat);
}
}
}
setTimeout(function(){
var convertor = new BMap.Convertor();
var pointArr = [];
pointArr.push(ggPoint);
convertor.translate(pointArr, 1, 5, translateCallback);
}, 1000);
}
</script>
</head>
<body>
</body>
</html>
相關文章
- Qt - 座標系及轉換QT
- GPS座標轉換為BIM
- 利用齊次座標進行二維座標轉換
- Excel轉百度座標系(AngularJS)ExcelAngularJS
- ROS TF :使用 TF 設定機器人 釋出座標變換 使用座標變換 將感測器資料轉換為機器人座標系下ROS機器人
- Python pytorch 座標系變換與維度轉換PythonPyTorch
- 地心地固座標系(ECEF)與站心座標系(ENU)的轉換
- iOS開發中常見定位座標轉換iOS
- 海康相機 畫素座標(px,py)到sdk ptz 座標轉換最後到onvif ptz座標
- MathNet Ray3D座標系下轉換3D
- pose座標變換
- 各種座標系互相轉換(WGS84轉換BD-09主要)
- Qt/C++地址轉座標/座標轉地址/逆地址解析/支援百度高德騰訊和天地圖QTC++地圖
- vue 實現高德座標轉GPS座標Vue
- Go版本的各座標系互相轉換的工具Go
- ArcGIS地圖投影與座標系轉換的方法地圖
- 工程座標轉換方法C#程式碼實現C#
- 座標系定義和相互轉換演算法演算法
- 三維空間座標系變換-旋轉矩陣矩陣
- WGS84、BD09、GCJ02座標轉換GC
- 使用swc rust api轉換javascriptRustAPIJavaScript
- C++ opencv的圓轉矩形,極座標轉笛卡爾座標系C++OpenCV
- 傾斜攝影osgb格式檔案,進行座標轉換
- 百度地圖API開發的快速使用和新增大量座標點的幾種方法地圖API
- 【GIS工具】百度poi載入工具之玩轉座標系統!
- 三維座標系旋轉——旋轉矩陣到旋轉角之間的換算矩陣
- 張正友標定Opencv實現、標定流程以及影像座標轉為世界座標OpenCV
- 使用opencv畫框,標出座標OpenCV
- 百度地圖框選標註座標點功能地圖
- gps wgs4座標與高德gcj02座標互轉GC
- Proj4js wgs84與cgcs2000座標轉換示例JSGC
- 世界座標系到攝像機座標系的矩陣變換推導過程矩陣
- [轉]旋轉矩陣:點旋轉和座標系旋轉矩陣
- 向量和矩陣的座標變換7矩陣
- 使用js獲取滑鼠座標JS
- 百度地圖:根據位置獲取座標地圖
- 向量和矩陣的座標變換(下標記法)7矩陣
- 雷達座標變換及其相關運算
- AUTOCAD——座標標註