Bezier
Port of the operations of the library Bezier.JS with some adjustments, Original library created by Pomax: https://github.com/Pomax/bezierjs Based on algorithms described here: https://pomax.github.io/bezierinfo/
Constructors
Types
Link copied to clipboard
Link copied to clipboard
data class ProjectedPoint(var p: Point = Point(), var t: Ratio = Ratio.ZERO, var dSq: Double = 0.0) : IsAlmostEquals<Bezier.ProjectedPoint>
Functions
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun Curve.getEquidistantPoints(count: Int = this.recommendedDivisions(), out: PointArrayList = PointArrayList()): PointList
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Returns the t values where the curve changes its sign
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
This function creates a new curve, offset along the curve normals, at distance d. Note that deep magic lies here and the offset curve of a Bézier curve cannot ever be another Bézier curve.
Link copied to clipboard
fun project(point: Point, out: Bezier.ProjectedPoint = Bezier.ProjectedPoint()): Bezier.ProjectedPoint
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Scales a curve with respect to the intersection between the end point normals at a d distance.
Link copied to clipboard
fun selfIntersections(threshold: Double = 0.5, out: DoubleArrayList = DoubleArrayList()): DoubleArrayList
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Gets a list of isSimple bezier sub bezier curves.
Link copied to clipboard