2小时前小编发现微信小程序用户:【Mr.W】提出了一个关于“map问题,小程序用的经纬度和百度地图的一致吗?需要转换吗?”的问题,在问题中开发者Mr.W对该问题做了如下阐述:
1、如题
2、小程序的地图有没有更多的案例可供CV大法?
注:以上是微信小程序开发者:"Mr.W"对于本问题的一些阐述,这里做一个引用,我们将实时关注微信小程序助手对该问题提出的解决方案。
【2小时前】微信小程序技术运营专员对用户Mr.W提出的map问题,小程序用的经纬度和百度地图的一致吗?需要转换吗?给予如下回复
/**
* 返回两个经纬度之间的距离
* @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,
};
}
微信官方智能小程序的月活用户超过1.5亿,现在有着40多个流量入口,未来估计能够达到70多个。微信官方小程序不仅可以运行在微信官方系列的产品上,像例如爱奇艺、携程等,都是支持微信官方小程序运行的,这个数量高达40多个。像这样情况,对企业来说,这将意味着接触到更多的用户,微信官方的小程序的开放申请就又为企业在新移动时代的网络营销多了一个选择和流量阵地。
如果您也在使用微信小程序,请关注我们,如果您有关于微信小程序的使用问题请关注我们,如果您要找百度小程序模板、微信小程序模板请关注小程序模板网或者去微信开放社区找官方人员给予解决,相信微信官方在小程序上的发力会是一个里程碑!