我需要计算三角形的纵横比。我有3分,因此我有长度和中点。我试图使用this教程(尽管我认为它不是很多),但它非常模糊,并没有提供太多信息。有人可以详细说明,特别是在矩形创建部分,甚至共享一些c ++代码来解决这个问题吗?
对詹姆斯的解决方案:
double s = (a + b + c) / 2.0;
double AR = (a * b * c) / (8.0 * (s - a) * (s - b) * (s - c));
@詹姆斯:
Cubit报告如下:
Function Name Average Std Dev Minimum Maximum
------------- --------- --------- --------- ---------
Aspect Ratio 1.000e+00 7.371e-04 1.000e+00 1.010e+00
--------------------------------------------------------------
您的公式报告以下内容:
Function Name Average Minimum Maximum
------------- --------- -------- -------
Aspect Ratio 1.00006 1.000000 1.00972
--------------------------------------------
答案 0 :(得分:9)
这些是我所知道的三角形宽高比的定义:
三角形的宽高比是最长边与最短边之比(所以等边三角形的长宽比为1)。
三角形的宽高比是圆周与其半径的两倍之比,因此AR = abc/(8(s-a)(s-b)(s-c))
其中a,b,c
是三角形边长s = (a+b+c)/2
。因此,如果a=b=c
,则宽高比为1.
这些比你给出的更容易计算。
答案 1 :(得分:0)
圆周与两个半径之比是正确的定义。有一个稍微简单的公式: AR = a b c /((b + c-a)(c + a-b)(a + b-c))