Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Transform {
- public Transform() {
- translation = new Vector2f(0, 0);
- rotation = 0;
- scale = new Vector2f(1, 1);
- shearX = 0;
- shearY = 0;
- }
- private Vector2f translation;
- private Vector2f scale;
- private float shearX;
- private float shearY;
- private double rotation;
- public Matrix3f getTransformation() {
- Matrix3f translationMatrix = new Matrix3f().initTranslationIdentity(translation.getX(), translation.getY());
- Matrix3f rotationMatrix = new Matrix3f().initRotationIdentity(rotation);
- Matrix3f scaleMatrix = new Matrix3f().initScaleIdentity(scale.getX(), scale.getY());
- Matrix3f shearXMatrix = new Matrix3f().initShearXIdentity(shearX);
- Matrix3f shearYMatrix = new Matrix3f().initShearYIdentity(shearY);
- Matrix3f transformation = translationMatrix.mul(rotationMatrix.mul(scaleMatrix).mul(shearXMatrix).mul(shearYMatrix));
- return transformation;
- }
- public Vector2f getTranslation() {
- return translation;
- }
- public Vector2f getScale() {
- return scale;
- }
- public void setTranslation(Vector2f translation) {
- this.translation = translation;
- }
- public void setTranslation(float x, float y) {
- this.translation = new Vector2f(x, y);
- }
- public void setScale(Vector2f scale) {
- this.scale = scale;
- }
- public float getShearX() {
- return shearX;
- }
- public float getShearY() {
- return shearY;
- }
- public double getRotation() {
- return rotation;
- }
- public void setShearX(float shearX) {
- this.shearX = shearX;
- }
- public void setShearY(float shearY) {
- this.shearY = shearY;
- }
- public void setRotation(double rotation) {
- this.rotation = rotation;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement