在java中使用图形对象

时间:2013-07-03 06:24:45

标签: java graphics

您好我正在研究完全用java编写的2D游戏引擎。有没有办法集中图形对象(g.drawString(x,y,z)。

如果可以通过Graphics和DefaultToolkit完成,那将是最好的。

非常感谢你:)

1 个答案:

答案 0 :(得分:1)

简单的数学。我们将对象置于居中位置,使其居中。

对象宽度 - w

对象高度 - h

区域宽度 - aW

区域高度 - aH

//跟随中心坐标是应放置左上角的坐标,以使对象位于中心

centerWidth =(aW - W)/ 2

centerHeight =(aH - H)/ 2

如您所见,您必须知道放置对象的区域的指标! 如果该区域只是屏幕,那么可以像这样使用屏幕尺寸。

    //Some dummy object metrics
    int w = 30;
    int h = 60;

    //Now we find out the area metrics
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    int aW = screenSize.width;
    int aH = screenSize.height;

    //Apply our common formula
    int centerWidth = (aW - w) / 2;
    int centerHeight = (aH - h) /2;

这适用于您知道的对象(宽度和高度)。

文字居中

如果您想要居中文字,可以使用FontMetrics课程,这样可以衡量文字的大小。