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`.
-
Constructor Details
-
CubicCurve
public CubicCurve()
-
-
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
-