This constructor creates a new CubicBezierCurve.
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.
200
Expects a Integer
Readonly
isRead-only flag to check if a given object is of type CubicBezierCurve.
This is a constant value
true
Readonly
typeA Read-only string to check if this
object type.
Sub-classes will update this value.
CubicBezierCurve
The starting point.
new THREE.Vector2()
The first control point.
new THREE.Vector2()
The second control point.
new THREE.Vector2()
The ending point.
new THREE.Vector2()
Generates the Frenet Frames
Expects a Integer
Optional
closed: booleanRequires a Curve definition in 3D space Used in geometries like TubeGeometry or ExtrudeGeometry.
Copies another Curve object to this instance.
Get total Curve arc length.
Returns a vector for a given position on the curve.
A position on the curve. Must be in the range [ 0, 1 ]
. Expects a Float
Optional
optionalTarget: Vector2If specified, the result will be copied into this Vector, otherwise a new Vector will be created. Default new T
.
Returns a unit vector tangent at t
A position on the curve. Must be in the range [ 0, 1 ]
. Expects a Float
Optional
optionalTarget: Vector2If specified, the result will be copied into this Vector, otherwise a new Vector will be created.
If the derived Curve does not implement its tangent derivation, two points a small delta apart will be used to find its gradient which seems to give a reasonable approximation.
Given u in the range [ 0, 1 ]
,
Expects a Float
Expects a Float
t
also in the range [ 0, 1 ]
. Expects a Float
.
u
and t
can then be used to give you points which are equidistant from the ends of the curve, using .getPoint.
Create a smooth 2D cubic bezier curve, defined by a start point, endpoint and two control points.
Example
See