[page:Curve] →

# [name]

Crea una curva spline 3D smooth (uniforme) da una serie di punti utilizzando l'algoritmo [link:https://en.wikipedia.org/wiki/Centripetal_Catmull-Rom_spline Catmull-Rom].

## Codice di Esempio

`// Crea un circuito ondulato chiuso const curve = new THREE.CatmullRomCurve3( [ new THREE.Vector3( -10, 0, 10 ), new THREE.Vector3( -5, 5, 5 ), new THREE.Vector3( 0, 0, 0 ), new THREE.Vector3( 5, -5, 5 ), new THREE.Vector3( 10, 0, 10 ) ] ); const points = curve.getPoints( 50 ); const geometry = new THREE.BufferGeometry().setFromPoints( points ); const material = new THREE.LineBasicMaterial( { color: 0xff0000 } ); // Crea l'oggetto finale da aggiungere alla scena const curveObject = new THREE.Line( geometry, material );`

## Esempi

[example:webgl_geometry_extrude_splines WebGL / geometry / extrude / splines]

## Costruttore

### [name]( [param:Array points], [param:Boolean closed], [param:String curveType], [param:Float tension] )

points – Un array di punti [page:Vector3]
closed – Se la curva è chiusa. Il valore predefinito è `false`.
curveType – Tipo di curva. Il valore predefinito è `centripetal`.
tension – Tensione della curva. Il valore predefinito è `0.5`.

## Proprietà

Vedi la classe [page:Curve] per le proprità comuni.

### [property:Array points]

L'array di punti [page:Vector3] che definisce la curva. Ha bisogno di almeno due entries.

### [property:Boolean closed]

Quando questa proprietà viene impostata su `true` la curva ritornerà su se stessa.

### [property:String curveType]

I valori possibili sono `centripetal`, `chordal` e `catmullrom`.

### [property:Float tension]

Quando [page:.curveType] è `catmullrom`, definisce la tensione di catmullrom.

## Metodi

Vedi la classe [page:Curve] per i metodi comuni.

## Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]