Class CubicCurve

java.lang.Object
org.graphstream.ui.fx_viewer.util.CubicCurve

public class CubicCurve
extends Object
Utility methods to deal with cubic Bézier curves.
  • Constructor Summary

    Constructors 
    Constructor Description
    CubicCurve()  
  • Method Summary

    Modifier and Type Method Description
    static double derivative​(double x0, double x1, double x2, double x3, double t)
    Derivative of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
    static org.graphstream.ui.geom.Point2 derivative​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point3 p3, double t)
    Derivative point of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
    static org.graphstream.ui.geom.Point2 derivative​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point3 p3, double t, org.graphstream.ui.geom.Point2 result)
    Store in `result` the derivative point of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
    static double eval​(double x0, double x1, double x2, double x3, double t)
    Evaluate a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` and return the position at parametric position `t` of the curve.
    static Point2D.Double eval​(Point2D.Double p0, Point2D.Double p1, Point2D.Double p2, Point2D.Double p3, double t)
    Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
    static org.graphstream.ui.geom.Point2 eval​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t)
    Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
    static org.graphstream.ui.geom.Point2 eval​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t, org.graphstream.ui.geom.Point2 result)
    Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and store the position at parametric position `t` of the curve in `result`.
    static org.graphstream.ui.geom.Point3 eval​(org.graphstream.ui.geom.Point3 p0, org.graphstream.ui.geom.Point3 p1, org.graphstream.ui.geom.Point3 p2, org.graphstream.ui.geom.Point3 p3, double t)
    Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
    static void main​(String[] args)  
    static Point2D.Double perpendicular​(Point2D.Double p0, Point2D.Double p1, Point2D.Double p2, Point2D.Double p3, double t)
    The perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.
    static org.graphstream.ui.geom.Vector2 perpendicular​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t)
    The perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.
    static org.graphstream.ui.geom.Vector2 perpendicular​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t, org.graphstream.ui.geom.Vector2 result)
    Store in `result` the perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • eval

      public static double eval​(double x0, double x1, double x2, double x3, double t)
      Evaluate a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` and return the position at parametric position `t` of the curve.
      Returns:
      The coordinate at parametric position `t` on the curve.
    • eval

      public static org.graphstream.ui.geom.Point2 eval​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t)
      Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
      Returns:
      The point at parametric position `t` on the curve.
    • eval

      public static org.graphstream.ui.geom.Point3 eval​(org.graphstream.ui.geom.Point3 p0, org.graphstream.ui.geom.Point3 p1, org.graphstream.ui.geom.Point3 p2, org.graphstream.ui.geom.Point3 p3, double t)
      Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
      Returns:
      The point at parametric position `t` on the curve.
    • eval

      public static Point2D.Double eval​(Point2D.Double p0, Point2D.Double p1, Point2D.Double p2, Point2D.Double p3, double t)
      Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and return the position at parametric position `t` of the curve.
      Returns:
      The point at parametric position `t` on the curve.
    • eval

      public static org.graphstream.ui.geom.Point2 eval​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t, org.graphstream.ui.geom.Point2 result)
      Evaluate a cubic Bézier curve according to control points `p0`, `p1`, `p2` and `p3` and store the position at parametric position `t` of the curve in `result`.
      Returns:
      the given reference to `result`.
    • derivative

      public static double derivative​(double x0, double x1, double x2, double x3, double t)
      Derivative of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
      Returns:
      The derivative at parametric position `t` on the curve.
    • derivative

      public static org.graphstream.ui.geom.Point2 derivative​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point3 p3, double t)
      Derivative point of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
      Returns:
      The derivative point at parametric position `t` on the curve.
    • derivative

      public static org.graphstream.ui.geom.Point2 derivative​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point3 p3, double t, org.graphstream.ui.geom.Point2 result)
      Store in `result` the derivative point of a cubic Bézier curve according to control points `x0`, `x1`, `x2` and `x3` at parametric position `t` of the curve.
      Returns:
      the given reference to `result`.
    • perpendicular

      public static org.graphstream.ui.geom.Vector2 perpendicular​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t)
      The perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.
      Returns:
      A vector perpendicular to the curve at position `t`.
    • perpendicular

      public static org.graphstream.ui.geom.Vector2 perpendicular​(org.graphstream.ui.geom.Point2 p0, org.graphstream.ui.geom.Point2 p1, org.graphstream.ui.geom.Point2 p2, org.graphstream.ui.geom.Point2 p3, double t, org.graphstream.ui.geom.Vector2 result)
      Store in `result` the perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.
      Returns:
      the given reference to `result`.
    • perpendicular

      public static Point2D.Double perpendicular​(Point2D.Double p0, Point2D.Double p1, Point2D.Double p2, Point2D.Double p3, double t)
      The perpendicular vector to the curve defined by control points `p0`, `p1`, `p2` and `p3` at parametric position `t`.
      Returns:
      A vector perpendicular to the curve at position `t`.
    • main

      public static void main​(String[] args)