public void setRepresentedCubic(CubicCurve2D c) { if(null!=c) { this.p0.setLocation(c.getP1()); this.p1.setLocation(c.getP2()); this.c0.setLocation(c.getCtrlP1()); this.c1.setLocation(c.getCtrlP2()); this.dragGesture(); } }
@Override public Point2D getEndVector (boolean reverse) { // We use the control points to retrieve tangent vector Point2D vector = reverse ? PointUtil.subtraction(curve.getP1(), curve.getCtrlP1()) : PointUtil.subtraction(curve.getP2(), curve.getCtrlP2()); // Normalize vector = PointUtil.times(vector, 1.0 / PointUtil.length(vector)); return vector; }
final Point2D ctrl = (side == LEFT) ? curve.getCtrlP1() : curve.getCtrlP2();
assertEquals("P1", new Point2D.Double(4, 5), ((CubicCurve2D) p).getP1()); assertEquals("CtrlP1", new Point2D.Double(6, 7), ((CubicCurve2D) p).getCtrlP1()); assertEquals("CtrlP2", new Point2D.Double(8, 6), ((CubicCurve2D) p).getCtrlP2()); assertEquals("P2", new Point2D.Double(9, 4), ((CubicCurve2D) p).getP2());
assertEquals(((CubicCurve2D) expected).getP1(), ((CubicCurve2D) actual).getP1()); assertEquals(((CubicCurve2D) expected).getCtrlP1(), ((CubicCurve2D) actual).getCtrlP1()); assertEquals(((CubicCurve2D) expected).getCtrlP2(), ((CubicCurve2D) actual).getCtrlP2()); assertEquals(((CubicCurve2D) expected).getP2(), ((CubicCurve2D) actual).getP2()); } else if ((expected instanceof Path2D) && (actual instanceof Path2D)) {