我使用DrawOval
函数在我的Java项目中的一个点上绘制一个圆圈:
g2d.drawOval(instruction.getX(), instruction.getY(), instruction.getWidth(), instruction.getHeight());
问题在于绘制了我的圆圈,使得目标点位于圆圈外而不是中心。
我试图说明左边发生的事情以及我想要发生在右边的事情:
我没有使用Java绘图的经验,我该如何解决?
答案 0 :(得分:2)
椭圆形在给定点处绘制,使其位于顶部,左角位于x / y位置。你需要将x / y偏移宽度/高度的一半......
int width = instruction.getWidth();
int height = instruction.getHeight();
g2d.drawOval(instruction.getX() - (width / 2), instruction.getY() - (height / 2), width, height);
查看Graphics#drawOval
了解详情