package pipe.utilities.math; /** * Cubic that uses the logic * a + b*u + c*u^2 + d*u^3 */ public class Cubic { /** * a in cubic expression */ private final float a; /** * b in cubic expression */ private final float b; /** * c in cubic expression */ private final float c; /** * Cubic expression constructor * @param _a a in expression * @param _b b in expression * @param _c c in expression * @param _d unused */ public Cubic(float _a, float _b, float _c, float _d) { a = _a; b = _b; c = _c; } // Return first control point coordinate (calculated from coefficients) public float getX1() { return (b + 3*a)/3; } // Return second control point coordinate (calculated from coefficients) public float getX2() { return (c + 2*b + 3*a)/3; } }