如何通过中点获得三角形的高度

时间:2011-04-05 02:31:29

标签: math

我有三角形的中点,也没有其他顶点信息那么我如何用中点公式计算三角形的高度?

抱歉我编辑它。虽然这是数学问题,但我正在制作计算机程序。我有顶点信息这在程序执行中丢失所以我只保留midpoint.So在程序流程中我只有中点信息。所以如何我会计算三角形的高度,如果我有三角形顶点,如(-0.5,0),(0.5,0),(0.0,1)。

1 个答案:

答案 0 :(得分:1)

如果你确实有三个顶点,那么“高度”仍然没有很好地定义。三个顶点中的每一个都具有距相应的相对侧的“高度”。一般来说,这些并不相同。

要从对方(a,b)获取给定顶点c的距离,请使用交叉乘积:

定义

a = (ax, ay)
b = (bx, by)
c = (cx, cy)

计算:

bMinusA == b-a  == (bMinusAx, bMinusAy)
                 = (bx - ax, by - ay)
cMinusA == c-a  == (cMinusAx, cMinusAy)
                 = (cx - ax, cy - ay)

计算:

bMinusCcrossCMinusA == |(b-a)^(c-a)| 
                   = abs(bMinusAx* cMinusAy - bMinusAy*cMinusAx)

然后:

  heightCfromAB = bMinusCcrossCMinusA/ length(bMinusA)
                = bMinusCrosscMinusA/ sqrt( bMinusAx*bMinusAx+  bMinusAy* bMinusAy)

请注意,如果您置换顶点,则对于交叉积(条形符号)总是相同,因为它是三角形面积的两倍。

然后高度与对方的长度成反比。

所以,如果你愿意,你可以通过找到最短的一面并使用它来找到最大的高度。

更正:交叉产品的原始表达式有拼写错误。校正。