2

我有一条线,我想从玩家 x 和 y 向鼠标 x 和 y 绘制一条线,但我希望它只是朝着鼠标光标的方向移动(我不希望它从玩家那里拉到鼠标,但从玩家朝向鼠标并超越鼠标)。我使用下面的代码获取鼠标位置。

PointerInfo mouse = Mouse.getPointerInfo();
Point point = new Point(mouse.getLocation());

我用这段代码画线。

g2d.draw(new Line2D.Double(player.getX() + 32, player.getY() + 32, 
    point.getX(), point.getY()));

这只会使玩家和鼠标之间的线被绘制出来,但是我如何让它超出鼠标,以便它会离开屏幕?

4

1 回答 1

1

如果线条需要走多远并不重要,只需添加宽度和高度即可使其离开屏幕,如下所示:

g2d.draw(new Line2D.Double(player.getX() + 32, player.getY() + 32, 
    point.getX()+width, point.getY()+height));

其中“宽度”和“高度”定义为屏幕尺寸。

于 2013-05-06T20:40:58.457 回答