精华内容
下载资源
问答
  • 地图经纬度
    千次阅读
    2022-03-28 17:24:34

     在小程序中经常会有地图的需求,获取导航的时候,腾讯地图返回的经纬度和百度地图返回的经纬度会有偏差,这时候需要转换下。

    /**
     * 返回两个经纬度之间的距离
     * @param  {string} lat1    起点纬度
     * @param  {string} lng1    起点经度
     * @param  {string} lat2    终点纬度
     * @param  {string} lng2    终点经度
     * @return {string}         返回两个经纬度之间的距离
     */
    
    function getDistance(lat1, lng1, lat2, lng2) {
        function e(lat1, lng1, lat2, lng2) {
            lat1 = (lat1 * f) / 180;
            lat2 = (lat2 * f) / 180;
            lng1 =
                2 *
                Math.asin(
                    Math.sqrt(
                        Math.pow(Math.sin((lat1 - lat2) / 2), 2) +
                            Math.cos(lat1) *
                                Math.cos(lat2) *
                                Math.pow(Math.sin(((lng1 * f) / 180 - (lng2 * f) / 180) / 2), 2),
                    ),
                );
            return (lng1 = Math.round(6378137 * lng1));
        }
        let f = Math.PI;
        return 1e3 < e(lat1, lng1, lat2, lng2) ? Math.round(e(lat1, lng1, lat2, lng2)) : e(lat1, lng1, lat2, lng2);
    }
    /**
     * 百度地图经纬度转为腾讯地图经纬度
     * @param {Number} lat
     * @param {Number} lng
     * @returns
     */
    function bdMapToTxMap(lat, lng) {
        let pi = (3.14159265358979324 * 3000.0) / 180.0;
        let x = lng - 0.0065;
        let y = lat - 0.006;
        let z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * pi);
        let theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * pi);
        lng = z * Math.cos(theta);
        lat = z * Math.sin(theta);
        return { lng: lng, lat: lat };
    }
    /**
     * 腾讯地图转百度地图经纬度
     * @param {Number} lat
     * @param {Number} lng
     * @returns
     */
    function txMapToBdMap(lng, lat) {
        let x_pi = (3.14159265358979324 * 3000.0) / 180.0;
        let x = lng;
        let y = lat;
        let z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
        let theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
        let lngs = z * Math.cos(theta) + 0.0065;
        let lats = z * Math.sin(theta) + 0.006;
    
        return {
            lng: lngs,
            lat: lats,
        };
    }

    更多相关内容
  • 本篇文章主要给大家介绍百度地图经纬度转换到腾讯地图/Google 对应的经纬度.需要的朋友可以参考下
  • PHP腾讯地图经纬度转百度地图经纬度类能将百度地图经纬度 转换到 腾讯地图/Google 对应的经纬度.
  • 四川省地市地图经纬度json数据;包含了四川省所有的地市州的地图经纬度数据,需要自己绘制地图的拿去用
  • 四川地图经纬度,包括省市区县,自己手动一步一步添加而来,需要的朋友可以下载
  • 全国主要城市百度地图经纬度坐标,全国主要城市百度地图经纬度坐标
  • pyecharts 地图经纬度数据
  • 百度地图BD09坐标腾讯地图用的也是GCJ02坐标@param double $lat 纬度@param double $lng 经度百度地图BD09坐标---->中国正常GCJ02坐标腾讯地图用的也是GCJ02坐标@param double $lat 纬度@param double $lng 经度@...
  • 高德地图经纬度转地理位置,地理位置转经纬度,json解析
  • 地图经纬度与相对原点真实坐标相互转换的方法,origin:原点位置经纬度,coordinate:需要转换的经纬度
  • 通过api获取到百度地图经纬度,再转换为腾讯地图经纬,用于夸地图规划路线,获取起点到终点距离等。。。
  • PHP腾讯地图经纬度转百度地图经纬度类能将百度地图经纬度 转换到 腾讯地图/Google 对应的经纬度.
  • 地图经纬度描点工具

    2016-02-19 13:32:56
    地图上描点 获取经纬度。 超级方便!
  • 各大地图经纬度相互转换 从某一地图坐标转换至另一地图坐标。支持经纬度类型:Google Earth, Google Maps, 百度地图,腾讯地图,高德地图,图吧地图。 单点查看与人工审核、修正坐标结果 你可以在地图上查看单点结果...
  • 地图上描点获取 省、市、区 的边界经纬度, 支持:搜索模式与手动描点模式。注意 台湾地区不支持搜索,需手动描点。 工具网站:http://geojson.io/
  • //百度坐标转换成腾讯坐标 convert2TecentMap(lng, lat){ if (lng == '' && lat == '') { return { lng: '', lat: '' } } var x_pi = 3.14159265358979324 * 3000.0 / 180.0 ...
    //百度坐标转换成腾讯坐标
    convert2TecentMap(lng, lat){
    	if (lng == '' && lat == '') {
    		return {
    			lng: '',
    			lat: ''
    		}
    	}
    	var x_pi = 3.14159265358979324 * 3000.0 / 180.0
    	var x = lng - 0.0065
    	var y = lat - 0.006
    	var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi)
    	var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi)
    	var qqlng = z * Math.cos(theta)
    	var qqlat = z * Math.sin(theta)
    	return `${qqlat},${qqlng}`
    },
    //腾讯坐标转换成百度坐标
    convert2BMap(lng, lat) {
        if (lng == null || lng == '' || lat == null || lat == ''){
    			return {
    				lng: '',
    				lat: ''
    			}
    		}
        var x_pi = 3.14159265358979324;
        var x = parseFloat(lng);
        var y = parseFloat(lat);
        var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
        var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
        var bmlng = (z * Math.cos(theta) + 0.0065).toFixed(5);
        var bmlat = (z * Math.sin(theta) + 0.006).toFixed(5);
        return `${bmlat},${bmlng}`
    }
    
    展开全文
  • 高德地图的显示经纬度界面,测试可行,飞控显示平台可以参考,visual C++
  • 由于项目需要 我自行制作了一个 地图经纬度批量拾取页面 有需要的可以自行下载
  • python 地图经纬度转换、纠偏的代码如下所示: # -*- coding: utf-8 -*- import json import urllib import math x_pi = 3.14159265358979324 * 3000.0 / 180.0 pi = 3.1415926535897932384626 # π a = 6378245.0 ...
  • 在项目中遇到一个问题,管理后台使用的是百度地图,APP使用的是高德地图,两者地图使用体系是不一样的 bd_decrypt (bdLat,bdLon){ var x = bdLon - 0.0065, y = bdLat - 0.006; var z = Math.sqrt(x * x + y * y) ...

    在项目中遇到一个问题,管理后台使用的是百度地图,APP使用的是高德地图,两者地图使用体系是不一样的,百度是BD-09,高德是GCJ-02

    bd_decrypt (bdLat,bdLon){
           var x = bdLon - 0.0065, y = bdLat - 0.006;
           var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * this.x_pi);
           var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * this.x_pi);
           var gcjLon = z * Math.cos(theta);
           var gcjLat = z * Math.sin(theta);
           return {'lat' : gcjLat, 'lon' : gcjLon};
       }
    
    展开全文
  • 首先我们来看全部实例代码: /** ...//您的百度地图ak,可以去百度开发者中心去免费申请 $url =http://api.map.baidu.com/geocoder/v2/?callback=renderOption&output=json&address=.$address.&cit
  • 高德地图 经纬度查询位置

    千次阅读 2022-04-26 11:52:06
    高德地图经纬度查位置 以及优化

    需求:通过一组经纬度查询地址

    高德api:入门指南-Web服务 API | 高德地图API (amap.com)

    先申请高德key

    接口调用:keyValue替换自己的keyValue

    batch:是否批量查询,默认false不使用

    https://restapi.amap.com/v3/geocode/regeo?key=keyValue&location=112.286928,31.548141&batch=true&extensions =all
    

    代码调用:

       public String getAddress(double latitude, double longitude) {
            String address = "";
            CloseableHttpResponse response = null;
            CloseableHttpClient httpClient = HttpClients.createDefault();
            URIBuilder uriBuilder = null;
            String location = longitude + "," + latitude;
            //调用高德地图请求拿到数据
            try {
                uriBuilder = new URIBuilder("https://restapi.amap.com/v3/geocode/regeo");
                uriBuilder.setParameter("key", mapConfiguation.getGaodeKey())
                        .setParameter("location", location);
                HttpGet httpGet = new HttpGet(uriBuilder.build());
                response = httpClient.execute(httpGet);
                if (response.getStatusLine().getStatusCode() == 200) {
                    HttpEntity httpEntity = response.getEntity();
                    String content = EntityUtils.toString(httpEntity, "utf8");
                    //解析数据
                    address = GaodeLocationByLongitudeAndlatitude(content.toString());
    //                System.out.println("位置信息=================="+address);
                }
            } catch (URISyntaxException e) {
                e.printStackTrace();
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    response.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
                try {
                    httpClient.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return address;
        }
    
    
        /**
         * 输入经纬度后返回位置信息
         *
         * @param jsonData
         * @return 返回的类gaodelocation,详见类
         */
        public String GaodeLocationByLongitudeAndlatitude(String jsonData) {
            String formattedAddress = null;
            String info = null;
            String status = null;
            String address = null;
            try {
                JSONObject jsonObject = JSONObject.fromObject(jsonData);
                // 解析json
                status = jsonObject.getString("status");
                info = jsonObject.getString("info");
                JSONObject dataObj = jsonObject.getJSONObject("regeocode");
                formattedAddress = dataObj.getString("formatted_address");
                if (status.equals("1")) {
                    address = formattedAddress;
                } else {
                    address = info;
                }
            } catch (Exception e) {
                e.printStackTrace();
                address = e.getMessage();
            }
    
    
            return address;
        }
    

    由于多条数据一条条查询开始使用ls.stream()查询,销量较低

    后来改为parallelStream()效率大大提高

    展开全文
  • 24.(leaflet篇)leaflet接入天地图经纬度投影256).zip,map,24.(leaflet篇)leaflet接入天地图经纬度投影256).html,lib,proj4,proj4.js,proj4leaflet.js,proj4-compressed.js,leaflet,images,marker-icon-2x....
  • 高德地图经纬度拾取

    千次阅读 2022-07-18 11:32:54
    地址: https://lbs.amap.com/tools/picker 作者:微微一笑绝绝子出处:https://www.cnblogs.com/wwyxjjz/p/16291314.html本博客文章均为作者原创,转载请注明作者和原文链接。 ...
  • 在uniapp开发app中,因为后台使用的是百度地图获取的经纬度,但是我是使用的uniapp自带的获取当前经纬度的api,获取的是高德的经纬度,这就导致,两个不同地图在获取经纬度,显示地图信息的时候会有偏差。不同地图...
  • * 腾讯经纬度转百度地图经纬度 * @param {Object} lng * @param {Object} lat */ export function qqMapTransBMap(lng, lat) { let x_pi = (3.14159265358979324 * 3000.0) / 180.0 let x = lng let y = lat ...
  • GPS经纬度转百度地图经纬度

    千次阅读 2020-11-19 09:52:34
    通过GPS实测经纬度,获取百度地图经纬度
  • 高德经纬度转百度经纬度 ...from=3&to=5&ak=你的key 百度经纬度转高德经纬度 高德地图官方文档有详细介绍http://lbs.amap.com/api/javascript-api/referen...
  • echarts3 重庆地图经纬度数据(附加带注释涟漪效果option),分为大屏1920*768及笔记本电脑1366*768两套经纬度数据,其中mapDemo中仅包含option设置。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,337
精华内容 19,734
关键字:

地图经纬度