Package factories

Source Code of factories.Angles$Get2D

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package factories;

import graphics.common.Angle;
import graphics.common.Angle2D;
import graphics.common.Angle3D;
import utils.GlobalData;

/**
*
* @author Freezerburn
*/
public class Angles {

    private static AngleGet[] getters;

    public Angles() {
        getters = new AngleGet[] { new Get2D(), new Get3D() };
    }

    public static Angle get( double xAngle, double yAngle ) {
        return get( xAngle, yAngle, 0.0 );
    }

    public static Angle get( Angle angle ) {
        return get( angle.getRealXAngle(), angle.getRealYAngle(), angle.getRealZAngle() );
    }

    public static Angle get( double xAngle, double yAngle, double zAngle ) {
        return getters[ GlobalData.GRAPHICS_DIMENSIONS.getValue() ].get( xAngle, yAngle, zAngle );
    }


    private interface AngleGet {
        public Angle get( double xAngle, double yAngle, double zAngle );
    }

    private class Get2D implements AngleGet {
        @Override
        public Angle get( double xAngle, double yAngle, double zAngle ) {
            return new Angle2D( xAngle, yAngle );
        }
    }

    private class Get3D implements AngleGet {
        @Override
        public Angle get( double xAngle, double yAngle, double zAngle ) {
            return new Angle3D( xAngle, yAngle, zAngle );
        }
    }
}
TOP

Related Classes of factories.Angles$Get2D

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.