什么是布雷特施奈德公式?
布雷特施奈德公式(Bretschneider's formula)可根据四条边长以及一对对角内角之和,求出任意简单四边形的面积——无论它是凸的还是凹的,是否为圆内接四边形都适用。它是婆罗摩笈多公式(适用于圆内接四边形)和海伦公式(适用于三角形)的推广形式。本计算器会同时给出面积 \(S\) 与周长 \(L\),长度单位由你自行选择(米、厘米、英寸等),面积则以相应单位的平方表示。
如何使用
按照四边形周边的顺序依次输入四条边长 \(a\)、\(b\)、\(c\)、\(d\)。然后输入一对对角内角之和(单位为度)——这两个角是彼此不相邻的顶点角(即边 \(a\) 与边 \(b\) 之间的角,加上边 \(c\) 与边 \(d\) 之间的角)。如果该四边形为圆内接四边形,则其对角互补,二者之和为 180 度,此时公式即退化为婆罗摩笈多公式。
公式详解
设 \(s = (a + b + c + d) / 2\) 为半周长,\(\theta\) 为一对对角之和。则面积等于 \((s-a)(s-b)(s-c)(s-d)\) 减去 \(abcd\cdot\cos^{2}(\theta/2)\) 之后再开平方根。计算余弦前需先将角度转换为弧度(\(\times\pi/180\)),并在平方余弦中使用半角 \(\theta/2\)。当 \(\theta = 180\) 度时,\(\cos(90\text{ 度}) = 0\),修正项随之消失。
$$ A = \sqrt{(s-a)(s-b)(s-c)(s-d) - abcd\,\cos^{2}\!\left(\tfrac{\theta}{2}\right)} $$$$ \text{where}\quad \left\{ \begin{aligned} a &= \text{Side a},\quad b = \text{Side b} \\ c &= \text{Side c},\quad d = \text{Side d} \\ s &= \dfrac{a+b+c+d}{2} \\ \theta &= \text{Opposite angle sum (deg)} \end{aligned} \right. $$
实例演算
取 \(a = 13\),\(b = 14\),\(c = 3\),\(d = 13\),\(\theta = 180\) 度。半周长为 \(s = 43/2 = 21.5\),于是 \(s-a = 8.5\),\(s-b = 7.5\),\(s-c = 18.5\),\(s-d = 8.5\),四者乘积为 \(10024.6875\)。由于 \(\cos(90\text{ 度}) = 0\),修正项为零,因此 \(S = \sqrt{10024.6875} \approx 100.123\) 平方单位,周长 \(L = 13 + 14 + 3 + 13 = 43\) 单位。
常见问题
为什么会提示"无效四边形"?每条边都必须为正数,且小于其余三条边之和,否则图形无法闭合。当根号内的值变为负数时也会出现该提示,这说明所输入的边长与角度互相矛盾。
边长需要使用特定单位吗?不需要。只要始终使用同一种长度单位即可,面积将以该单位的平方表示,周长则以该单位表示。
如果我只知道对角线怎么办?本计算器需要边长和一对对角之和。如果是圆内接四边形,你可以直接令 \(\theta = 180\),即套用婆罗摩笈多公式。