[几何]计算不规则多边形的面积、中心、重心 您所在的位置:网站首页 异形平面怎么算面积的图形 [几何]计算不规则多边形的面积、中心、重心

[几何]计算不规则多边形的面积、中心、重心

2024-07-09 06:22| 来源: 网络整理| 查看: 265

原文:https://blog.csdn.net/shao941122/article/details/53671643

最近项目用到:在不规则多边形的中心点加一个图标。(e.g: xx地区发生暴雪,暴雪区域是多边形,给多边形中心加一个暴雪的图标)

之前的设计是,计算不规则多边形范围矩形bounds的中心点。这个比较简单,对于一些圆,矩形,凸多边形都比较适合。但是遇到凹多边形就会出现问题,比如一个月牙型的不规则多边形,bounds的中心点,就落到月牙外了。就有点难以接受了。

经过讨论,决定将中心改为重心。

下面上代码,

计算不规则多边形的中心:

/** * 获取不规则多边形几何中心点 * * @param mPoints * @return */ public static LatLng getCenterPoint(List mPoints) { // 1 自己计算 // 2 使用Google map API提供的方法(推荐) LatLngBounds.Builder boundsBuilder = LatLngBounds.builder(); for (LatLng ll : mPoints) boundsBuilder.include(ll); return boundsBuilder.build().getCenter(); }

计算不规则多边形的重心:

/** * 获取不规则多边形重心点 * * @param mPoints * @return */ public static LatLng getCenterOfGravityPoint(List mPoints) { double area = 0.0;//多边形面积 double Gx = 0.0, Gy = 0.0;// 重心的x、y for (int i = 1; i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有