// Path: src/main/java/craftedcart/smblevelworkshop/util/ITransformable.java
// public interface ITransformable {
// 
//     default void setPosition(PosXYZ position) { throw new UnsupportedOperationException(); }
//     default PosXYZ getPosition() { throw new UnsupportedOperationException(); }
// 
//     default boolean canMoveX() { return true; }
//     default boolean canMoveY() { return true; }
//     default boolean canMoveZ() { return true; }
// 
//     default void setRotation(PosXYZ rotation) { throw new UnsupportedOperationException(); }
//     default PosXYZ getRotation() { throw new UnsupportedOperationException(); }
// 
//     default boolean canRotate() { return true; }
// 
//     default void setScale(PosXYZ scale) { throw new UnsupportedOperationException(); }
//     default PosXYZ getScale() { throw new UnsupportedOperationException(); }
// 
//     default boolean canScale() { return true; }
// 
// }
// 
// Path: src/main/java/craftedcart/smblevelworkshop/util/PosXYZ.java
// public class PosXYZ {
// 
//     public double x;
//     public double y;
//     public double z;
// 
//     public PosXYZ() {}
// 
//     public PosXYZ(double x, double y, double z) {
//         this.x = x;
//         this.y = y;
//         this.z = z;
//     }
// 
//     public PosXYZ(craftedcart.smbworkshopexporter.util.Vec3f vec3f) {
//         this.x = vec3f.x;
//         this.y = vec3f.y;
//         this.z = vec3f.z;
//     }
// 
//     public PosXYZ add(PosXYZ pos) {
//         return new PosXYZ(this.x + pos.x, this.y + pos.y, this.z + pos.z);
//     }
// 
//     public PosXYZ add(double x, double y, double z) {
//         return new PosXYZ(this.x + x, this.y + y, this.z + z);
//     }
// 
//     public PosXYZ subtract(PosXYZ pos) {
//         return new PosXYZ(this.x - pos.x, this.y - pos.y, this.z - pos.z);
//     }
// 
//     public PosXYZ subtract(double x, double y, double z) {
//         return new PosXYZ(this.x - x, this.y - y, this.z - z);
//     }
// 
//     public PosXYZ multiply(double factor) {
//         return new PosXYZ(x * factor, y * factor, z * factor);
//     }
// 
//     @Override
//     public boolean equals(Object obj) {
//         if (obj instanceof PosXYZ) {
//             PosXYZ posObj = (PosXYZ) obj;
//             return posObj.x == x && posObj.y == y && posObj.z == z;
//         } else {
//             return false;
//         }
//     }
// 
//     public PosXYZ getCopy() {
//         return new PosXYZ(x, y, z);
//     }
// 
// }


import craftedcart.smblevelworkshop.util.ITransformable;
import craftedcart.smblevelworkshop.util.PosXYZ;
package craftedcart.smblevelworkshop.animation;


/**
 * @author CraftedCart
 *         Created on 03/11/2016 (DD/MM/YYYY)
 */
public class NamedTransform implements ITransformable {

    private String name;
// Path: src/main/java/craftedcart/smblevelworkshop/util/ITransformable.java
// public interface ITransformable {
// 
//     default void setPosition(PosXYZ position) { throw new UnsupportedOperationException(); }
//     default PosXYZ getPosition() { throw new UnsupportedOperationException(); }
// 
//     default boolean canMoveX() { return true; }
//     default boolean canMoveY() { return true; }
//     default boolean canMoveZ() { return true; }
// 
//     default void setRotation(PosXYZ rotation) { throw new UnsupportedOperationException(); }
//     default PosXYZ getRotation() { throw new UnsupportedOperationException(); }
// 
//     default boolean canRotate() { return true; }
// 
//     default void setScale(PosXYZ scale) { throw new UnsupportedOperationException(); }
//     default PosXYZ getScale() { throw new UnsupportedOperationException(); }
// 
//     default boolean canScale() { return true; }
// 
// }
// 
// Path: src/main/java/craftedcart/smblevelworkshop/util/PosXYZ.java
// public class PosXYZ {
// 
//     public double x;
//     public double y;
//     public double z;
// 
//     public PosXYZ() {}
// 
//     public PosXYZ(double x, double y, double z) {
//         this.x = x;
//         this.y = y;
//         this.z = z;
//     }
// 
//     public PosXYZ(craftedcart.smbworkshopexporter.util.Vec3f vec3f) {
//         this.x = vec3f.x;
//         this.y = vec3f.y;
//         this.z = vec3f.z;
//     }
// 
//     public PosXYZ add(PosXYZ pos) {
//         return new PosXYZ(this.x + pos.x, this.y + pos.y, this.z + pos.z);
//     }
// 
//     public PosXYZ add(double x, double y, double z) {
//         return new PosXYZ(this.x + x, this.y + y, this.z + z);
//     }
// 
//     public PosXYZ subtract(PosXYZ pos) {
//         return new PosXYZ(this.x - pos.x, this.y - pos.y, this.z - pos.z);
//     }
// 
//     public PosXYZ subtract(double x, double y, double z) {
//         return new PosXYZ(this.x - x, this.y - y, this.z - z);
//     }
// 
//     public PosXYZ multiply(double factor) {
//         return new PosXYZ(x * factor, y * factor, z * factor);
//     }
// 
//     @Override
//     public boolean equals(Object obj) {
//         if (obj instanceof PosXYZ) {
//             PosXYZ posObj = (PosXYZ) obj;
//             return posObj.x == x && posObj.y == y && posObj.z == z;
//         } else {
//             return false;
//         }
//     }
// 
//     public PosXYZ getCopy() {
//         return new PosXYZ(x, y, z);
//     }
// 
// }


// Path: src/main/java/craftedcart/smblevelworkshop/animation/NamedTransform.java
import craftedcart.smblevelworkshop.util.ITransformable;
import craftedcart.smblevelworkshop.util.PosXYZ;

package craftedcart.smblevelworkshop.animation;


/**
 * @author CraftedCart
 *         Created on 03/11/2016 (DD/MM/YYYY)
 */
public class NamedTransform implements ITransformable {

    private String name;
    private PosXYZ position = new PosXYZ();