我对三角学没有任何线索,尽管在学校学习它的时候,我认为这应该是非常简单的,但是在网上搜索大量的三角形物会让我的头部受伤:)所以也许有人可以帮助我...
标题解释了我想要做什么,我有一句话: x1,y1和x2,y2 并且想要一个函数来找到x3,y3来完成一个等腰三角形,给定高度。
为了清楚起见,x1,y2行> x2,y2将是基础,它不会对齐任何轴(它将是一个随机的角度..)
有没有人有这个简单的功能?
答案 0 :(得分:3)
构建向量的法线(x1,y1) - >(x2,y2)。将它放在中点((x1 + x2)/ 2,(y1 + y2)/ 2)并走出距离h。
法线看起来像( - (y2-y1),x2-x1)。将其设为单位向量(http://en.wikipedia.org/wiki/Unit_vector)。
将此单位向量的h次加到中点。
答案 1 :(得分:2)
第三点位于基座的垂直平分线上,距离直线altitude
个单位。
在伪代码中:
dx = x1 - x2
midpoint = ((x1 + x2) / 2, (y1 + y2) / 2)
slope = -dx / (y1 - y2)
x = sqrt(altitude*altitude - dx*dx) / slope + midpoint.x
y = slope * (x - midpoint.x) + midpoint.y
这可能不是最理想的方法。不确定它是否有效。的xD
答案 2 :(得分:0)