@@ 25,13 25,22 @@ public class MinimumTranslationVectorTes
private MinimumTranslationVector mtv = new MinimumTranslationVector();
private Vector2 centroid = new Vector2();
+ public MinimumTranslationVectorTest() {
+ GeometryUtils.polygonCentroid(polygon.getVertices(), 0, polygon.getVertices().length, centroid);
+ polygon.setOrigin(centroid.x, centroid.y);
+ }
+
@Override
public void show() {
Gdx.input.setInputProcessor(new InputAdapter() {
@Override
public boolean scrolled(int amount) {
- ((OrthographicCamera) viewport.getCamera()).zoom += amount / 25f;
- viewport.apply();
+ if(UIUtils.ctrl())
+ polygon.setRotation(polygon.getRotation() + amount * 5);
+ else {
+ ((OrthographicCamera) viewport.getCamera()).zoom += amount / 25f;
+ viewport.apply();
+ }
return true;
}
@@ 43,7 52,7 @@ public class MinimumTranslationVectorTes
viewport.apply();
} else {
viewport.unproject(centroid.set(screenX, screenY));
- polygon.setPosition(centroid.x, centroid.y);
+ polygon.setPosition(centroid.x - polygon.getOriginX() * polygon.getScaleX(), centroid.y - polygon.getOriginY() * polygon.getScaleY());
}
return true;
}