ShapeActor.java
package io.github.unisim.ui;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.Batch;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType;
import com.badlogic.gdx.scenes.scene2d.Actor;
/**
* Simple actor that generates a rectangle with a provided colour.
*/
public class ShapeActor extends Actor {
private final ShapeRenderer renderer = new ShapeRenderer();
private final Color color;
/**
* Create a new Actor that can be attached to the stage to draw a rectangle.
*
* @param color - The color of the
*/
public ShapeActor(Color color) {
super();
this.color = color;
}
@Override
public void draw(Batch batch, float parentAlpha) {
batch.end();
renderer.setProjectionMatrix(batch.getProjectionMatrix());
renderer.setTransformMatrix(batch.getTransformMatrix());
renderer.translate(getX(), getY(), 0);
renderer.begin(ShapeType.Filled);
renderer.setColor(color);
renderer.rect(0, 0, getWidth(), getHeight());
renderer.end();
batch.begin();
}
}