我目前正在做一个项目,在这个项目中,我需要使用JFrame的java.awt.Graphics's drawLine()或drawPolygon()方法在中间画一个非直角三角形。这两种方法都需要所有点的坐标才能发挥作用。我的问题是,我所拥有的不是点,而是三角形的所有角度和边长。我已经绘制了一张漂亮的图表,说明了我希望能帮助你可视化我的问题:

(编辑C在此传感器中的位置不是固定在a和b之间,并且可能在AB所依赖的轴以下的任何位置)
你可以从我的图片中看到,我需要基于A的坐标的C坐标,有任何方法来计算这个给定非直角三角形的所有边和角的长度吗?
奖励:如何为A找到一个(x,y)值,从而有效地将JFrame中间的三角形居中?
发布于 2016-12-01 01:53:15
如果您知道角CAB,C点的坐标应该是:
(x+b·sin(θ), y-b·cos(θ))在Java中,有:
double Math.sin(double radians);
double Math.cos(double radians);请记住,角度需要在弧度。如果你的角度是度,试着:
double Math.sin(Math.toRadians(double degrees));
double Math.cos(Math.toRadians(double degrees));希望这能有所帮助。
https://stackoverflow.com/questions/40900947
复制相似问题