Browse Source

Docs italian version (#24561)

* feat: add Audio italian version

* feat: add Cameras italian version

* fix: remove error letter

* feat: add Constants italian version

* feat: add Core italian version

* feat: add Extras italian version

* Update docs/api/it/extras/curves/ArcCurve.html

Co-authored-by: DaveDev <[email protected]>

* Update docs/api/it/extras/core/Shape.html

Co-authored-by: DaveDev <[email protected]>

* Update docs/api/it/extras/curves/CatmullRomCurve3.html

Co-authored-by: DaveDev <[email protected]>

* Update docs/api/it/extras/core/ShapePath.html

Co-authored-by: DaveDev <[email protected]>

Co-authored-by: DaveDev <[email protected]>
Angela Busato 2 năm trước cách đây
mục cha
commit
c41b1060e0

+ 38 - 0
docs/api/it/extras/DataUtils.html

@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una classe che contiene funzioni di utilità per i dati.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Number toHalfFloat]( [param:Number val] )</h3>
+		<p>
+		val -- Un valore in virgola mobile a precisione singola.<br /><br />
+
+    Restituisce un valore in virgola mobile a mezza precisione dal valore in virgola mobile a singola precisione passato.
+		</p>
+
+		<h3>[method:Number fromHalfFloat]( [param:Number val] )</h3>
+		<p>
+		val -- Un valore in virgola mobile a mezza precisione.<br /><br />
+
+    Restituisce un valore in virgola mobile a singola precisione dal valore in virgola mobile a mezza precisione passato.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 34 - 0
docs/api/it/extras/Earcut.html

@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Un'implementazione dell'algoritmo di triangolazione dei poligoni earcut. Il codice è un porting di [link:https://github.com/mapbox/earcut mapbox/earcut].
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Array triangulate]( data, holeIndices, dim )</h3>
+		<p>
+		data -- Un array flat di coordinate dei vertici.<br />
+		holeIndices -- Un array di indici di hole, se presenti.<br />
+		dim -- Il numero di coordinate per vertice nell'array di input.<br /><br />
+
+    Triangola la definizione di forma data restituendo un array di triangoli. 
+    Un triangolo è definito da tre numeri interi consecutivi che rappresentano gli indici dei vertici.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 38 - 0
docs/api/it/extras/ImageUtils.html

@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una classe contente funzioni di utilità per le immagini.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:String getDataURL]( [param:HTMLCanvasElement image] | [param:HTMLImageElement image] | [param:ImageBitmap image] )</h3>
+		<p>
+		image -- L'oggetto immagine.<br /><br />
+
+    Restituisce un URI di dati contenente una rappresentazione dell'immagine data.
+		</p>
+
+		<h3>[method:Object sRGBToLinear]( [param:HTMLCanvasElement image] | [param:HTMLImageElement image] | [param:ImageBitmap image] )</h3>
+		<p>
+		image -- L'oggetto immagine.<br /><br />
+
+    Converte i dati dell'immagine sRGB passata in uno spazio colore lineare.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 111 - 0
docs/api/it/extras/PMREMGenerator.html

@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Questa classe genera un Prefiltered Mipmapped Radiance Environment Map (PMREM) da una texture di ambiente cubeMap.
+      Ciò consente di accedere rapidamente a diversi livelli di sfocatura (blur) in base alla rugosità (roughness) del materiale.
+      A differenza di una catena mipmap tradizionale, scende solo al livello LOD_MIN (sopra) e quindi crea 'mips' aggiuntivi
+      ancora più filtrati alla stessa risoluzione LOD_MIN, associati a livelli di rugosità più elevati.
+      In questo modo manteniamo la risoluzione per interpolare uniformemente l'illuminazione diffusa, limitando al contempo
+      il calcolo del campionamento.<br/><br/>
+
+      Nota: La rugosità minima di [page:MeshStandardMaterial] dipende dalla dimensione della texture fornita.
+      Se il tuo render è di piccole dimensioni o le parti lucide hanno molte curvature, potresti comunque 
+      riuscire ad ottenere una texture di dimensioni inferiori.
+
+			<table>
+				<tr>
+					<th>texture size</td><th>minimum roughness</td>
+				</tr>
+				<tr>
+					<td>16</td><td>0.21</td>
+				</tr>
+				<tr>
+					<td>32</td><td>0.15</td>
+				</tr>
+				<tr>
+					<td>64</td><td>0.11</td>
+				</tr>
+				<tr>
+					<td>128</td><td>0.076</td>
+				</tr>
+				<tr>
+					<td>256</td><td>0.054</td>
+				</tr>
+				<tr>
+					<td>512</td><td>0.038</td>
+				</tr>
+				<tr>
+					<td>1024</td><td>0.027</td>
+				</tr>
+			</table>
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:WebGLRenderer renderer] )</h3>
+		<p>
+      Questo costruttore crea una nuova [name].
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:WebGLRenderTarget fromScene]( [param:Scene scene], [param:Number sigma], [param:Number near], [param:Number far] )</h3>
+		<p>
+			[page:Scene scene] - La scena data.<br>
+			[page:Number sigma] - (opzionale) Specifica un raggio di blur in radianti da applicare alla scena prima della generazione PMREM.
+      Il valore predefinito è `0`.<br>
+			[page:Number near] - (opzionale) Il valore del piano near. Il valore predefinito è `0.1`.<br>
+			[page:Number far] - (opzionale) Il valore del piano far. Il valore predefinito è `100`.<br /><br />
+
+      Genera un PMREM da una scena fornita, che può essere più veloce rispetto all'utilizzo di un'immagine se 
+      la larghezza di banda della rete è bassa. I piani near e far opzionali garantiscono che la scena sia renderizzata completamente
+      (la cubeCamera è posizionata nell'origine).
+		</p>
+
+		<h3>[method:WebGLRenderTarget fromEquirectangular]( [param:Texture equirectangular] )</h3>
+		<p>
+			[page:Texture equirectangular] - La texture equirettangolare.<br /><br />
+
+      Genera una PMREM da una texture equirettangolare.
+		</p>
+
+		<h3>[method:WebGLRenderTarget fromCubemap]( [param:CubeTexture cubemap] )</h3>
+		<p>
+			[page:CubeTexture cubemap] - La texture cubemap.<br /><br />
+
+      Genera una PMREM da una texture cubemap.
+		</p>
+
+		<h3>[method:undefined compileCubemapShader]()</h3>
+		<p>
+      Pre-compila lo shader cubemap. Puoi ottenere un avvio più rapido invocando questo metodo durante il recupero di rete della texture per una 
+      maggiore concorrenza.
+		</p>
+
+		<h3>[method:undefined compileEquirectangularShader]()</h3>
+		<p>
+      Pre-compila lo shader equirettangolare. Puoi ottenere un avvio più rapido invocando questo metodo durante il recupero di rete della texture per una 
+      maggiore concorrenza.
+		</p>
+
+		<h3>[method:undefined dispose]()</h3>
+		<p>
+      Elimina la memoria interna del PMREMGenerator.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 52 - 0
docs/api/it/extras/ShapeUtils.html

@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una classe contenente funzioni di utilità per le forme (shape).<br /><br />
+
+      Si noti che queste sono tutte funzioni lineari quindi è necessario calcolare separatamente i componenti
+      x, y (e z, w se presenti) di un vettore.
+		</p>
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Number area]( contour )</h3>
+		<p>
+		  contour -- poligono 2D. Un array di THREE.Vector2().<br /><br />
+
+      Calcola l'area di un poligono di contorno (2D).
+		</p>
+
+		<h3>[method:Boolean isClockWise]( pts )</h3>
+		<p>
+		  pts -- punti che definiscono un poligono 2D.<br /><br />
+
+      Si noti che questa è una funzione lineare quindi è necessario calcolare separatamente i componenti 
+      x,y di un poligono.<br /><br />
+
+      Utilizzato internamente da [page:Path Path],
+      [page:ExtrudeGeometry ExtrudeGeometry] e [page:ShapeGeometry ShapeGeometry].
+		</p>
+
+		<h3>[method:Array triangulateShape]( contour, holes )</h3>
+		<p>
+		  contour -- poligono 2D. Un array di [page:Vector2].<br />
+		  holes -- Un array che contiene array di [page:Vector2]. Ogni array rappresenta una singola definizione di hole.<br /><br />
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 132 - 0
docs/api/it/extras/core/Curve.html

@@ -0,0 +1,132 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una classe base astratta per la creazione di un oggetto [name] che contiene i metodi di interpolazione.
+      Per un array di [name] vedere [page:CurvePath].
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]()</h3>
+		<p>
+      Questo costruttore crea una nuova [name].
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Integer arcLengthDivisions]</h3>
+		<p>
+      Questo valore determina la quatità di divisioni quando vengono calcolate le lunghezze cumulative dei segmenti tramite [page:.getLengths].
+      Per garantire la precisione quando vengono utilizzati metodi come [page:.getSpacedPoints], si consiglia di aumentare la proprietà 
+      [page:.arcLengthDivisions] se la curva è molto grande. Il valore predefinito è 200.
+    </p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Vector getPoint]( [param:Float t], [param:Vector optionalTarget] )</h3>
+		<p>
+			[page:Float t] - Una posizione sulla curva. Deve essere compreso nell'intervallo [ 0, 1 ]. <br>
+			[page:Vector optionalTarget] — (opzionale) Se specificato, il risultato verrà copiato in questo vettore,
+			altrimenti verrà creato un nuovo vettore. <br /><br />
+
+      Restituisce un vettore per una data posizione sulla curva.
+		</p>
+
+		<h3>[method:Vector getPointAt]( [param:Float u], [param:Vector optionalTarget] )</h3>
+		<p>
+			[page:Float u] - Una posizione sulla curva in base alla lunghezza dell'arco. Deve essere compreso nell'intervallo [ 0, 1 ]. <br>
+			[page:Vector optionalTarget] — (opzionale) Se specificato, il risultato verrà copiato in questo vettore,
+			altrimenti verrà creato un nuovo vettore. <br /><br />
+
+      Restituisce un vettore per una data posizione sulla curva in base alla lunghezza dell'arco.
+		</p>
+
+		<h3>[method:Array getPoints]( [param:Integer divisions] )</h3>
+		<p>
+			divisions -- numero di pezzi in cui dividere la curva. Il valore predefinito è `5`.<br /><br />
+
+      Restituisce un insieme di divisioni + 1 punto usando getPoint( t ).
+		</p>
+
+		<h3>[method:Array getSpacedPoints]( [param:Integer divisions] )</h3>
+		<p>
+			divisions -- numero di pezzi in cui dividere la curva. Il valore predefinito è `5`.<br /><br />
+
+      Restituisce un insieme di divisioni + 1 punto equispaziato usando getPointAt( u ).
+		</p>
+
+		<h3>[method:Float getLength]()</h3>
+		<p>Restituisce la lunghezza totale dell'arco della curva.</p>
+
+		<h3>[method:Array getLengths]( [param:Integer divisions] )</h3>
+		<p>Restituisce la lista delle lunghezze cumulative del segmento.</p>
+
+		<h3>[method:undefined updateArcLengths]()</h3>
+		<p>
+      Aggiorna la cache della distanza cumulativa del segmento. Il metodo deve essere chiamato ogni volta 
+      che i parametri della curva vengono modificati. Se una curva aggiornata fa parte di una curva composta come 
+      [page:CurvePath], [page:.updateArcLengths]() deve essere chiamato anche sulla curva composta.
+		</p>
+
+		<h3>[method:Float getUtoTmapping]( [param:Float u], [param:Float distance] )</h3>
+		<p>
+      Dato u nell'intervallo ( 0 .. 1 ), restituisce [page:Float t] anche nell'intervallo ( 0 .. 1 ).
+      u e t possono quindi essere utilizzati per fornire punti equidistanti dalle estremità della curva, utilizzando
+      [page:.getPoint].
+		 </p>
+
+		<h3>[method:Vector getTangent]( [param:Float t], [param:Vector optionalTarget] )</h3>
+		<p>
+			[page:Float t] - Una posizione sulla curva. Deve essere compreso nell'intervallo [ 0, 1 ]. <br>
+			[page:Vector optionalTarget] — (opzionale) Se specificato, il risultato sarà copiato in questo vettore,
+      altrimenti sarà creato un nuovo vettore.<br /><br />
+
+      Restituisce un vettore unitario tangente a t. Se la curva derivata non implementa la sua derivazione tangente,
+      per trovare la sua pendenza verranno utilizzati due punti distanti un piccolo delta, che sembrano fornire 
+      un'approssimazione ragionevole.
+		</p>
+
+		<h3>[method:Vector getTangentAt]( [param:Float u], [param:Vector optionalTarget] )</h3>
+		<p>
+			[page:Float u] - Una posizione sulla curva in base alla lunghezza dell'arco. Deve essere compreso nell'intervallo [ 0, 1 ]. <br>
+			[page:Vector optionalTarget] — (opzionale) Se specificato, il risultato sarà copiato in questo vettore,
+      altrimenti sarà creato un nuovo vettore.<br /><br />
+
+      Restituisce la tangente in un punto equidistante dalle estremità della curva dal punto indicato 
+      in [page:.getTangent].
+		</p>
+
+		<h3>[method:Object computeFrenetFrames]( [param:Integer segments], [param:Boolean closed] )</h3>
+		<p>
+      Genera i Frame Franet. Richiede una definizione della curva nello spazio 3D. Utilizzata nelle geometrie come [page:TubeGeometry] o [page:ExtrudeGeometry].
+		</p>
+
+		<h3>[method:Curve clone]()</h3>
+		<p>Crea un clone di questa istanza.</p>
+
+		<h3>[method:this copy]( [param:Curve source] )</h3>
+		<p>Copia un altro oggetto [name] in questa istanza.</p>
+
+		<h3>[method:Object toJSON]()</h3>
+		<p>Restituisce un oggetto JSON rappresentazione di questa istanza.</p>
+
+		<h3>[method:this fromJSON]( [param:Object json] )</h3>
+		<p>Copia i dati dell'oggetto JSON dato in questa istanza.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 70 - 0
docs/api/it/extras/core/CurvePath.html

@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una classe base atratta che estende [page:Curve]. Una CurvePath è semplicemente un array di curve collegate,
+      ma mantiene le API di una curva.
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]()</h3>
+		<p>
+      Il costruttore non prende parametri.
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Curve] per le proprietà comuni.</p>
+
+		<h3>[property:Array curves]</h3>
+		<p>L'array di [page:Curve Curve].</p>
+
+		<h3>[property:Boolean autoClose]</h3>
+		<p>Se chiudere automaticamente o meno il percorso.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Curve] per i metodi comuni.</p>
+
+		<h3>[method:undefined add]( [param:Curve curve] )</h3>
+		<p>Aggiunge una curva all'array [page:.curves].</p>
+
+		<h3>[method:undefined closePath]()</h3>
+		<p>Aggiunge una [page:LineCurve lineCurve] per chiudere il percorso.</p>
+
+		<h3>[method:Array getCurveLengths]()</h3>
+		<p>Ottieni l'elenco delle lunghezze delle curve cumulative nell'array [page:.curves].</p>
+
+		<h3>[method:Array getPoints]( [param:Integer divisions] )</h3>
+		<p>
+			divisions -- il numero di pezzi in cui dividere la curva. Il valore predefinito è `12`.<br /><br />
+
+      Restituisce un array di punti che rappresentano una sequenza di curve. Il paramentro `division`
+      definisce il numero di pezzi in cui è suddivisa ciascuna curva. Tuttavia, ai fini dell'ottimizzazione
+      e della qualità, la risoluzione di campionamento per ogni curva dipende dal suo tipo. Ad esempio, per una
+      [page:LineCurve], il numero restituito di punti è sempre solo 2.
+		</p>
+
+		<h3>[method:Array getSpacedPoints]( [param:Integer divisions] )</h3>
+		<p>
+			divisions -- il numero di pezzi in cui dividere la curva. Il valore predefinito è `40`.<br /><br />
+
+      Restituisce un insieme di divisioni + 1 punto equispaziato usando getPointAt( u ).
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 48 - 0
docs/api/it/extras/core/Interpolations.html

@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Le [name] contengono funzioni spline e Bézier utilizzate internamente dalle classi di curve concrete.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Float CatmullRom]( [param:Float t], [param:Float p0], [param:Float p1], [param:Float p2], [param:Float p3] )</h3>
+		<p>
+		t -- peso di interpolazione.<br />
+		p0, p1, p2, p3 -- i punti che definiscono la curva spline.<br /><br />
+
+		Usato internamente da [page:SplineCurve SplineCurve].
+		</p>
+
+		<h3>[method:Float QuadraticBezier]( [param:Float t], [param:Float p0], [param:Float p1], [param:Float p2] )</h3>
+		<p>
+		t -- peso di interpolazione.<br />
+		p0, p1, p2 -- i punti di inizio, controllo e fine che definiscono la curva.<br /><br />
+
+		Usato internamente da [page:QuadraticBezierCurve3 QuadraticBezierCurve3] e [page:QuadraticBezierCurve QuadraticBezierCurve].
+		</p>
+
+		<h3>[method:Float CubicBezier]( [param:Float t], [param:Float p0], [param:Float p1], [param:Float p2], [param:Float p3] )</h3>
+		<p>
+		t -- peso di interpolazione.<br />
+		p0, p1, p2, p3 -- i punti di inizio, controllo (doppio) e fine che definiscono la curva.<br /><br />
+
+		Usato internamente da [page:CubicBezierCurve3 CubicBezierCurve3] e [page:CubicBezierCurve CubicBezierCurve].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 150 - 0
docs/api/it/extras/core/Path.html

@@ -0,0 +1,150 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr; [page:CurvePath] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una rappresentazione del percorso 2D. La classe mette a dispozione metodi per la 
+      creazione di tracciati e contorni di forme 2D simili all'API Canvas 2D.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const path = new THREE.Path();
+
+		path.lineTo( 0, 0.8 );
+		path.quadraticCurveTo( 0, 1, 0.2, 1 );
+		path.lineTo( 1, 1 );
+
+		const points = path.getPoints();
+
+		const geometry = new THREE.BufferGeometry().setFromPoints( points );
+		const material = new THREE.LineBasicMaterial( { color: 0xffffff } );
+
+		const line = new THREE.Line( geometry, material );
+		scene.add( line );
+		</code>
+
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Array points] )</h3>
+		<p>
+		  points -- (opzionale) array di [page:Vector2 Vector2].<br /><br />
+
+      Crea un Path dai punti. Il primo punto definisce l'offset, quindi i punti successivi sono
+      aggiunti all'array [page:CurvePath.curves curves] come [page:LineCurve LineCurves].<br /><br />
+
+      Se non ci sono punti specificati, viene creato un path vuoto e il [page:.currentPoint] viene impostato 
+      nell'origine.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:CurvePath] per le proprietà comuni.</p>
+
+		<h3>[property:Vector2 currentPoint]</h3>
+		<p>L'offset corrente del path. Qualsiasi nuova [page:Curve] aggiunta inizierà da qui.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:CurvePath] per i metodi comuni.</p>
+
+		<h3>[method:this absarc]( [param:Float x], [param:Float y], [param:Float radius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise] )</h3>
+		<p>
+			x, y -- Il centro assoluto dell'arco.<br />
+			radius -- Il raggio dell'arco.<br />
+			startAngle -- L'angolo iniziale in radianti.<br />
+			endAngle -- L'angolo finale in radianti.<br />
+			clockwise -- Scorre l'arco in senso orario. Il valore predefinito è `false`.<br /><br />
+
+      Aggiunge al path un'[page:EllipseCurve EllipseCurve] posizionata in modo assoluto.
+		</p>
+
+		<h3>[method:this absellipse]( [param:Float x], [param:Float y], [param:Float xRadius], [param:Float yRadius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise], [param:Float rotation] )</h3>
+		<p>
+			x, y -- Il centro assoluto dell'ellisse.<br />
+			xRadius -- Il raggio dell'ellisse nell'asse x.<br />
+			yRadius -- Il raggio dell'ellisse nell'asse y.<br />
+			startAngle -- L'angolo iniziale in radianti.<br />
+			endAngle -- L'angolo finale in radianti.<br />
+			clockwise -- Scorre l'ellisse in senso orario. Il valore predefinito è `false`.<br />
+			rotation -- L'angolo di rotazione dell'ellisse in radianti, in senso antiorario dall'asse X. Opzionale, il valore predefinito è 0.<br /><br />
+
+      Aggiunge al path un'[page:EllipseCurve EllipseCurve] posizionata in modo assoluto.
+		</p>
+
+		<h3>[method:this arc]( [param:Float x], [param:Float y], [param:Float radius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise] )</h3>
+		<p>
+		x, y -- Il centro dell'arco offsettato dall'ultima chiamata.<br />
+		radius -- Il raggio dell'arco.<br />
+		startAngle -- L'angolo iniziale in radianti.<br />
+		endAngle -- L'angolo finale in radianti.<br />
+		clockwise -- Scorre l'arco in senso orario. Il valore predefinito è `false`.<br /><br />
+
+    Aggiunge al path un'[page:EllipseCurve EllipseCurve] posizionata in modo relativo al [page:.currentPoint].
+		</p>
+
+
+		<h3>[method:this bezierCurveTo]( [param:Float cp1X], [param:Float cp1Y], [param:Float cp2X], [param:Float cp2Y], [param:Float x], [param:Float y] )</h3>
+		<p>
+      Crea una curva bezier da [page:.currentPoint] con (cp1X, cp1Y) e (cp2X, cp2Y) come punti di controllo e aggiorna [page:.currentPoint] a x e y.
+    </p>
+
+		<h3>[method:this ellipse]( [param:Float x], [param:Float y], [param:Float xRadius], [param:Float yRadius], [param:Float startAngle], [param:Float endAngle], [param:Boolean clockwise], [param:Float rotation] )</h3>
+		<p>
+			x, y -- Il centro dell'arco offsettato dall'ultima chiamata.<br />
+			xRadius -- Il raggio dell'ellisse nell'asse x.<br />
+			yRadius -- Il raggio dell'ellisse nell'asse y.<br />
+			startAngle -- L'angolo iniziale in radianti.<br />
+			endAngle -- L'angolo finale in radianti.<br />
+			clockwise --  Scorre l'arco in senso orario. Il valore predefinito è `false`.<br /><br />
+			rotation -- L'angolo di rotazione dell'ellisse in radianti, in senso antiorario dall'asse X. Opzionale, il valore predefinito è 0.<br /><br />
+
+      Aggiunge al path un'[page:EllipseCurve EllipseCurve] posizionata in modo relativo al [page:.currentPoint].
+		</p>
+
+		<h3>[method:this lineTo]( [param:Float x], [param:Float y] )</h3>
+		<p>Collega una [page:LineCurve] da il [page:.currentPoint] a x, y sul percorso.</p>
+
+
+		<h3>[method:this moveTo]( [param:Float x], [param:Float y] )</h3>
+		<p>Muove il [page:.currentPoint] a x, y.</p>
+
+
+		<h3>[method:this quadraticCurveTo]( [param:Float cpX], [param:Float cpY], [param:Float x], [param:Float y] )</h3>
+		<p>
+      Crea una curva quadratica da [page:.currentPoint] con cpX e cpY come punto di controllo e aggiorna [page:.currentPoint] a x e y.
+    </p>
+
+		<h3>[method:this setFromPoints]( [param:Array vector2s] )</h3>
+		<p>
+			points --  array di [page:Vector2 Vector2].<br /><br />
+
+      I punti vengono aggiunti all'array [page:CurvePath.curves curves] come [page:LineCurve LineCurves].
+		</p>
+
+		<h3>[method:this splineThru] ( [param:Array points] ) </h3>
+		<p>
+			points - array di [page:Vector2 Vector2].<br /><br />
+
+      Collega un nuovo [page:SplineCurve] al percorso.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 104 - 0
docs/api/it/extras/core/Shape.html

@@ -0,0 +1,104 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr; [page:CurvePath] &rarr; [page:Path] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Definisce un piano di forma 2D arbitrario usando percorsi con hole opzionali. Può essere usato con [page:ExtrudeGeometry],
+      [page:ShapeGeometry], per ottenere punti, o per ottenere facce triangolate.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const heartShape = new THREE.Shape();
+
+		heartShape.moveTo( 25, 25 );
+		heartShape.bezierCurveTo( 25, 25, 20, 0, 0, 0 );
+		heartShape.bezierCurveTo( - 30, 0, - 30, 35, - 30, 35 );
+		heartShape.bezierCurveTo( - 30, 55, - 10, 77, 25, 95 );
+		heartShape.bezierCurveTo( 60, 77, 80, 55, 80, 35 );
+		heartShape.bezierCurveTo( 80, 35, 80, 0, 50, 0 );
+		heartShape.bezierCurveTo( 35, 0, 25, 25, 25, 25 );
+
+		const extrudeSettings = { depth: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
+
+		const geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
+
+		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+		[example:webgl_geometry_shapes geometry / shapes ]<br/>
+		[example:webgl_geometry_extrude_shapes geometry / extrude / shapes ]<br/>
+		[example:webgl_geometry_extrude_shapes2 geometry / extrude / shapes2 ]<br/>
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Array points] )</h3>
+		<p>
+		points -- (opzionale) un array di [page:Vector2 Vector2].<br /><br />
+
+    Crea una Shape dai punti. Il primo punto defisce l'offset, quindi i punti successivi vengono aggiunti
+    all'array  [page:CurvePath.curves curves] come [page:LineCurve LineCurves].<br /><br />
+
+    Se i punti non vengono specificati, viene creata una shape vuota e il [page:.currentPoint] viene impostato nell'origine.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Path] per le proprietà comuni.</p>
+
+		<h3>[property:String uuid]</h3>
+		<p>
+		L'[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] di questa istanza. Viene assegnato
+    automaticamente, quindi non dovrebbe essere modificato.
+		</p>
+
+		<h3>[property:Array holes]</h3>
+		<p>Un array di [page:Path path] che definisce gli hole nella forma.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Path] per i metodi comuni.</p>
+
+		<h3>[method:Array extractPoints]( [param:Integer divisions] )</h3>
+		<p>
+		divisions -- La finezza del risultato.<br /><br />
+
+    Chiama [page:Curve.getPoints getPoints] sulla forma e l'array [page:.holes], e restituisce un oggetto della forma:
+		<code>
+{
+	shape
+	holes
+}
+		</code>
+    dove shape e holes sono array di tipo [page:Vector2 Vector2].
+		</p>
+
+		<h3>[method:Array getPointsHoles]( [param:Integer divisions] )</h3>
+		<p>
+		divisions -- La finezza del risultato.<br /><br />
+
+    Ottiene un array di [page:Vector2 Vector2] che rapprensenta gli hole nella forma.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 99 - 0
docs/api/it/extras/core/ShapePath.html

@@ -0,0 +1,99 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Questa classe viene utilizzata per convertire una serie di forme in un array di [page:Path], ad esempio una 
+      forma SVG in un path (vedere l'esempio seguente).
+		</p>
+
+		<h2>Esempi</h2>
+		<p>
+			[example:webgl_geometry_extrude_shapes2 geometry / extrude / shapes2]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name](  )</h3>
+		<p>
+      Crea un nuovo ShapePath. Diversamente da un [page:Path], non vengono passati punti poiché lo ShapePath
+      è progettato per essere generato dopo la creazione.
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Array subPaths]</h3>
+		<p>
+		  Un array di [page:Path].
+		</p>
+
+		<h3>[property:Array currentPath]</h3>
+		<p>
+		  Il [page:Path] corrente che viene generato.
+		</p>
+
+		<h3>[property:Color color]</h3>
+		<p>Il [page:Color Colore] della shape, da impostazione predefinita impostato su bianco (0xffffff).</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this moveTo]( [param:Float x], [param:Float y] )</h3>
+		<p>
+      Inizia un nuovo [page:Path] e chiama [page:Path.moveTo]( x, y ) su questo [page:Path].
+      Punta anche [page:ShapePath.currentPath currentPath] a quel [page:Path].
+		</p>
+
+		<h3>[method:this lineTo]( [param:Float x], [param:Float y] )</h3>
+		<p>
+      Crea una linea dall'offset del [page:ShapePath.currentPath currentPath]
+      a X e Y e aggiorna l'offset di X e Y.
+    </p>
+
+		<h3>[method:this quadraticCurveTo]( [param:Float cpX], [param:Float cpY], [param:Float x], [param:Float y] )</h3>
+		<p>
+      Crea una curva quadratica dall'offset del [page:ShapePath.currentPath currentPath] a x e y con cpX e cpY
+      come punto di controllo e aggiorna l'offset del [page:ShapePath.currentPath currentPath] di x e y.
+    </p>
+
+		<h3>[method:this bezierCurveTo]( [param:Float cp1X], [param:Float cp1Y], [param:Float cp2X], [param:Float cp2Y], [param:Float x], [param:Float y] )</h3>
+		<p>
+      Crea una curva bazier dall'offset del [page:ShapePath.currentPath currentPath] a x e y con
+      cp1X, cp1Y e cp2X, cp2Y come punti di controllo e aggiorna l'offset del [page:ShapePath.currentPath currentPath] a x e y.
+    </p>
+
+		<h3>[method:this splineThru] ( [param:Array points] ) </h3>
+		<p>points - Un array di [page:Vector2]</p>
+		<p>Collega una nuova [page:SplineCurve] al [page:ShapePath.currentPath currentPath].</p>
+
+
+		<h3>[method:Array toShapes]( [param:Boolean isCCW], [param:Boolean noHoles] )</h3>
+		<p>
+		isCCW -- Modifica la modalità di generazione degli hole e dei solidi<br/>
+		noHoles -- Se generare o meno gli hole
+		</p>
+		<p>
+      Converte l'array [page:ShapePath.subPaths subPaths] in un array di Shape. Per impostazione predefinita
+      le forme solide sono definite in senso orario (CW) e i fori sono definiti in senso antiorario (CCW).
+      Se isCCW è impostato su `true`, le forme sono capovolte. Se il parametro noHoles è impostato su `true`,
+      tutti i percorsi sono impostati come forme solide e isCCW viene ignorato.
+		<br/>
+
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/extras/core/ShapePath.js src/extras/core/ShapePath.js]
+		</p>
+	</body>
+</html>

+ 26 - 0
docs/api/it/extras/curves/ArcCurve.html

@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr; [page:EllipseCurve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Alias per [page:EllipseCurve].</p>
+
+		<h2>Properties</h2>
+		<p>Vedi la classe [page:EllipseCurve] per le proprietà comuni.</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 80 - 0
docs/api/it/extras/curves/CatmullRomCurve3.html

@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc"> 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].</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// 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 );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_geometry_extrude_splines WebGL / geometry / extrude / splines]
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Array points], [param:Boolean closed], [param:String curveType], [param:Float tension] )</h3>
+		<p>
+			points – Un array di punti [page:Vector3]<br/>
+			closed – Se la curva è chiusa. Il valore predefinito è `false`.<br/>
+			curveType – Tipo di curva. Il valore predefinito è `centripetal`.<br/>
+			tension – Tensione della curva. Il valore predefinito è `0.5`.
+		</p>
+
+
+		<h2>Proprietà</h2>
+    <p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Array points]</h3>
+		<p>L'array di punti [page:Vector3] che definisce la curva. Ha bisogno di almeno due entries.</p>
+
+		<h3>[property:Boolean closed]</h3>
+		<p>Quando questa proprietà viene impostata su `true` la curva ritornerà su se stessa.</p>
+
+		<h3>[property:String curveType]</h3>
+		<p>I valori possibili sono `centripetal`, `chordal` e `catmullrom`.</p>
+
+		<h3>[property:Float tension]</h3>
+		<p>Quando [page:.curveType] è `catmullrom`, definisce la tensione di catmullrom.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 75 - 0
docs/api/it/extras/curves/CubicBezierCurve.html

@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Crea una 
+			<a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:Bezier_curve.svg" target="_blank">curva di Bezier cubica</a> 2D smooth,
+      definita da un punto di inizio, di fine e due punti di controllo.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const curve = new THREE.CubicBezierCurve(
+			new THREE.Vector2( -10, 0 ),
+			new THREE.Vector2( -5, 15 ),
+			new THREE.Vector2( 20, 15 ),
+			new THREE.Vector2( 10, 0 )
+		);
+
+		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 );
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name] ( [param:Vector2 v0], [param:Vector2 v1], [param:Vector2 v2], [param:Vector2 v3] )</h3>
+		<p>
+			[page:Vector2 v0] – Il punto di inizio.<br/>
+			[page:Vector2 v1] – Il primo punto di controllo.<br/>
+			[page:Vector2 v2] – Il secondo punto di controllo.<br/>
+			[page:Vector2 v3] – Il punto di fine.
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector2 v0]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector2 v1]</h3>
+		<p>Il primo punto di controllo.</p>
+
+		<h3>[property:Vector2 v2]</h3>
+		<p>Il secondo punto di controllo.</p>
+
+		<h3>[property:Vector2 v3]</h3>
+		<p>Il punto di fine.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 76 - 0
docs/api/it/extras/curves/CubicBezierCurve3.html

@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea una 
+			<a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:Bezier_curve.svg" target="_blank">curva di Bezier cubica</a> 3D smooth,
+      definita da un punto di inizio, di fine e due punti di controllo.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const curve = new THREE.CubicBezierCurve3(
+			new THREE.Vector3( -10, 0, 0 ),
+			new THREE.Vector3( -5, 15, 0 ),
+			new THREE.Vector3( 20, 15, 0 ),
+			new THREE.Vector3( 10, 0, 0 )
+		);
+
+		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 );
+
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Vector3 v0], [param:Vector3 v1], [param:Vector3 v2], [param:Vector3 v3] )</h3>
+		<p>
+			[page:Vector3 v0] – Il punto di inizio.<br/>
+			[page:Vector3 v1] – Il primo punto di controllo.<br/>
+			[page:Vector3 v2] – Il secondo punto di controllo.<br/>
+			[page:Vector3 v3] – Il punto di fine.
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector3 v0]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector3 v1]</h3>
+		<p>Il primo punto di controllo.</p>
+
+		<h3>[property:Vector3 v2]</h3>
+		<p>Il secondo punto di controllo.</p>
+
+		<h3>[property:Vector3 v3]</h3>
+		<p>Il punto di fine.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 91 - 0
docs/api/it/extras/curves/EllipseCurve.html

@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea una curva 2D a forma di ellisse. Impostando [page:Number xRadius]
+      uguale a [page:Number yRadius] risulterà in un cerchio.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const curve = new THREE.EllipseCurve(
+			0,  0,            // ax, aY
+			10, 10,           // xRadius, yRadius
+			0,  2 * Math.PI,  // aStartAngle, aEndAngle
+			false,            // aClockwise
+			0                 // aRotation
+		);
+
+		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 ellipse = new THREE.Line( geometry, material );
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Float aX], [param:Float aY], [param:Float xRadius], [param:Float yRadius], [param:Radians aStartAngle], [param:Radians aEndAngle], [param:Boolean aClockwise], [param:Radians aRotation] )</h3>
+		<p>
+			[page:Float aX] – L'X centro dell'ellipse. Il valore predefinito è `0`.<br/>
+			[page:Float aY] – L'Y centro dell'ellipse. Il valore predefinito è `0`.<br/>
+			[page:Float xRadius] – Il raggio dell'ellisse nella direzione x. Il valore predefinito è `1`.<br/>
+			[page:Float yRadius] – Il raggio dell'ellisse nella direzione y. Il valore predefinito è `1`.<br/>
+			[page:Radians aStartAngle] – L'angolo iniziale della curva in radianti a partire dall'asse X positivo. Il valore predefinito è `0`.<br/>
+			[page:Radians aEndAngle] – L'angolo finale della curva in radianti a partire dall'asse X positivo. Il valore predefinito è `2 x Math.PI`.<br/>
+			[page:Boolean aClockwise] – Se l'ellisse è disegnata in senso orario. Il valore predefinito è `false`.<br/>
+			[page:Radians aRotation]  – L'angolo di rotazione dell'ellisse in radianti, in senso antiorario dall'asse X positivo (opzionale). Il valore predefinito è `0`.<br/><br/>
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Float aX]</h3>
+		<p>Il centro X dell'ellisse.</p>
+
+		<h3>[property:Float aY]</h3>
+		<p>Il centro Y dell'ellisse.</p>
+
+		<h3>[property:Radians xRadius]</h3>
+		<p>Il raggio dell'ellisse nella direzione x.</p>
+
+		<h3>[property:Radians yRadius]</h3>
+		<p>Il raggio dell'ellisse nella direzione y.</p>
+
+		<h3>[property:Float aStartAngle]</h3>
+		<p>L'angolo iniziale della curva in radianti a partire dal lato centrale destro.</p>
+
+		<h3>[property:Float aEndAngle]</h3>
+		<p>L'angolo finale della curva in radianti a partire dal lato centrale destro.</p>
+
+		<h3>[property:Boolean aClockwise]</h3>
+		<p>Se l'ellisse è disegnata in senso orario.</p>
+
+		<h3>[property:Float aRotation]</h3>
+		<p>L'angolo di rotazione dell'ellisse in radianti, in senso antiorario dall'asse X positivo (opzionale). Il valore predefinito è `0`.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 45 - 0
docs/api/it/extras/curves/LineCurve.html

@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Una curva che rappresenta un segmento di linea 2D.</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Vector2 v1], [param:Vector2 v2] )</h3>
+		<p>
+			[page:Vector2 v1] – Il punto di inizio.<br/>
+			[page:Vector2 v2] - Il punto di fine.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector2 v1]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector2 v2]</h3>
+		<p>Il punto di fine.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 44 - 0
docs/api/it/extras/curves/LineCurve3.html

@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Una curva che rappresenta un segmento di linea 3D.</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Vector3 v1], [param:Vector3 v2] )</h3>
+		<p>
+			[page:Vector3 v1] – Il punto di inizio.<br/>
+			[page:Vector3 v2] - Il punto di fine.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector3 v1]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector3 v2]</h3>
+		<p>Il punto di fine.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 70 - 0
docs/api/it/extras/curves/QuadraticBezierCurve.html

@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea una 
+			<a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:B%C3%A9zier_2_big.gif" target="_blank">curva di Bezier quadratica</a> 2D smooth,
+      definita da un punto di inizio, di fine e un punto di controllo.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const curve = new THREE.QuadraticBezierCurve(
+			new THREE.Vector2( -10, 0 ),
+			new THREE.Vector2( 20, 15 ),
+			new THREE.Vector2( 10, 0 )
+		);
+
+		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 );
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Vector2 v0], [param:Vector2 v1], [param:Vector2 v2] )</h3>
+		<p>
+			[page:Vector2 v0] – Il punto di inizio.<br/>
+			[page:Vector2 v1] – Il punto di controllo.<br/>
+			[page:Vector2 v2] – Il punto di fine.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector2 v0]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector2 v1]</h3>
+		<p>Il punto di controllo.</p>
+
+		<h3>[property:Vector2 v2]</h3>
+		<p>Il punto di fine.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 71 - 0
docs/api/it/extras/curves/QuadraticBezierCurve3.html

@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea una 
+			<a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:B%C3%A9zier_2_big.gif" target="_blank">curva di Bezier quadratica</a> 3D smooth,
+      definita da un punto di inizio, di fine e un punto di controllo.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const curve = new THREE.QuadraticBezierCurve3(
+			new THREE.Vector3( -10, 0, 0 ),
+			new THREE.Vector3( 20, 15, 0 ),
+			new THREE.Vector3( 10, 0, 0 )
+		);
+
+		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 );
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Vector3 v0], [param:Vector3 v1], [param:Vector3 v2] )</h3>
+		<p>
+			[page:Vector3 v0] – Il punto di inizio.<br/>
+			[page:Vector3 v1] – Il punto di controllo.<br/>
+			[page:Vector3 v2] – Il punto di fine.
+		</p>
+
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Vector3 v0]</h3>
+		<p>Il punto di inizio.</p>
+
+		<h3>[property:Vector3 v1]</h3>
+		<p>Il punto di controllo.</p>
+
+		<h3>[property:Vector3 v2]</h3>
+		<p>Il punto di fine.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 62 - 0
docs/api/it/extras/curves/SplineCurve.html

@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<html lang="it">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea una curva spline 2D smooth da una serie di punti. Internamente
+      utilizza [page:Interpolations.CatmullRom] per creare la curva.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// Crea un onda sinusoidale
+		const curve = new THREE.SplineCurve( [
+			new THREE.Vector2( -10, 0 ),
+			new THREE.Vector2( -5, 5 ),
+			new THREE.Vector2( 0, 0 ),
+			new THREE.Vector2( 5, -5 ),
+			new THREE.Vector2( 10, 0 )
+		] );
+
+		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 splineObject = new THREE.Line( geometry, material );
+		</code>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Array points] )</h3>
+		<p>points – Un array di punti [page:Vector2] che definisce la curva.</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe [page:Curve] per le proprità comuni.</p>
+
+		<h3>[property:Array points]</h3>
+		<p>L'array di punti [page:Vector2] che definisce la curva.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe [page:Curve] per i metodi comuni.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 30 - 0
docs/list.json

@@ -1214,6 +1214,36 @@
 
 			"Core / BufferAttributes": {
 				"BufferAttribute Types": "api/it/core/bufferAttributeTypes/BufferAttributeTypes"
+			},
+
+      "Extras": {
+				"DataUtils": "api/it/extras/DataUtils",
+				"Earcut": "api/it/extras/Earcut",
+				"ImageUtils": "api/it/extras/ImageUtils",
+				"PMREMGenerator": "api/it/extras/PMREMGenerator",
+				"ShapeUtils": "api/it/extras/ShapeUtils"
+			},
+
+			"Extras / Core": {
+				"Curve": "api/it/extras/core/Curve",
+				"CurvePath": "api/it/extras/core/CurvePath",
+				"Interpolations": "api/it/extras/core/Interpolations",
+				"Path": "api/it/extras/core/Path",
+				"Shape": "api/it/extras/core/Shape",
+				"ShapePath": "api/it/extras/core/ShapePath"
+			},
+
+			"Extras / Curves": {
+				"ArcCurve": "api/it/extras/curves/ArcCurve",
+				"CatmullRomCurve3": "api/it/extras/curves/CatmullRomCurve3",
+				"CubicBezierCurve": "api/it/extras/curves/CubicBezierCurve",
+				"CubicBezierCurve3": "api/it/extras/curves/CubicBezierCurve3",
+				"EllipseCurve": "api/it/extras/curves/EllipseCurve",
+				"LineCurve": "api/it/extras/curves/LineCurve",
+				"LineCurve3": "api/it/extras/curves/LineCurve3",
+				"QuadraticBezierCurve": "api/it/extras/curves/QuadraticBezierCurve",
+				"QuadraticBezierCurve3": "api/it/extras/curves/QuadraticBezierCurve3",
+				"SplineCurve": "api/it/extras/curves/SplineCurve"
 			}
     }
 	},