2017-01-23 140 views
1

在我的第一个LibGdx项目中,我想绘制一些矩形。我想要实现一个像j2me中的fillRect()这样的函数。我必须绘制填充的矩形,并且需要操纵它(改变大小,旋转等等)。 当我谷歌关于它,总是只得到shapeRenderer相关的东西。绘制矩形图像 - LibGdx

请注意我如何绘制和操作自己的图像。

+0

不清楚你在问什么。 ShapeRenderer如何不符合你想要的? – Tenfour04

+0

我正在寻找简单的绘图操作..矩形,圆等 – Niranjana

+0

这就是ShapeRenderer所做的。 – Tenfour04

回答

0

使用Pixmap绘制矩形。

Texture texture=getPixmapTexture(Color.WHITE); 

Sprite sprite=new Sprite(texture); //Used for drawing 2D sprites. 
//or 
Image image=new Image(texture); //2D scene graph node. 

public static Texture getPixmapTexture(Color color){ 
    return new Texture(PixmapBuilder.getPixmapRectangle(1, 1, color)); 
}  

public static Pixmap getPixmapRectangle(int width, int height, Color color){ 
     Pixmap pixmap=new Pixmap(width, height, Pixmap.Format.RGBA8888); 
     pixmap.setColor(color); 
     pixmap.fillRectangle(0,0, pixmap.getWidth(), pixmap.getHeight()); 
     return pixmap; 
} 
0

Abhishek的答案是正确的。但是,如果你刚开始使用LibGDX开发游戏,我会检查你是否需要执行这样的操作(绘制一个矩形)。 在libGDX中,您可以使用Scene2D,它可以让您创建舞台,演员并在舞台上指挥他们。 因此,您不需要绘制矩形,而是创建一个可以将纹理,按钮或文本框关联到其中并将其放置在屏幕上的演员,如图像。 Scene2D让你再使用的东西像动作或旋转,缩放.. 大约有一些很好的视觉演示在Libgdx.info

我提这个,因为比,如果你做出这样的决定移动以后Scene2D可能更复杂早期。

+0

感谢您的回复!在一些演示游戏代码中,我已经看到仅在菜单中使用舞台和相关的东西。所以我也做了同样的事情。我的舞台在游戏画面中也有用吗? – Niranjana

+1

是的,我给你举个例子:我的游戏wordfiesta完全是用Scene2D创建的:(Android https://play.google.com/store/apps/details?id=com.wordfiesta.free_version)(iOS https:// itunes.apple.com/bj/app/word-fiesta-free-version/id1050452690?mt=8) – Julien