Перемещение объекта под углом - Java

Узнай цену своей работы

Формулировка задачи:

Имею окно с панелькой, где paintComponent. По идее, круг в paintComponent должен был двигаться под углом, который задал в коде. Но тот движется либо под 45,90,0 градусов. В чем проблема? Вот код панельки:
Листинг программы
  1. public class panelDraw extends JPanel
  2. {
  3. public int x=0,y=0,dy,dx,clickX,clickY;
  4. double angle = (23*Math.PI)/180 ;//Угол в радианах
  5. public panelDraw()
  6. {
  7. Timer update = new Timer(1000 / 60, new ActionListener() {
  8. @Override
  9. public void actionPerformed(ActionEvent e) {
  10. // TODO Auto-generated method stub
  11. repaint();
  12. }
  13. });
  14. setBounds(0, 0, 444, 265);
  15. }
  16. public void update()
  17. {
  18. dx+= 2 * Math.cos(angle);//Определение движения
  19. dy+= 2 * Math.sin(angle);
  20. }
  21. @Override
  22. public void paintComponent(Graphics gr)
  23. {
  24. super.paintComponent(gr);
  25. update();
  26. gr.fillOval(dx, dy, 20, 20);
  27.  
  28. }
  29. }

Решение задачи: «Перемещение объекта под углом»

textual
Листинг программы
  1. gr.fillOval((int) dx, (int)dy, 20, 20);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут