Function 求等腰三角形的最后一个坐标,给出基准坐标和高度坐标
我对三角学一无所知,尽管我早在上学的时候就开始学三角学了,我觉得这应该很简单,但是在网上浏览大量的三角知识会让我头疼:)所以也许有人能帮我 标题正好说明了我想做什么,我有一句话: x1,y1和x2,y2 需要一个函数来求x3,y3,来完成一个等腰三角形,给定高度 为了清楚起见,直线x1,y2->x2,y2将是基准线,它不会与任何轴对齐(它将以随机角度..)Function 求等腰三角形的最后一个坐标,给出基准坐标和高度坐标,function,geometry,Function,Geometry,我对三角学一无所知,尽管我早在上学的时候就开始学三角学了,我觉得这应该很简单,但是在网上浏览大量的三角知识会让我头疼:)所以也许有人能帮我 标题正好说明了我想做什么,我有一句话: x1,y1和x2,y2 需要一个函数来求x3,y3,来完成一个等腰三角形,给定高度 为了清楚起见,直线x1,y2->x2,y2将是基准线,它不会与任何轴对齐(它将以随机角度..) 有人对此有简单的功能吗???第三个点在你的基地的垂直平分线上,并且距离线高度单位 通过求x和y坐标的平均值来计算基准的中点 计算您的海拔坡度
有人对此有简单的功能吗???第三个点在你的基地的垂直平分线上,并且距离线
高度
单位
- y-my=-dx/dy*(x-mx)
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
这可能不是最理想的方法。不确定它是否有效。我记得等腰三角形的边长相等,底边的角度相等。如果你有高度,那么你就有了最终坐标,因为这将是交点,对吗?构造一条向量(x1,y1)->(x2,y2)的法线。将其放置在中点((x1+x2)/2,(y1+y2)/2)并离开一段距离h 法线看起来像(-(y2-y1),x2-x1)。将其设为单位向量()
将h乘以这个单位向量加到中点。在我看来非常有效,除非你关心退化情况(dx=0或dy=0)。很好的解释!用预先完成的数学进行了更新。谢谢你的补充,亚当。这是我希望得到的答案(伪代码xD),但似乎有一个小问题,altitudealtitude-dxdx的值通常是负数,当然我们不能得到。。。有什么想法吗???@Aidan,嗯,从没想过。也许走简单的路线,做sqrt(abs(…)?好主意。。。我从来没有想过。谢谢大家,这和斯特拉格的回答非常有用,最终我结束了使用单位向量法,它工作得很好。