Есть предложения, почему треугольник не вращается, когда я нажимаю клавишу?

Я ищу ответ на вопрос, почему треугольник не вращается, когда я нажимаю клавишу.

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.geom.GeneralPath;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Beta extends JPanel implements KeyListener
{
    private static final long serialVersionUID = 1L;
    private int LEFT = 0, RIGHT = 1;

    Beta()
    {
        addKeyListener(this);
    }

    public void paintComponent( Graphics g )
    {
        repaint(); // call superclass's paintComponent

точки треугольника

        int[] xPoints = {-50, 0, 50};
        int[] yPoints = {0, -50, 0};

        Graphics2D g2d = ( Graphics2D ) g;
        GeneralPath star = new GeneralPath(); // create GeneralPath object

        // set the initial coordinate of the General Path
        star.moveTo(-50, 0);

        // create the star--this does not draw the star
        for ( int count = 1; count < xPoints.length; count++ )
          star.lineTo( xPoints[ count ], yPoints[ count ] );

        star.closePath(); // close the shape

        g2d.translate( getWidth()/2, getHeight()/2 ); // translate the origin to (150, 150)

        // rotate around origin and draw stars in random colors

повернуть

        g2d.rotate( Math.PI / 40.0 );

        g2d.setColor(Color.RED);

        g2d.fill( star );
    }

@Override
public void keyTyped(KeyEvent e) {
    // TODO Auto-generated method stub

}

нажать клавишу, чтобы нарисовать

public void keyPressed(KeyEvent ke)
{
    switch(ke.getKeyCode())
    {   
        default: repaint();
    }
}

@Override
public void keyReleased(KeyEvent e) {
    // TODO Auto-generated method stub

}

    public static void main( String[] args )
    {
        JFrame frame = new JFrame( "Space Battle Beta" );
        frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

            //add Panel to frame
        Beta shapes2JPanel = new Beta(); 
        frame.add( shapes2JPanel ); // add shapes2JPanel to frame
        frame.setBackground(Color.BLACK);
        frame.setSize( 315, 330 ); // set frame size
        frame.setVisible( true ); // display frame
    }
} // end class Shapes2JPanel

Не удается повернуть треугольник. repaint () не работает или это что-то еще?

0
задан Rob Hruska 10 May 2012 в 15:48
поделиться