我正在尝试旋转玩家以跟随鼠标。为此,我使用转换为 Graphics2D 对象的 Graphics obj 并使用 rotate 方法。这是我的小组抽奖:
public void paint(Graphics g){
g.setColor(Color.white);
g.clearRect(0, 0, this.getWidth(), this.getHeight());
player.draw(g);
enemy.draw(g);
mouseSelection.draw(g);
wallBoard.draw(g);
//draw the existing walls
for(Wall w : walls)
w.draw(g);
//draw the potential wall
potentialWall.draw(g);
//draw the lineWalls
for(Wall w : lineWalls)
w.draw(g);
}
我所有的轮换内容都发生在 player.draw(g) 中,但我认为拥有更多信息会比拥有更少信息更好。这是我的 player.draw(g)
public void draw(Graphics g){
//draw the player as a circle for now
g.setColor(Color.black);
Graphics2D g2d = (Graphics2D)g;
g2d.drawOval(getX(), getY(), 20, 20);
sword.draw(g2d);
g2d.rotate(rotation);
g2d.rotate(0);
}
我尝试了许多 g2d.rotate 和绘制形状的组合。关于我如何旋转玩家和剑而不是整个世界本身的任何建议?