Options
All
• Public
• Public/Protected
• All

# Class Curve3

A Curve3 object is a logical object, so not a mesh, to handle curves in the 3D geometric space. A Curve3 is designed from a series of successive Vector3.

see

https://doc.babylonjs.com/how_to/how_to_use_curve3

• Curve3

## Accessors

### length

• get length(): number
• #### Returns number

the computed length (float) of the curve.

### points

• #### Returns Vector3[]

the Curve3 stored array of successive Vector3

## Methods

### continue

• Returns a new instance of Curve3 object : const curve = curveA.continue(curveB); This new Curve3 is built by translating and sticking the curveB at the end of the curveA. curveA and curveB keep unchanged.

#### Parameters

• ##### curve: Curve3

the curve to continue from this curve

#### Returns Curve3

the newly constructed curve

### Static CreateCatmullRomSpline

• CreateCatmullRomSpline(points: Vector3[], nbPoints: number, closed?: boolean): Curve3
• Returns a Curve3 object along a CatmullRom Spline curve :

#### Parameters

• ##### points: Vector3[]

(array of Vector3) the points the spline must pass through. At least, four points required

• ##### nbPoints: number

(integer) the wanted number of points between each curve control points

• ##### Optional closed: boolean

(boolean) optional with default false, when true forms a closed loop from the points

#### Returns Curve3

the created Curve3

### Static CreateCubicBezier

• Returns a Curve3 object along a Cubic Bezier curve : http://doc.babylonjs.com/tutorials/How_to_use_Curve3#cubic-bezier-curve

#### Parameters

• ##### v0: Vector3

(Vector3) the origin point of the Cubic Bezier

• ##### v1: Vector3

(Vector3) the first control point

• ##### v2: Vector3

(Vector3) the second control point

• ##### v3: Vector3

(Vector3) the end point of the Cubic Bezier

• ##### nbPoints: number

(integer) the wanted number of points in the curve

#### Returns Curve3

the created Curve3

### Static CreateHermiteSpline

• Returns a Curve3 object along a Hermite Spline curve : http://doc.babylonjs.com/tutorials/How_to_use_Curve3#hermite-spline

#### Parameters

• ##### p1: Vector3

(Vector3) the origin point of the Hermite Spline

• ##### t1: Vector3

(Vector3) the tangent vector at the origin point

• ##### p2: Vector3

(Vector3) the end point of the Hermite Spline

• ##### t2: Vector3

(Vector3) the tangent vector at the end point

• ##### nbPoints: number

(integer) the wanted number of points in the curve

#### Returns Curve3

the created Curve3

• Returns a Curve3 object along a Quadratic Bezier curve : http://doc.babylonjs.com/tutorials/How_to_use_Curve3#quadratic-bezier-curve

#### Parameters

• ##### v0: Vector3

(Vector3) the origin point of the Quadratic Bezier

• ##### v1: Vector3

(Vector3) the control point

• ##### v2: Vector3

(Vector3) the end point of the Quadratic Bezier

• ##### nbPoints: number

(integer) the wanted number of points in the curve

#### Returns Curve3

the created Curve3