Dav*_*ndz 2 math trigonometry calculus
我正在尝试根据面积和角度计算三角形.如果Angle-B是90°那么公式可以工作,但在我的情况下,角度可以是0.1°到179.8°.该公式假设角度为90,所以我认为可能存在一些隐藏的东西可能非常适合角度.这是公式:
替代文字http://i25.tinypic.com/jj33gx.png 替代文字http://i31.tinypic.com/2mmijkm.png
代码中的公式是:
Height = sqrt((2 * Area) / (tan(Angle-A)));
Run Code Online (Sandbox Code Playgroud)
我正在寻找公式的后半部分.公式的下一部分是这样的:
cos(sin(AngleB))
Run Code Online (Sandbox Code Playgroud)
好吧,新尝试:如果我的计算是正确的,那么B面等于sqrt(2*面积*sin(角度-B)/(sin(角度-A)*sin(角度-C))
由于Area = 1/2*A*B*sin(c)= 1/2*C*B*sin(a)= 1/2*A*C*sin(b)我们得到:
A = 2*area /(B*sin(c))并使用此我们得到:
C = sin(c)*B/sin(b),当我们将它放回到区域方程中时,我们得到:
B = sqrt(2*面积*sin(角度-B)/(sin(角度-A)*sin(角度-C))
当您知道一侧和所有角度时,使用普通三角法计算其他边应该很容易.
tziki的答案是正确的,但我想详细说明它是如何得出的.
我们从角度和面积开始作为知识.我将使用OP图中的标签来解释这个问题.
首先,我们有一个基本的事实,即三角形的面积是其基部和高度的一半:Area = base * height / 2.我们希望能够确定基数和高度之间的关系,这样我们就可以将这个方程式减少到一个未知数并求解基数.
另一个重要的事情是三角形的高度与Side-A成正比:height = Side-A * sin(Angle-B).所以知道Side-A会给我们带来高度.
现在我们需要在Side-A和Side-C(基础)之间建立关系.这里最合适的规则是正弦法:Side-A/sin(A) = Side-C/sin(C).我们重新安排这个等式,以Side-C的形式找到Side-A : Side-A = Side-C * sin(A)/sin(C).
我们现在可以将此结果插入到高度方程式中,以便仅根据Side-C得到高度公式: height = Side-C * sin(A) * sin(B) / sin(C)
使用Side-C作为面积方程中的基础,我们现在可以仅以Side-C的形式找到该区域: Area = Side-C^2 * sin(A) * sin(B) / 2sin(C)
然后重新安排这个等式,以区域的形式找到Side-C:
Side-C = SQRT(2 * Area * sin(C) / (sin(B) * (sin(A)))
Run Code Online (Sandbox Code Playgroud)
这给你一个方面.这可以重复以找到其他方面,或者您可以使用不同的方法来找到知道这一方的其他方.