【发布时间】:2011-04-05 22:29:34
【问题描述】:
所以我正在编写一段代码来获取 RC 平面作物除尘器的位置数据并计算横向的总表面积(不重复计算任何面积)。我无法弄清楚如何计算给定操作期间的面积。
给定下表计算点覆盖的面积。
x,y
1,2
1,5
4,3
6,6
3,4
3,1
有什么想法吗?我浏览了 Greens Theorem,但我没有一个实用的编码概念。
感谢您的建议
【问题讨论】:
标签: python math area rc redgreen
所以我正在编写一段代码来获取 RC 平面作物除尘器的位置数据并计算横向的总表面积(不重复计算任何面积)。我无法弄清楚如何计算给定操作期间的面积。
给定下表计算点覆盖的面积。
x,y
1,2
1,5
4,3
6,6
3,4
3,1
有什么想法吗?我浏览了 Greens Theorem,但我没有一个实用的编码概念。
感谢您的建议
【问题讨论】:
标签: python math area rc redgreen
从给定点构建convex hull
算法描述here
计算它的面积
Python 代码是here
【讨论】:
使用QHull 对该区域进行三角剖分,然后将所得三角形的面积相加。
【讨论】:
如果您的点保证在整数网格上 - 就像在您的示例中一样 - (并且您真的在寻找封闭区域)Pick's Theorem 会帮助吗?
【讨论】:
您必须将复杂的多边形大致划分为标准多边形(三角形、矩形等),然后找到所有这些多边形的面积。这就像常规积分一样(唯一的区别是您还没有找到近似数据的公式)。
以上几点是您假设您正在用您的数据形成一个封闭的多边形。
【讨论】:
比我更懂数学的人可能需要在这里验证信息。但它看起来合法:http://www.wikihow.com/Calculate-the-Area-of-a-Polygon 并且相当容易在代码中应用。
【讨论】:
我不完全确定您在寻找“表面积”的程度与寻找距离的程度相同。似乎您想计算该列表的一个点与下一个点之间的距离。如果是这种情况,只需使用Distance Formula。
如果飞机在这些点之间飞行时落下的灰尘宽度恒定,那么面积就是这些点之间的距离乘以喷雾的宽度。
【讨论】: