假设我们有一个线段(pq
)和一个接近它的点r
。如何显示三角形pqr
的面积等于|D|/2
:
如果
|1 px py |
D = det |1 qx qy |
|1 rx ry |
p=(px,py)
,q=(qx,qy)
,r=(rx,ry)
。
答案 0 :(得分:2)
考虑向量PQ
和PR
:
vector PQ = (qx-px, qy-py, 0)
vector PR = (rx-px, ry-py, 0)
可以使用cross product formula以PQ
和PR
来表示三角形的区域:
Area = 1/2 |PR| · |PQ| · sin(theta) # theta = included angle between PR and PQ
= 1/2 |PR ⨯ PQ|
这个交叉产品可以用行列式来写:
| |
2·Area = det |rx-px ry-py 0|
|qx-px qy-py 0|
= abs((rx-px)·(qy-py) - (qx-px)·(ry-py))
= abs(rx·qy - rx·py - px·qy + px·py - qx·ry + qx·py + px·ry - px·py)
^^^^^ ^^^^^
= abs(rx·qy - rx·py - px·qy - qx·ry + qx·py + px·ry)
^^^^^ ^^^^^ ^^^^^ ^^^^^ ^^^^^ ^^^^^
term1 term2 term3 term4 term5 term6
另一方面,您发布的决定因素也可以扩展:
|1 px py |
det |1 qx qy | = abs(qx·ry - rx·qy + rx·py - px·ry + px·qy - qx·py)
|1 rx ry | ^^^^^ ^^^^^ ^^^^^ ^^^^^ ^^^^^ ^^^^^
term4 term1 term2 term6 term3 term5
所以
|1 px py |
2·Area = det |1 qx qy |
|1 rx ry |
答案 1 :(得分:1)
如果按空间表示区域,请记住三角形的面积是基于高度除以2。基数可以是从p到q的距离,高度,从rect pq到r点的距离。写下方程式,你就可以得到它。