CurvePath class

An abstract base class extending Curve. A CurvePath is simply an array of connected curves, but retains the api of a curve.

Inheritance
Implementers

Constructors

CurvePath()
CurvePath.fromJson(Map<String, dynamic> json)

Properties

arcLengthDivisions int
This value determines the amount of divisions when calculating the cumulative segment lengths of a curve via getLengths. To ensure precision when using methods like getSpacedPoints, it is recommended to increase arcLengthDivisions if the curve is very large. Default is 200.
getter/setter pairinherited
autoClose bool
getter/setter pairinherited
cacheArcLengths List<double>?
getter/setter pairinherited
cacheLengths List<double>?
getter/setter pairinherited
currentPoint ↔ Vector2
getter/setter pairinherited
curves List<Curve>
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
isCubicBezierCurve bool
getter/setter pairinherited
isEllipseCurve bool
getter/setter pairinherited
isLineCurve bool
getter/setter pairinherited
isLineCurve3 bool
getter/setter pairinherited
isQuadraticBezierCurve bool
getter/setter pairinherited
isSplineCurve bool
getter/setter pairinherited
needsUpdate bool
getter/setter pairinherited
points List<Vector>
getter/setter pairinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
userData Map<String, dynamic>
getter/setter pairinherited
v0 ↔ Vector
getter/setter pairinherited
v1 ↔ Vector
getter/setter pairinherited
v2 ↔ Vector
getter/setter pairinherited

Methods

add(Curve curve) → void
clone() Curve
Creates a clone of this instance.
inherited
closePath() → void
Adds a lineCurve to close the path.
computeFrenetFrames(int segments, bool closed) FrenetFrames
Generates the Frenet Frames. Requires a curve definition in 3D space. Used in geometries like TubeGeometry or ExtrudeGeometry.
inherited
copy(Curve source) CurvePath
Copies another name object to this instance.
override
fromJson(Map<String, dynamic> json) CurvePath
Copies the data from the given JSON object to this instance.
override
getCurveLengths() List<double>
getLength() double
Get total curve arc length
override
getLengths(int? divisions) List<double>
Get list of cumulative segment lengths
inherited
getPoint(double t, [Vector? optionalTarget]) → Vector?
override
getPointAt(double u, [Vector? optionalTarget]) → Vector?
u - A position on the curve according to the arc length. Must be in the range 0, 1 .
inherited
getPoints([int divisions = 12]) List<Vector?>
divisions -- number of pieces to divide the curve into. Default is 12.
override
getSpacedPoints([num divisions = 40, num offset = 0.0]) List<Vector?>
divisions -- number of pieces to divide the curve into. Default is 5.
override
getTangent(double t, [Vector? optionalTarget]) → Vector
t - A position on the curve. Must be in the range 0, 1 .
inherited
getTangentAt(double u, [Vector? optionalTarget]) → Vector
u - A position on the curve according to the arc length. Must be in the range 0, 1 .
inherited
getUtoTmapping(double u, [double? distance]) double
Given u in the range ( 0 .. 1 ), returns t also in the range ( 0 .. 1 ). u and t can then be used to give you points which are equidistant from the ends of the curve, using getPoint.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() Map<String, dynamic>
Returns a JSON object representation of this instance.
override
toString() String
A string representation of this object.
inherited
updateArcLengths() → void
Update the cumulative segment distance cache. The method must be called every time curve parameters are changed. If an updated curve is part of a composed curve like CurvePath, updateArcLengths must be called on the composed curve, too.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited