我知道这不是一个硬性触发问题,但可悲的是我数学迟缓。沿已知角度绘制已知距离的线
我需要从一个已知的起始点沿已知角度画一条50像素的线到一个未知的终点。该角度来自起点(400,400)和鼠标点击;该线需要朝向鼠标点击绘制,但点击仅需50个像素。
我已经google'd广泛,并找到了一些解决方案,但它只是没有为我而来。
这是我应得的角度:
float angle = (float) Math.toDegrees(Math.atan2(400 - event.getY(), 400 - event.getX()));
float angleInDegrees = (angle + 270) % 360;
“事件”是一个鼠标点击。
float endX = 250 + 50 * (float)Math.cos(angleInDegrees);
float endY 250 + 50 * (float)Math.sin(angleInDegrees);
line.setStartX(400);
line.setStartY(400);
line.setEndX(endX);
line.setEndY(endY);
的一切,我发现围绕Math.cos和Math.sin但我仍然没有得到它。我认为这个问题与将弧度映射到场景坐标有关,但我不确定。所以人们,我以什么方式愚蠢?我会很感激任何帮助。
非常感谢!这工作完美。这个答案更有意义,然后与角度混杂。 – user1198765 2012-02-09 04:58:07