我知道這不是一個硬性觸發問題,但可悲的是我數學遲緩。沿已知角度繪製已知距離的線
我需要從一個已知的起始點沿已知角度畫一條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