【发布时间】:2020-07-11 19:29:51
【问题描述】:
我想画一个只有 3 条边长的三角形。 (在 C# Winforms 中)
示例:S1(3)、S2(4)、S3(5),每边的长度为 SN(x)。
我试过这样做,结果不是直角三角形,但看起来像。
对于第一面,我只是把它画成一条线。在我尝试用毕达哥尔找到角度之后,第二个也是如此,但我意识到如果我输入 (5,4,3) 它是别的东西。我只是想了解如何找到一个坐标只有边长的三角形。
Point a = new Point(0, 0);
Point b = new Point(s1, 0);
double y = (Math.Pow(s1, 2) + Math.Pow(s3, 2) - Math.Pow(s2, 2)) / (2 * s1);
double x = Math.Sqrt(Math.Pow(s3, 2) - Math.Pow(y, 2));
Point c = new Point((int)x, (int)y);
e.Graphics.DrawLine(Pens.Black, a, b);
e.Graphics.DrawLine(Pens.Black, b, c);
e.Graphics.DrawLine(Pens.Black, c, a);
结果如下:
有人可以帮助我吗?因为我想我不明白我该怎么做。
【问题讨论】:
-
@Lutz Lehmann 不,因为这是一种礼节,谢谢编辑
-
你可以计算两个圆在点
a和b上的交点,半径分别为s(4)和s(5)