你需要传入的数据类型如下:

                    // 取面对象 中心点
var calculateCenter = function (lnglatarr) {
var total = lnglatarr.length;
var X = 0, Y = 0, Z = 0;
lnglatarr.forEach(function (lnglat) {
var lng = lnglat.lon * Math.PI / 180;
var lat = lnglat.lat * Math.PI / 180;
var x, y, z;
x = Math.cos(lat) * Math.cos(lng);
y = Math.cos(lat) * Math.sin(lng);
z = Math.sin(lat);
X += x;
Y += y;
Z += z;
});
X = X / total;
Y = Y / total;
Z = Z / total; var Lng = Math.atan2(Y, X);
var Hyp = Math.sqrt(X * X + Y * Y);
var Lat = Math.atan2(Z, Hyp);
console.log(Lng, Lat, Hyp);
return { lng: Lng * 180 / Math.PI, lat: Lat * 180 / Math.PI };
};
// console.log(calculateCenter(list), '1111');

最后拿到的坐标点,就是这个多边形的“重心”,赶紧试试吧~~~

作者:微微一笑绝绝子
出处:https://www.cnblogs.com/wwyxjjz/p/16397169.html
本博客文章均为作者原创,转载请注明作者和原文链接。

最新文章

  1. Linux rsync网站目录同步功能的实现
  2. 51nod1057(python2计算n!)
  3. GridView1事件
  4. 今天学习到的关于mysql数据库的linux命令
  5. 【POJ】2954 Triangle(pick定理)
  6. linq简介
  7. Modifiers
  8. PHP如何返回json格式的数据
  9. width() innerwidth() outerwidth() css('width')
  10. react 资源汇总
  11. windows下部署免费ssl证书(letsencrypt)
  12. dynamic-load-apk 插件与宿主方法互调
  13. CentOS 7 - 更新JDK,删除旧JDK,安装新JDK
  14. ZOJ Problem Set - 3708 Density of Power Network
  15. LeetCode算法题-Remove Linked List Elements(Java实现)
  16. 安装mysql警告 warning: mysql-community-server-5.7.19-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
  17. linux安装tomcat9
  18. jQuery Validate验证方法及教程
  19. 使用Navicat连接Mysql报错:can not get hostname for your address
  20. [乱搞]hdu 6406 Taotao picks apples 笛卡尔树+倍增

热门文章

  1. Qt5.6使用Qt自带虚拟键盘
  2. 一个比较全的C++农历算法(转)
  3. java后台接收参数为枚举,postman的json如何传入
  4. [iOS]遇到了一个问题:“XXXX”中无法使用Apple Pay ,检查此应用的设置并确定其设计可使用Apple Pay”
  5. Linux学习 --- 网络基础知识
  6. C#常见的数据结构
  7. 快速排序(QuiteSort)
  8. 如何用premiere添加配乐?pr视频添加音乐
  9. dockerfile配置远程ssh登录
  10. python_test_0001_base_string_swap