项目因使用百度地图,但百度地图的面积计算太过low,经常为出现面积为负的情况;

调用computeSignedArea(path)
function computeSignedArea(path) {//传入path:{[{lat:,lng:}],[{lat:,lng:}],[{lat:,lng:}]
}let radius= 6371009let len = path.length;if (len < 3) return 0; let total = 0;let  prev = path[len - 1];let prevTanLat = Math.tan(((Math.PI / 2 - prev.lat/180*Math.PI) / 2));let prevLng = (prev.lng)/180*Math.PI;for (let i in path) {let tanLat = Math.tan((Math.PI / 2 -(path[i].lat)/180*Math.PI) / 2);let lng = (path[i].lng)/180*Math.PI;total += polarTriangleArea(tanLat, lng, prevTanLat, prevLng);prevTanLat = tanLat;prevLng = lng;}return Math.abs(total * (radius * radius));
}
function polarTriangleArea(tan1,lng1,tan2,lng2) {let deltaLng = lng1 - lng2;let t = tan1 * tan2;return 2 * Math.atan2(t * Math.sin(deltaLng), 1 + t * Math.cos(deltaLng));
}

最简单粗暴的经纬点面积计算方法;

js根据经纬度计算多边形面积相关推荐

  1. python计算多边形面积_Python求凸包及多边形面积教程

    一般有两种算法来计算平面上给定n个点的凸包:Graham扫描法(Graham's scan),时间复杂度为O(nlgn):Jarvis步进法(Jarvis march),时间复杂度为O(nh),其中h ...

  2. 通过坐标点位,计算多边形面积

    多边形面积 本文使用三角形面积累计法计算多边形面积,就是将多边形按照一个顶点,分割成多个三角形,计算三角形的面积,累加,得到多边形的面积. 当然,这个算法也有一些缺点,当这个多边形比较奇怪的时候,不能 ...

  3. Java 根据多边形坐标点 计算多边形面积

    请仔细阅读代码注释(有肯多坑,跟着注释走没问题) 亲测有效 /*** 计算多边形面积公式** @author Lion Li* @date 2020-05-19*/ public class Poly ...

  4. 判断多边形的凹凸性和计算多边形面积:利用向量叉乘

    根据百度百科的讲解: 凸多边形 现在重点讲解顶点凹凸性法(最常用也是较为简单的方法):计算总结在最后. 利用向量叉乘的相关知识进行计算:假设当前连续的三个顶点分别是P1,P2,P3.计算向量P1P3, ...

  5. 向量法计算多边形面积

    计算多边形面积的方法为将多边形分解成多个三角形,然后把这些三角形的面积相加.三角形面积为两边向量叉积除以2. 这是Java代码,目前是第3版 ,已经尽可能优化了,相比初版有25%的性能提升. /*** ...

  6. python计算多边形面积

    本文提供一个简单的方法计算多边形面积,参考维基百科 实现代码: def polygon_area(polygon):"""compute polygon areapoly ...

  7. js根据经纬度计算两点距离

    js根据经纬度计算两点距离 1.html <button type="button" οnclick="distanceByLnglat(116.95400,39. ...

  8. 5分钟理解外积计算多边形面积

    5分钟理解外积计算多边形面积 在矢量结构下,面状物体用其轮廓线构成的多边形表示,对于简单多边形,设有n个顶点,面积计算公式为: 公式如何得来的呢? 此公式涉及数学中的外积,外积即叉乘: "a ...

  9. matlab 二维凸包面积,PKU——3348——(凸包和计算多边形面积)

    //3348 Accepted 264K 0MS C++ 4016B//典型的凸包和计算多边形面积#include#include#include#include#include#includeusi ...

最新文章

  1. Git将主合并到功能分支
  2. 洛谷 - P4390 [BOI2007]Mokia 摩基亚(带修二维数点-四叉线段树/CDQ分治)
  3. 详细解读神经网络十大误解,再也不会弄错它的事情原理
  4. Java!越来越像Kotlin了!!
  5. K8S架构设计及工作流程分析
  6. 开发人员需要了解的测试
  7. 题目1140:八皇后
  8. 微软12月补丁星期二值得关注的6个0day及其它
  9. 2021-10-26 模电共射放大电路部分
  10. 微信小程序 等待几秒、_微信小程序从提交审核到审核通过最快速度:39分55秒!...
  11. python入门之函数结构第二关_Python入门二:函数
  12. 【转】宁做创业狼,不做打工狗(ZT)
  13. 浅谈ERP项目团队管理的四个方面
  14. 自定义AVA数据集流程及在SlowFast中训练
  15. 计算机里的word怎么重装,word能卸载重装吗 word卸载重装
  16. properties文件的用法;utils类封装数据库连接、资源关闭、通用的增删改,以及两种通用的查询方法
  17. java序列化3-序列化设计防坑点
  18. 校园地图设计——任意两点间的算法优化流程与while搭配switch语句的bug解读
  19. 一文读懂设计模式--策略模式
  20. 山水印|竹林野茶:在这个临近八月中秋的九月,再喝桂花香茶

热门文章

  1. iOS 15Beta5版本更新变化,这些细节你发现了吗?
  2. Prometheus客户端节点监控node_exporter
  3. SpringMVC的视图和视图解析器
  4. CheckListBox的实现方式分析
  5. Superpixel_Segmentation_With_Fully_Convolutional_Networks ---CVPR_2020_paper(翻译)
  6. SpringBoot 实现国际化 SpringBoot配置国际化 SpringBoot 国际化 springboot实现国际化 springboot配置国际化 springboot国际化代码实现
  7. FPGA Verilog视频笔记
  8. X509Certificate
  9. 滴滴一技术总监4年累计受贿1000万,被开除并移送公安机关
  10. PTA——互评成绩(c语言)