好的,我知道这听起来像应该在math.stackoverflow.com上询问,但这是一个令人尴尬的简单数学,我忘记了高中,而不是高级研究生的东西!
我正在做一些图形编程,我有一个三角形。顺便提一下,这个三角形的两个边是相同的,但我不确定这是否相关。我有两个角(顶点)的坐标,但不是第三个(这些坐标是屏幕上的像素,如果相关的话)。我知道三方的长度。
如何确定未知顶点的坐标?
答案 0 :(得分:2)
对于倾斜三角形:c ^ 2 = a ^ 2 + b ^ 2 - 2ab * cos(C)
其中a,b,c是边的长度(无论长度如何) A,B,C是与相同字母相对的角度。
使用上面的方法计算出你知道的一个端点的角度,然后使用角度,顶点的位置和相邻边之间的角度来确定未知顶点的位置。
问题的复杂性并不决定它应该继续发生哪个网站,而只是主题。所以你应该把它转到数学。
答案 1 :(得分:0)
/* use the law of cosines to get the angle of CAB */
c² = a² + b² - 2ab cos(Cangle)
cos(Cangle) = (a²+b²-c²) / 2ab
Cangle = acos((a²+b²-c²) / 2ab)
AB = B.xy - A.xy;
normalize(AB);
len = length(AC)
C.x = len*AB.x* cos(Cangle) * len*AB.y*sin(Cangle);
C.y = len*AB.x*-sin(Cangle) * len*AB.y*cos(Cangle);