Package-level declarations

Functions

Link copied to clipboard
fun ShapeContour.Companion.fromContours(contours: List<ShapeContour>, closed: Boolean, connectEpsilon: Double = 1.0E-6): ShapeContour

Creates a new ShapeContour by combining multiple ShapeContour instances.

Link copied to clipboard
fun Path3D.Companion.fromPaths(contours: List<Path3D>, closed: Boolean, connectEpsilon: Double = 1.0E-6): Path3D

Creates a new Path3D by combining multiple Path3D contours.

Link copied to clipboard
fun ShapeContour.insertPointAt(t: Double, weldEpsilon: Double = 1.0E-6): ShapeContour

Insert point at t

fun ShapeContour.insertPointAt(segmentIndex: Int, segmentT: Double, weldEpsilon: Double = 1.0E-6): ShapeContour

Insert point at segmentIndex, segmentT

Link copied to clipboard
fun ShapeContour.insertPointsAt(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): ShapeContour

Insert points at ascendingTs

Link copied to clipboard
fun Path3D.splitAt(segmentIndex: Double, segmentT: Double): List<Path3D>

fun Path3D.splitAt(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<Path3D>

Splits the current Path3D into multiple subpaths at specified normalized parameter values.

fun Segment2D.splitAt(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<Segment2D>

Splits the current Segment2D instance at specified parameter values.

fun Segment3D.splitAt(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<Segment3D>

Splits the current 3D segment into multiple sub-segments at the specified parameter t values.

fun ShapeContour.splitAt(segmentIndex: Double, segmentT: Double): List<ShapeContour>

Splits the current ShapeContour into multiple contours at the specified segment index and position within the segment.

fun ShapeContour.splitAt(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<ShapeContour>

Splits the current ShapeContour at specified normalized parameter values and returns sub-contours.

Link copied to clipboard
fun <T : EuclideanVector<T>> BezierSegment<T>.splitAtBase(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<BezierSegment<T>>

fun <T : EuclideanVector<T>> Path<T>.splitAtBase(ascendingTs: List<Double>, weldEpsilon: Double = 1.0E-6): List<Path<T>>

Splits the path at the given normalized parameter values (ascendingTs) and returns a list of subpaths.

Link copied to clipboard
fun List<Double>.weldAscending(epsilon: Double = 1.0E-6): List<Double>

Removes values from a list of doubles that are within a specified tolerance (epsilon) of the last added value, while preserving the ascending order of the list. The input list must already be in ascending order.