浏览代码

Add A French translation for BufferAttribute, BufferGeometry and all Geometries (#24824)

Co-authored-by: Mael-Kehl <[email protected]>
Maël 2 年之前
父节点
当前提交
e7a7bb66f4

+ 210 - 0
docs/api/fr/core/BufferAttribute.html

@@ -0,0 +1,210 @@
+<!DOCTYPE html>
+<html lang="en">
+	<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">
+		Cette classe stocke les données d'un attribut (telles que les positions des sommets, les indices de face, les normales,
+		couleurs, UV et tout attribut personnalisé) associé à une [page:BufferGeometry], qui permet
+		une transmission plus efficace des données au GPU. Voir cette page pour plus de détails et un exemple d'utilisation.
+		Lorsque vous travaillez avec des données de type vecteur, les méthodes d'assistance <i>.fromBufferAttribute( attribute, index )</i>
+		des classes [page:Vector2.fromBufferAttribute Vector2],
+		[page:Vector3.fromBufferAttribute Vector3],
+		[page:Vector4.fromBufferAttribute Vector4], et
+		[page:Color.fromBufferAttribute Color] peuvent être utiles.
+		</p>
+
+		<h2>Constructeur</h2>
+		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
+		<p>
+		[page:TypedArray array] -- Doit être un [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/TypedArray TypedArray].
+		Utilisé pour instancier un tampon (buffer). <br />
+		Ce tableau devrait avoir
+	 	<code>itemSize * numVertices</code>
+		éléments, où numVertices est le nombre de sommets dans le [page:BufferGeometry BufferGeometry].<br /><br />
+		[page:Integer itemSize] -- Le nombre de valeurs du tableau qui doivent être associées à
+		un sommet particulier. Par exemple, si l'attribut stocke un vecteur à 3 composants (tel qu'une position, une normale ou une couleur), alors itemSize doit être 3.
+		<br /><br />
+
+		[page:Boolean normalized] -- (optionnel) S'applique uniquement aux données entières. Indique comment les données sous-jacentes
+		dans le tampon correspond aux valeurs du code GLSL. Par exemple, si [page:TypedArray array] est une instance de
+		UInt16Array, et [page:Boolean normalized] est `true`, les valeurs `0 - +65535` dans le tableau
+		de données seront mappées à 0.0f - +1.0f dans l'attribut GLSL. Un Int16Array (signé) mapperait
+		de -32768 - +32767 à -1.0f - +1.0f. Si [page:Boolean normalized]  est faux, les valeurs
+		sera converti en flottants non modifiés, c'est-à-dire que 32767 devient 32767.0f.
+		</p>
+
+		<h2>Propriétés</h2>
+
+		<h3>[property:TypedArray array]</h3>
+		<p>
+		Le tableau [page:TypedArray array] contenant les données stockées dans le tampon.
+		</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+		Stocke la longueur du tableau [page:BufferAttribute.array array] divisée par [page:BufferAttribute.itemSize itemSize].<br /><br />
+
+		Si le tampon stocke un vecteur à 3 composants (tel qu'une position, une normale ou une couleur),
+		cela comptera alors le nombre de ces vecteurs stockés.
+		</p>
+
+		<h3>[property:Boolean isBufferAttribute]</h3>
+		<p>
+		Booléen en lecture seule pour vérifier si un objet donné est de type[name].
+		</p>
+
+		<h3>[property:Integer itemSize]</h3>
+		<p>La longueur des vecteurs qui sont stockés dans le [page:BufferAttribute.array array].</p>
+
+		<h3>[property:String name]</h3>
+		<p>
+		Nom optionnel pour cette instance d'attribut. La valeur par défaut est une chaîne vide.
+		</p>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<p>
+		Booléen indiquant que cet attribut a changé et doit être renvoyé au GPU.
+		Définissez-le sur true lorsque vous modifiez la valeur du tableau.<br /><br />
+
+		Le définir sur 'true' revient à incrémenter la [page:BufferAttribute.version version].
+		</p>
+
+		<h3>[property:Boolean normalized]</h3>
+		<p>
+		Indique comment les données sous-jacentes dans la mémoire tampon sont mappées aux valeurs du code de nuanceur GLSL.
+		Voir le constructeur ci-dessus pour plus de détails.
+		</p>
+
+		<h3>[property:Function onUploadCallback]</h3>
+		<p>
+		Une fonction de rappel qui est exécutée après que le Renderer a transféré les données du tableau d'attributs au GPU.
+		</p>
+
+		<h3>[property:Object updateRange]</h3>
+		<p>Object contenant:<br />
+			[page:Integer offset]: La valeur par défaut est `0`. Position à laquelle commencer la mise à jour.<br />
+			[page:Integer count]: La valeur par défaut est `-1`, ce qui signifie ne pas utiliser les plages de mise à jour. <br /><br />
+
+			Cela peut être utilisé pour mettre à jour uniquement certains composants de vecteurs stockés (par exemple, seul le composant
+			lié à la couleur).
+		</p>
+
+		<h3>[property:Usage usage]</h3>
+		<p>
+			Définit le modèle d'utilisation prévu du magasin de données à des fins d'optimisation. Correspond au paramètre `usage` de
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData WebGLRenderingContext.bufferData]().
+			La valeur par défaut est [page:BufferAttributeUsage StaticDrawUsage]. Voir les [page:BufferAttributeUsage constants] d'utilisation pour toutes les valeurs possibles. <br /><br />
+			
+			Remarque : Après la première utilisation d'un tampon, son utilisation ne peut pas être modifiée. Au lieu de cela, instanciez-en un nouveau et définissez l'utilisation souhaitée avant le prochain rendu.
+		</p>
+
+		<h3>[property:Integer version]</h3>
+		<p>Un numéro de version incrémenté à chaque fois que la propriété [page:BufferAttribute.needsUpdate needsUpdate] est définie sur `true`.</p>
+
+		<h2>Méthodes</h2>
+
+		<h3>[method:this applyMatrix3]( [param:Matrix3 m] )</h3>
+		<p>Applique la matrice [page:Matrix3 m] à chaque élément Vector3 de ce BufferAttribute.</p>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
+		<p>Applique la matrice [page:Matrix4 m] à chaque élément Vector3 de ce BufferAttribute.</p>
+
+		<h3>[method:this applyNormalMatrix]( [param:Matrix3 m] )</h3>
+		<p>Applique la matrice de normales [page:Matrix3 m] à chaque élément Vector3 de ce BufferAttribute.</p>
+
+		<h3>[method:this transformDirection]( [param:Matrix4 m] )</h3>
+		<p>Applique la matrice [page:Matrix4 m] à chaque élément Vector3 de ce BufferAttribute, en interprétant les éléments comme des vecteurs directionnels.</p>
+
+		<h3>[method:BufferAttribute clone]() </h3>
+		<p>Renvoie une copie de ce bufferAttribute.</p>
+
+		<h3>[method:this copy]( [param:BufferAttribute bufferAttribute] )</h3>
+		<p>Copie un autre BufferAttribute à ce BufferAttribute.</p>
+
+		<h3>[method:this copyArray]( array ) </h3>
+		<p>Copie le tableau donné ici (qui peut être un tableau classique ou un TypedArray) vers un
+			[page:BufferAttribute.array array].<br /><br />
+
+			Consulter [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]
+			pour lire les exigences en cas de copie d'un TypedArray.
+		</p>
+
+		<h3>[method:this copyAt] ( [param:Integer index1], [param:BufferAttribute bufferAttribute], [param:Integer index2] ) </h3>
+		<p>Copie un vecteur de bufferAttribute[index2] à [page:BufferAttribute.array array][index1].</p>
+
+		<h3>[method:Number getX]( [param:Integer index] ) </h3>
+		<p>Renvoie le composant x d'un vecteur à l'index donné.</p>
+
+		<h3>[method:Number getY]( [param:Integer index] ) </h3>
+		<p>Renvoie le composant y d'un vecteur à l'index donné.</p>
+
+		<h3>[method:Number getZ]( [param:Integer index] ) </h3>
+		<p>Renvoie le composant z d'un vecteur à l'index donné.</p>
+
+		<h3>[method:Number getW]( [param:Integer index] ) </h3>
+		<p>Renvoie le composant w d'un vecteur à l'index donné.</p>
+
+		<h3>[method:this onUpload]( [param:Function callback] ) </h3>
+		<p>
+		Définit la valeur d'une propriété onUploadCallback.<br /><br />
+
+		Dans l'exemple [example:webgl_buffergeometry WebGL / Buffergeometry] ceci est utilisé pour libérer de la mémoire
+		après le transfert du tampon vers le GPU.
+		</p>
+
+		<h3>[method:this set] ( [param:Array value], [param:Integer offset] ) </h3>
+		<p>
+		value -- un [page:Array] ou [page:TypedArray] depuis lequel copier les valeurs <br />
+		offset -- (optionnel) index du [page:BufferAttribute.array array] depuis lequel commencer la copie.<br /><br />
+
+		Appelle	[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]( [page:Array value], [page:Integer offset] )
+		sur le [page:BufferAttribute.array array].<br /><br />
+
+		En particulier, consultez cette page pour les exigences relatives à la valeur [page:Array value]
+		en tant que [page:TypedArray].
+		</p>
+
+		<h3>[method:this setUsage] ( [param:Usage value] ) </h3>
+		<p>
+			Définit [page:BufferAttribute.usage usage] sur la valeur. Voir les [page:BufferAttributeUsage constants] pour toutes les valeurs d'entrée possibles.  <br /><br />
+
+			Remarque : Après la première utilisation d'un tampon, son utilisation ne peut pas être modifiée. Au lieu de cela, instanciez-en un nouveau et définissez l'utilisation souhaitée avant le prochain rendu.
+		</p>
+
+		<h3>[method:this setX]( [param:Integer index], [param:Float x] ) </h3>
+		<p>Définit la composante x du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setY]( [param:Integer index], [param:Float y] ) </h3>
+		<p>Définit la composante y du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setZ]( [param:Integer index], [param:Float z] ) </h3>
+		<p>Définit la composante z du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setW]( [param:Integer index], [param:Float w] ) </h3>
+		<p>Définit la composante w du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setXY]( [param:Integer index], [param:Float x], [param:Float y] ) </h3>
+		<p>Définit les composantes x et y du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setXYZ]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z] ) </h3>
+		<p>Définit les composantes x, y et z du vecteur à l'indice donné.</p>
+
+		<h3>[method:this setXYZW]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z], [param:Float w] ) </h3>
+		<p>Définit les composantes x, y, z et w du vecteur à l'indice donné.</p>
+
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 309 - 0
docs/api/fr/core/BufferGeometry.html

@@ -0,0 +1,309 @@
+<!DOCTYPE html>
+<html lang="en">
+	<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>
+		Représentation d'une géométrie de maillage, de ligne ou de point. Comprend les positions des sommets, les indices de faces,
+		normales, couleurs, UV et attributs personnalisés dans les tampons, réduisant ainsi le coût de
+		transmettre toutes ces données au GPU.
+		</p>
+		<p>
+			Pour lire et modifier des données dans les attributs BufferGeometry, consultez la documentation [page:BufferAttribute].
+		</p>
+
+		<h2>Exemple de code : </h2>
+		<code>
+		const geometry = new THREE.BufferGeometry();
+		// créer une forme carrée simple. Nous dupliquons le haut à gauche et le bas à droite
+		// sommets car chaque sommet doit apparaître une fois par triangle.
+		const vertices = new Float32Array( [
+			-1.0, -1.0,  1.0,
+			 1.0, -1.0,  1.0,
+			 1.0,  1.0,  1.0,
+
+			 1.0,  1.0,  1.0,
+			-1.0,  1.0,  1.0,
+			-1.0, -1.0,  1.0
+		] );
+
+		// itemSize = 3 parce qu'il y a 3 valeurs (comoosants) par sommet
+		geometry.setAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
+		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
+		const mesh = new THREE.Mesh( geometry, material );
+		</code>
+
+		<h2>Exemples</h2>
+		<p>
+			[example:webgl_buffergeometry Mesh with non-indexed faces]<br />
+			[example:webgl_buffergeometry_indexed Mesh with indexed faces]<br />
+			[example:webgl_buffergeometry_lines Lines]<br />
+			[example:webgl_buffergeometry_lines_indexed Indexed Lines]<br />
+			[example:webgl_buffergeometry_custom_attributes_particles Particles]<br />
+			[example:webgl_buffergeometry_rawshader Raw Shaders]
+		</p>
+
+		<h2>Constructeur</h2>
+
+
+		<h3>[name]()</h3>
+		<div>
+		Cela crée un nouveau [name]. Il définit également plusieurs propriétés sur une valeur par défaut.
+		</div>
+
+
+		<h2>Propriétés</h2>
+
+		<h3>[property:Object attributes]</h3>
+		<p>
+		Ce hashmap a comme identifiant le nom de l'attribut à définir et comme valeur le [page:BufferAttribute buffer] à lui attribuer.
+		Plutôt que d'accéder directement à cette propriété, utilisez [page:.setAttribute] et [page:.getAttribute] pour accéder aux attributs de cette géométrie.
+		</p>
+
+		<h3>[property:Box3 boundingBox]</h3>
+		<p>
+			Boîte englobante pour le bufferGeometry, qui peut être calculée avec
+			[page:.computeBoundingBox](). La valeur par défaut est `null`.
+		</p>
+
+		<h3>[property:Sphere boundingSphere]</h3>
+		<p>
+			Sphère englobante pour le bufferGeometry, qui peut être calculée avec
+			[page:.computeBoundingSphere](). La valeur par défaut est `null`.
+		</p>
+
+		<h3>[property:Object drawRange]</h3>
+		<p>
+			Détermine la partie de la géométrie à rendre. Cela ne devrait pas
+			être défini directement, utilisez à la place[page:.setDrawRange]. La valeur par défaut est
+			<code>
+				{ start: 0, count: Infinity }
+			</code>
+			Pour BufferGeometry non indexé, count est le nombre de sommets à rendre.
+			Pour BufferGeometry indexé, count est le nombre d'indices à rendre.
+		</p>
+
+		<h3>[property:Array groups]</h3>
+		<p>
+			Divise la géométrie en groupes, dont chacun sera rendu dans un appel de dessin WebGL distinct.
+			Cela permet d'utiliser un éventail de matériaux avec la géométrie.<br /><br />
+
+			Chaque groupe est un objet de la forme :
+			<code>{ start: Integer, count: Integer, materialIndex: Integer }</code>
+			où start spécifie le premier élément de cet appel de dessin - le premier sommet de la géométrie non indexée,
+			sinon le premier indice triangulaire. Count spécifie combien de sommets (ou indices) sont inclus, et
+			materialIndex spécifie l'index de tableau de matériaux à utiliser.<br /><br />
+
+			Utilisez [page:.addGroup] pour ajouter des groupes au lieu de modifier le tableau directement.<br /><br />
+
+			Chaque sommet et index doit appartenir à exactement un groupe — les groupes ne doivent pas partager de sommets ou d'indices, et ne doivent pas laisser de sommets ou d'indices inutilisés.
+		</p>
+
+
+		<!-- Note: groups used to be called drawCalls
+
+		<h3>[property:Array drawcalls]</h3>
+		<p>
+		For geometries that use indexed triangles, this Array can be used to split the object
+		into multiple WebGL draw calls. Each draw call will draw some subset of the vertices
+		in this geometry using the configured [page:Material shader]. This may be necessary if,
+		for instance, you have more than 65535 vertices in your object.
+		</p> -->
+
+
+		<h3>[property:Integer id]</h3>
+		<p>Numéro unique pour cette instance de bufferGeometry.</p>
+
+		<h3>[property:BufferAttribute index]</h3>
+		<p>
+			Permet de réutiliser les sommets sur plusieurs triangles ; c'est ce qu'on appelle utiliser des "triangles indexés".
+			Chaque triangle est associé aux indices de trois sommets. Cet attribut stocke donc l'indice de chaque sommet pour chaque face triangulaire.
+
+			Si cet attribut n'est pas défini, le [page: WebGLRenderer renderer] suppose que chacun des trois éléments contigus
+			les positions représentent un seul triangle.
+
+			La valeur par défaut est `null`.
+		</p>
+
+		<h3>[property:Boolean isBufferGeometry]</h3>
+		<p>
+			Booléen en lecture seule pour vérifier si un objet donné est de type [name].
+		</p>
+
+		<h3>[property:Object morphAttributes]</h3>
+		<p>
+			Hashmap de [page:BufferAttribute] contenant les détails des cibles de morphing de la géométrie.<br />
+			Remarque : Une fois la géométrie rendue, les données d'attribut de morphing ne peuvent pas être modifiées. Vous devrez appeler [page:.dispose]() et créer une nouvelle instance de [nom].
+		</p>
+
+		<h3>[property:Boolean morphTargetsRelative]</h3>
+		<p>
+			Utilisé pour contrôler le comportement de la cible de morphing ; lorsqu'il est défini sur true, les données cibles de morphing sont traitées comme des décalages relatifs, plutôt que comme des positions/normales absolues.
+
+			La valeur par défaut est "faux".
+		</p>
+
+		<h3>[property:String name]</h3>
+		<p>
+			Nom facultatif pour cette instance de bufferGeometry. La valeur par défaut est une chaîne vide.
+		</p>
+
+		<h3>[property:Object userData]</h3>
+		<p>
+			Un objet qui peut être utilisé pour stocker des données personnalisées sur le BufferGeometry. Il ne doit pas contenir
+			de références aux fonctions car celles-ci ne seront pas clonées.
+		</p>
+
+		<h3>[property:String uuid]</h3>
+		<p>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] de l'instance de l'objet.
+		Celui-ci est automatiquement attribué et ne doit pas être modifié.
+		</p>
+
+		<h2>Méthodes</h2>
+
+		<p>Les méthodes [page:EventDispatcher EventDispatcher] sont accessibles depuis cette classe.</p>
+
+		<h3>[method:undefined addGroup]( [param:Integer start], [param:Integer count], [param:Integer materialIndex] )</h3>
+		<p>
+			Ajoute un groupe à cette géométrie; voir les propriétés des [page:BufferGeometry.groups groups]
+			pour plus de détails.
+		</p>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 matrix] )</h3>
+		<p>Applique la transformation matricielle à la géométrie.</p>
+
+		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
+		<p>Applique la rotation représentée par le quaternion à la géométrie.</p>
+
+		<h3>[method:this center] ()</h3>
+		<p>Centre la géométrie en fonction de la boîte englobante.</p>
+
+		<h3>[method:undefined clearGroups]( )</h3>
+		<p>Efface tous les groupes.</p>
+
+		<h3>[method:BufferGeometry clone]()</h3>
+		<p>Crée un clone de ce BufferGeometry.</p>
+
+		<h3>[method:undefined computeBoundingBox]()</h3>
+		<p>
+		Calcule la boîte englobante de la géométrie, met à jour l'attribut [page:.boundingBox].<br />
+		Les boîtes englobantes ne sont pas calculées par défaut. Ils doivent être calculés explicitement, sinon elles sont `null`.
+		</p>
+
+		<h3>[method:undefined computeBoundingSphere]()</h3>
+		<p>
+		Calcule la boîte englobante de la géométrie, met à jour l'attribut [page:.boundingSphere].<br />
+		Les sphères englobantes ne sont pas calculées par défaut. Ils doivent être calculés explicitement, sinon elles sont `null`.
+		</p>
+
+		<h3>[method:undefined computeTangents]()</h3>
+		<p>
+		Calcule et ajoute un attribut de tangente à cette géométrie.<br />
+		Le calcul n'est pris en charge que pour les géométries indexées et si les attributs position, normal et uv sont définis. Lorsque vous utilisez une carte normale d'espace tangent, favorisez l'algorithme MikkTSpace fourni par
+		[page:BufferGeometryUtils.computeMikkTSpaceTangents].
+		</p>
+
+		<h3>[method:undefined computeVertexNormals]()</h3>
+		<p>Calcule les normales des sommets en faisant la moyenne des normales des faces.</p>
+
+		<h3>[method:this copy]( [param:BufferGeometry bufferGeometry] )</h3>
+		<p>Copie un autre BufferGeometry dans ce BufferGeometry.</p>
+
+		<h3>[method:BufferAttribute deleteAttribute]( [param:String name] )</h3>
+		<p>Efface un [page:BufferAttribute attribute] avec le nom spécifié.</p>
+
+		<h3>[method:undefined dispose]()</h3>
+		<p>
+		Libère les ressources liées au GPU allouées par cette instance. Appelez cette méthode chaque fois que cette instance n'est plus utilisée dans votre application.
+		</p>
+
+		<h3>[method:BufferAttribute getAttribute]( [param:String name] )</h3>
+		<p>Renvoie un [page:BufferAttribute attribute] avec le nom spécifié.</p>
+
+		<h3>[method:BufferAttribute getIndex] ()</h3>
+		<p>Retourne le tampon [page:.index].</p>
+
+		<h3>[method:Boolean hasAttribute]( [param:String name] )</h3>
+		<p>Renvoie `true` si l'attribut avec le nom spécifié existe.</p>
+
+		<h3>[method:this lookAt] ( [param:Vector3 vector] )</h3>
+		<p>
+		vector - Un vecteur monde à regarder.<br /><br />
+
+		Fait pivoter la géométrie pour faire face à un point dans l'espace. Cela se fait généralement en une seule opération et non pendant une boucle.
+		Utilisez [page:Object3D.lookAt] pour une utilisation typique du maillage en temps réel.
+		</p>
+
+		<h3>[method:undefined normalizeNormals]()</h3>
+		<p>
+		Chaque vecteur normal dans une géométrie aura une magnitude de 1.
+		Cela corrigera l'éclairage sur les surfaces géométriques.
+		</p>
+
+		<h3>[method:this rotateX] ( [param:Float radians] )</h3>
+		<p>
+		Fait pivoter la géométrie autour de l'axe X. Cela se fait généralement en une seule opération et non pendant une boucle.
+    Utilisez [page:Object3D.rotation] pour une utilisation typique du maillage en temps réel.
+		</p>
+
+		<h3>[method:this rotateY] ( [param:Float radians] )</h3>
+		<p>
+		Fait pivoter la géométrie autour de l'axe Y. Cela se fait généralement en une seule opération et non pendant une boucle.
+    Utilisez [page:Object3D.rotation] pour une utilisation typique du maillage en temps réel.
+		</p>
+
+		<h3>[method:this rotateZ] ( [param:Float radians] )</h3>
+		<p>
+		Fait pivoter la géométrie autour de l'axe Z. Cela se fait généralement en une seule opération et non pendant une boucle.
+    Utilisez [page:Object3D.rotation] pour une utilisation typique du maillage en temps réel.
+		</p>
+
+		<h3>[method:this scale] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+		Mettre à l'échelle les données géométriques. Cela se fait généralement en une seule opération et non pendant une boucle.	
+	Utilisez [page:Object3D.scale] pour une utilisation typique du maillage en temps réel.
+		</p>
+
+		<h3>[method:this setAttribute]( [param:String name], [param:BufferAttribute attribute] )</h3>
+		<p>
+		Définit un attribut pour cette géométrie. Utilisez ceci plutôt que la propriété attributs,
+		parce qu'un hashmap interne de [page:.attributes] est maintenu pour accélérer l'itération sur
+		les attributs.
+		</p>
+
+		<h3>[method:undefined setDrawRange] ( [param:Integer start], [param:Integer count] )</h3>
+		<p>Définissez la propriété [page:.drawRange]. Pour un BufferGeometry non indexé, count est le nombre de sommets à rendre.
+		Pour un BufferGeometry indexé, count est le nombre d'indices à rendre.</p>
+
+		<h3>[method:this setFromPoints] ( [param:Array points] )</h3>
+		<p>Définit les attributs de ce BufferGeometry à partir d'un tableau de points.</p>
+
+		<h3>[method:this setIndex] ( [param:BufferAttribute index] )</h3>
+		<p>Définit le buffer [page:.index].</p>
+
+		<h3>[method:Object toJSON]()</h3>
+		<p>Convertit la BufferGeometry en three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].</p>
+
+		<h3>[method:BufferGeometry toNonIndexed]()</h3>
+		<p>Renvoie une version non indexée d'une BufferGeometry indexée.</p>
+
+		<h3>[method:this translate] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+		Déplace la géométrie. Cela se fait généralement en une seule opération et non pendant une boucle.
+		Utilisez [page:Object3D.position] pour un déplacement de maillage en temps réel typique.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 74 - 0
docs/api/fr/geometries/BoxGeometry.html

@@ -0,0 +1,74 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name] est une classe de géométrie pour un cuboïde rectangulaire avec une largeur 'width', une hauteur 'height', et une profondeur 'depth' données.
+			À la création, le cuboïde est centré sur l'origine, chaque arrête est parallèle à l'un des axes. 
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.BoxGeometry( 1, 1, 1 );
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+		const cube = new THREE.Mesh( geometry, material );
+		scene.add( cube );
+		</code>
+
+		<h2>Contructeur</h2>
+
+		<h3>[name]([param:Float width], [param:Float height], [param:Float depth], [param:Integer widthSegments], [param:Integer heightSegments], [param:Integer depthSegments])</h3>
+		<p>
+		width — Largeur; c'est-à-dire la longueur des arêtes parallèles à l'axe X. Optionnel; par défaut à 1.<br />
+		height — Hauteur; c'est-à-dire la longueur des arêtes parallèles à l'axe Y. Optionnel; par défaut à 1.<br />
+		depth — Profondeur; c'est-à-dire la longueur des arêtes parallèles à l'axe Z. Optionnel; par défaut à 1.<br />
+		widthSegments — Nombre de faces rectangulaires segmentées sur la largeur des côtés. Optionnel; par défaut à 1.<br />
+		heightSegments — Nombre de faces rectangulaires segmentées sur la hauteur des côtés. Optionnel; par défaut à 1.<br />
+		depthSegments — Nombre de faces rectangulaires segmentées le long de la profondeur des côtés. Optionnel; par défaut à 1.<br />
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Methods</h2>
+		<p>Voir la classe de base [page:BufferGeometry] Pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 73 - 0
docs/api/fr/geometries/CapsuleGeometry.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:LatheGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name] est une classe de géométrie pour une capsule avec des rayons et une hauteur donnés.
+			Elle est construite à l'aide de demi-shpères.
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CapsuleGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.CapsuleGeometry( 1, 1, 4, 8 );
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+		const capsule = new THREE.Mesh( geometry, material );
+		scene.add( capsule );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Float length], [param:Integer capSubdivisions], [param:Integer radialSegments])</h3>
+		<p>
+
+		radius — Rayon de la capsule. Optionnel; par défaut à 1.<br />
+		length — Longueur de la section médiane. Optionnel; par défaut à 1.<br />
+		capSegments — Nombre de segments de courbe utilisés pour construire les demi-sphères. Optionnel; par défaut à 4.<br />
+		radialSegments — Nombre de faces segmentées autour de la circonférence de la capsule. Optionnel; par défaut à 8.<br />
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</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/fr/geometries/CircleGeometry.html

@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name] est une forme simple de la géométrie euclidienne.
+			Elle est construite à partir d'un certain nombre de segments triangulaires orientés autour d'un point central et s'étendant jusqu'à un rayon donné.
+			Elle est construite dans le sens inverse des aiguilles d'une montre à partir d'un angle de départ et d'un angle central donné.
+			Elle peut également être utilisée pour créer des polygones réguliers, où le nombre de segments détermine le nombre de côtés.
+		</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>
+		const geometry = new THREE.CircleGeometry( 5, 32 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const circle = new THREE.Mesh( geometry, material );
+		scene.add( circle );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer segments], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radius — Rayon du cercle, par défaut = 1.<br />
+		segments — Nombre de segments (triangles), minimum = 3, défaut = 8.<br />
+		thetaStart — Angle de départ pour le premier segment, par défaut = 0 (position trois heures).<br />
+		thetaLength — L'angle central, souvent appelé thêta, du secteur circulaire. La valeur par défaut est 2*Pi, ce qui fait un cercle complet.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 72 - 0
docs/api/fr/geometries/ConeGeometry.html

@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:CylinderGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries de cône.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code :</h2>
+
+		<code>const geometry = new THREE.ConeGeometry( 5, 20, 32 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
+		const cone = new THREE.Mesh( geometry, material );
+		scene.add( cone );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radius — Rayon de la base du cône. La valeur par défaut est 1.<br />
+		height — Hauteur du cône. La valeur par défaut est 1.<br />
+		radialSegments — Nombre de faces segmentées autour de la circonférence du cône. La valeur par défaut est 8.<br />
+		heightSegments — Nombre de rangées de faces sur la hauteur du cône. La valeur par défaut est 1.<br />
+		openEnded — Un booléen indiquant si la base du cône est ouverte ou fermée. La valeur par défaut est false, ce qui signifie fermée.<br />
+		thetaStart — Angle de départ pour le premier segment, par défaut = 0 (position trois heures).<br />
+		thetaLength — L'angle central, souvent appelé thêta, du secteur circulaire. La valeur par défaut est 2*Pi, ce qui donne un cône complet. 
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:CylinderGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:CylinderGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 73 - 0
docs/api/fr/geometries/CylinderGeometry.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries de cylindre.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
+		const cylinder = new THREE.Mesh( geometry, material );
+		scene.add( cylinder );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radiusTop], [param:Float radiusBottom], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		radiusTop — Rayon du cylindre supérieur. La valeur par défaut est 1.<br />
+		radiusBottom — Rayon du cylindre inférieur. La valeur par défaut est 1.<br />
+		height — Hauteur du cylindre. La valeur par défaut est 1.<br />
+		radialSegments — Nombre de faces segmentées autour de la circonférence du cylindre. La valeur par défaut est 8.<br />
+		heightSegments — Nombre de rangées de faces sur la hauteur du cylindre. La valeur par défaut est 1.<br />
+		openEnded — Un booléen indiquant si les extrémités du cylindre sont ouvertes ou fermées. La valeur par défaut est false, ce qui signifie fermées.<br />
+		thetaStart — Angle de départ pour le premier segment, par défaut = 0 (position trois heures).<br />
+		thetaLength — L'angle central, souvent appelé thêta, du secteur circulaire. La valeur par défaut est 2*Pi, ce qui donne un cylindre complet.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 59 - 0
docs/api/fr/geometries/DodecahedronGeometry.html

@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries de dodécaèdre.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — Rayon du dodécaèdre. La valeur par défaut est 1.<br />
+		detail — La valeur par défaut est 0. Définir une valeur supérieure à 0 ajoute des sommets, la géométrie n'est donc plus un dodécaèdre.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+			Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 55 - 0
docs/api/fr/geometries/EdgesGeometry.html

@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Cela peut être utilisé comme objet d'assistance pour afficher les bords d'un [page:BufferGeometry geometry].</p>
+
+		<h2>Exemple de code : </h2>
+
+		<code>
+const geometry = new THREE.BoxGeometry( 100, 100, 100 );
+const edges = new THREE.EdgesGeometry( geometry );
+const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
+scene.add( line );
+		</code>
+
+		<h2>Exemples</h2>
+		<p>
+			[example:webgl_helpers helpers]
+		</p>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Integer thresholdAngle] )</h3>
+		<p>
+		geometry — Tout objet géométrique.<br />
+		thresholdAngle — Une arête n'est rendue que si l'angle (en degrés) entre les normales des faces adjacentes dépasse cette valeur. par défaut = 1 degré.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 113 - 0
docs/api/fr/geometries/ExtrudeGeometry.html

@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crée une géométrie extrudée à partir d'une forme de chemin.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+
+		<code>
+		const length = 12, width = 8;
+
+		const shape = new THREE.Shape();
+		shape.moveTo( 0,0 );
+		shape.lineTo( 0, width );
+		shape.lineTo( length, width );
+		shape.lineTo( length, 0 );
+		shape.lineTo( 0, 0 );
+
+		const extrudeSettings = {
+			steps: 2,
+			depth: 16,
+			bevelEnabled: true,
+			bevelThickness: 1,
+			bevelSize: 1,
+			bevelOffset: 0,
+			bevelSegments: 1
+		};
+
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material ) ;
+		scene.add( mesh );
+		</code>
+
+
+		<h2>Constructeur</h2>
+
+
+		<h3>[name]([param:Array shapes], [param:Object options])</h3>
+		<p>
+		shapes — Forme ou tableau de formes.<br />
+		options — Objet pouvant contenir les paramètres suivants.
+
+			<ul>
+				<li>curveSegments — int. Nombre de points sur les courbes. La valeur par défaut est 12.</li>
+				<li>steps — int. Nombre de points utilisés pour subdiviser les segments le long de la profondeur de la courbe extrudée. La valeur par défaut est 1.</li>
+				<li>depth — float. Profondeur pour extruder la forme. La valeur par défaut est 1.</li>
+				<li>bevelEnabled — bool. Appliquer un biseau à la forme. La valeur par défaut est true.</li>
+				<li>bevelThickness — float. Profondeur du biseau dans la forme d'origine. La valeur par défaut est 0,2.</li>
+				<li>bevelSize — float. Distance du contour de la forme à laquelle s'étend le biseau. La valeur par défaut est bevelThickness - 0.1.</li>
+				<li>bevelOffset — float. Distance du contour de la forme à laquelle commence le biseau. La valeur par défaut est 0.</li>
+				<li>bevelSegments — int. Nombre de couches de biseau. La valeur par défaut est 3.</li>
+				<li>extrudePath — THREE.Curve. Chemin de courbe 3D le long duquel la forme doit être extrudée. Biseaux non pris en charge pour l'extrusion de chemin.</li>
+				<li>UVGenerator —  Object. Objet qui fournit des fonctions de générateur d'UV</li>
+			</ul>
+
+		</p>
+		<p>
+			Cet objet extrude une forme 2D en une géométrie 3D.
+		</p>
+
+		<p>
+			Lors de la création d'un maillage avec cette géométrie, si vous souhaitez utiliser un matériau distinct pour sa face
+			et ses côtés extrudés, vous pouvez utiliser un éventail de matériaux. Le premier matériau sera
+			appliqué sur la face, le deuxième sera appliqué sur les côtés.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 58 - 0
docs/api/fr/geometries/IcosahedronGeometry.html

@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer une géométrie d'icosaèdre.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — La valeur par défaut est 1. <br />
+		detail — La valeur par défaut est 0. Le définir sur une valeur supérieure à 0 ajoute plus de sommets, la géométrie n'est donc plus un icosaèdre. Lorsque le détail est supérieur à 1, la géométrie est une sphère.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 77 - 0
docs/api/fr/geometries/LatheGeometry.html

@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crée des maillages à symétrie axiale comme des vases. Le tour tourne autour de l'axe Y.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code :</h2>
+
+		<code>
+		const points = [];
+		for ( let i = 0; i < 10; i ++ ) {
+			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
+		}
+		const geometry = new THREE.LatheGeometry( points );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const lathe = new THREE.Mesh( geometry, material );
+		scene.add( lathe );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Array points], [param:Integer segments], [param:Float phiStart], [param:Float phiLength])</h3>
+		<p>
+		points — Tableau de Vector2s. La coordonnée x de chaque point doit être supérieure à zéro. La valeur par défaut est un tableau avec (0,-0.5), (0.5,0) et (0,0.5) qui crée une forme de losange simple.<br />
+		segments — Le nombre de segments de circonférence à générer. La valeur par défaut est 12.<br />
+		phiStart — L'angle de départ en radians. La valeur par défaut est 0.<br />
+		phiLength — La plage de radian (0 à 2PI) de la section du vase. 2PI est un vase fermé, moins de 2PI en est une portion. La valeur par défaut est 2PI.
+		</p>
+		<p>
+		Cela crée une [name] basée sur les paramètres.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 58 - 0
docs/api/fr/geometries/OctahedronGeometry.html

@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer une géométrie d'octaèdre.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — Rayon de l'octaèdre. La valeur par défaut est 1.<br />
+		detail — La valeur par défaut est 0. Définir une valeur supérieure à zéro ajoute des sommets, la géométrie n'est donc plus un octaèdre.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 69 - 0
docs/api/fr/geometries/PlaneGeometry.html

@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries planes.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.PlaneGeometry( 1, 1 );
+		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
+		const plane = new THREE.Mesh( geometry, material );
+		scene.add( plane );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float width], [param:Float height], [param:Integer widthSegments], [param:Integer heightSegments])</h3>
+		<p>
+		width — Largeur le long de l'axe X. La valeur par défaut est 1.<br />
+		height — Hauteur le long de l'axe Y. La valeur par défaut est 1.<br />
+		widthSegments — Optional. Default is 1. <br />
+		heightSegments — Optional. Default is 1.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 68 - 0
docs/api/fr/geometries/PolyhedronGeometry.html

@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Un polyèdre est un solide en trois dimensions à faces planes. Cette classe prendra un tableau de sommets,
+			projetez-les sur une sphère, puis divisez-les jusqu'au niveau de détail souhaité. Cette classe est utilisée
+			par [page:DodecahedronGeometry], [page:IcosahedronGeometry], [page:OctahedronGeometry],
+			et [page:TetrahedronGeometry] pour générer leurs géométries respectives.
+		</p>
+
+		<h2>Exemple de code : </h2>
+<code>
+const verticesOfCube = [
+    -1,-1,-1,    1,-1,-1,    1, 1,-1,    -1, 1,-1,
+    -1,-1, 1,    1,-1, 1,    1, 1, 1,    -1, 1, 1,
+];
+
+const indicesOfFaces = [
+    2,1,0,    0,3,2,
+    0,4,7,    7,3,0,
+    0,1,5,    5,4,0,
+    1,2,6,    6,5,1,
+    2,3,7,    7,6,2,
+    4,5,6,    6,7,4
+];
+
+const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+</code>
+
+		<h2>Constructeur</h2>
+
+
+		<h3>[name]([param:Array vertices], [param:Array indices], [param:Float radius], [param:Integer detail])</h3>
+		<p>
+		vertices — [page:Array] de points de forme [1,1,1, -1,-1,-1, ... ] <br />
+		indices — [page:Array] d'indices qui composent les faces de forme [0,1,2, 2,3,0, ... ] <br />
+		radius — [page:Float] - Rayon de la forme finale <br />
+		detail — [page:Integer] - Combien de niveaux pour subdiviser la géométrie. Plus il y a de détails, plus la forme est lisse.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 72 - 0
docs/api/fr/geometries/RingGeometry.html

@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer une géométrie d'anneau bidimensionnelle.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.RingGeometry( 1, 5, 32 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
+		const mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float innerRadius], [param:Float outerRadius], [param:Integer thetaSegments], [param:Integer phiSegments], [param:Float thetaStart], [param:Float thetaLength])</h3>
+		<p>
+		innerRadius — La valeur par défaut est 0.5.<br />
+		outerRadius — La valeur par défaut est 1. <br />
+		thetaSegments — Nombre de segments. Un nombre plus élevé signifie que l'anneau sera plus rond. Le minimum est 3. La valeur par défaut est 8. <br />
+		phiSegments — Le minimum est 1. La valeur par défaut est 1.<br />
+		thetaStart —  Angle de départ. La valeur par défaut est 0.<br />
+		thetaLength — Angle central. La valeur par défaut est Math.PI * 2.
+		</p>
+
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 83 - 0
docs/api/fr/geometries/ShapeGeometry.html

@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crée une géométrie polygonale unilatérale à partir d'une ou plusieurs formes de chemin.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+
+		<h2>Exemple de code :</h2>
+
+
+		<code>
+		const x = 0, y = 0;
+
+		const heartShape = new THREE.Shape();
+
+		heartShape.moveTo( x + 5, y + 5 );
+		heartShape.bezierCurveTo( x + 5, y + 5, x + 4, y, x, y );
+		heartShape.bezierCurveTo( x - 6, y, x - 6, y + 7,x - 6, y + 7 );
+		heartShape.bezierCurveTo( x - 6, y + 11, x - 3, y + 15.4, x + 5, y + 19 );
+		heartShape.bezierCurveTo( x + 12, y + 15.4, x + 16, y + 11, x + 16, y + 7 );
+		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
+		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
+
+		const geometry = new THREE.ShapeGeometry( heartShape );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material ) ;
+		scene.add( mesh );
+		</code>
+
+		<h2>Constructeur</h2>
+
+
+		<h3>[name]([param:Array shapes], [param:Integer curveSegments])</h3>
+		<p>
+		shapes — [page:Array] de formes ou une seule [page:Shape shape]. La valeur par défaut est un triangle.<br />
+		curveSegments - [page:Integer] - Nombre de segments par forme. La valeur par défaut est 12.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 77 - 0
docs/api/fr/geometries/SphereGeometry.html

@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries de sphère.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.SphereGeometry( 15, 32, 16 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const sphere = new THREE.Mesh( geometry, material );
+		scene.add( sphere );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer widthSegments], [param:Integer heightSegments], [param:Float phiStart], [param:Float phiLength], [param:Float thetaStart], [param:Float thetaLength])</h3>
+
+		<p>
+		radius — Rayon de la sphère. La valeur par défaut est 1.<br />
+		widthSegments — Nombre de segments horizontaux. La valeur minimale est 3 et la valeur par défaut est 32.<br />
+		heightSegments — Nombre de segments verticaux. La valeur minimale est 2 et la valeur par défaut est 16.<br />
+		phiStart — Spécifie l'angle de départ horizontal. La valeur par défaut est 0.<br />
+		phiLength — Spécifie la taille de l'angle de balayage horizontal. La valeur par défaut est Math.PI * 2. <br />
+		thetaStart — Spécifie l'angle de départ vertical. La valeur par défaut est 0.<br />
+		thetaLength — Spécifie la taille de l'angle de balayage vertical. La valeur par défaut est Math.PI.<br />
+		</p>
+
+		<p>
+		La géométrie est créée en balayant et en calculant les sommets autour de l'axe Y (balayage horizontal) et de l'axe Z (balayage vertical). Ainsi, des sphères incomplètes (semblables à des `'tranches de sphère'`) peuvent être créées en utilisant différentes valeurs de phiStart, phiLength, thetaStart et thetaLength, afin de définir les points auxquels nous commençons (ou terminons) le calcul de ces sommets.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 59 - 0
docs/api/fr/geometries/TetrahedronGeometry.html

@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer une géométrie de tétraèdre.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Integer detail])</h3>
+		<p>
+		radius — Rayon du tétraèdre. La valeur par défaut est 1.<br />
+		detail — La valeur par défaut est 0. Définir une valeur supérieure à 0 ajoute des sommets, la géométrie n'est donc plus un tétraèdre.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:PolyhedronGeometry] pour les méthodes communes.</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/fr/geometries/TorusGeometry.html

@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Une classe pour générer des géométries de tore.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code : </h2>
+
+		<code>const geometry = new THREE.TorusGeometry( 10, 3, 16, 100 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const torus = new THREE.Mesh( geometry, material );
+		scene.add( torus );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Float tube], [param:Integer radialSegments], [param:Integer tubularSegments], [param:Float arc])</h3>
+		<p>
+		radius - Rayon du tore, du centre du tore au centre du tube. La valeur par défaut est 1.<br />
+		tube — Rayon du tube. La valeur par défaut est 0,4.<br />
+		radialSegments — La valeur par défaut est 8 <br />
+		tubularSegments — La valeur par défaut est 6. <br />
+		arc — Angle central. La valeur par défaut est Math.PI * 2.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 73 - 0
docs/api/fr/geometries/TorusKnotGeometry.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crée un nœud de tore, dont la forme particulière est définie par une paire d'entiers premiers entre eux, p et q. Si p et q ne sont pas premiers entre eux, le résultat sera un lien tore.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code :</h2>
+
+		<code>const geometry = new THREE.TorusKnotGeometry( 10, 3, 100, 16 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const torusKnot = new THREE.Mesh( geometry, material );
+		scene.add( torusKnot );
+		</code>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]([param:Float radius], [param:Float tube], [param:Integer tubularSegments], [param:Integer radialSegments], [param:Integer p], [param:Integer q])</h3>
+		<p>
+			<ul>
+				<li>radius - Rayon du tore. La valeur par défaut est 1.</li>
+				<li>tube — Rayon du tube. La valeur par défaut est 0,4.</li>
+				<li>tubularSegments — La valeur par défaut est 64.</li>
+				<li>radialSegments — La valeur par défaut est 8.</li>
+				<li>p — Cette valeur détermine combien de fois la géométrie s'enroule autour de son axe de symétrie de rotation. La valeur par défaut est 2.</li>
+				<li>q — Cette valeur détermine combien de fois la géométrie s'enroule autour d'un cercle à l'intérieur du tore. La valeur par défaut est 3.</li>
+			</ul>
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</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/fr/geometries/TubeGeometry.html

@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crée un tube qui s'extrude le long d'une courbe 3D.</p>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Exemple de code :</h2>
+
+		<code>
+		class CustomSinCurve extends THREE.Curve {
+
+			constructor( scale = 1 ) {
+
+				super();
+
+				this.scale = scale;
+
+			}
+
+			getPoint( t, optionalTarget = new THREE.Vector3() ) {
+
+				const tx = t * 3 - 1.5;
+				const ty = Math.sin( 2 * Math.PI * t );
+				const tz = 0;
+
+				return optionalTarget.set( tx, ty, tz ).multiplyScalar( this.scale );
+
+			}
+
+		}
+
+		const path = new CustomSinCurve( 10 );
+		const geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
+		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		const mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>Constructeur</h2>
+
+
+		<h3>[name]([param:Curve path], [param:Integer tubularSegments], [param:Float radius], [param:Integer radialSegments], [param:Boolean closed])</h3>
+		<p>
+		path — [page:Curve] - Un chemin 3D qui hérite de la classe de base [page:Curve]. La valeur par défaut est une courbe de Bézier quadratique.<br />
+		tubularSegments — [page:Integer] - Le nombre de segments qui composent le tube. La valeur par défaut est '64'.<br />
+		radius — [page:Float] - Le rayon du tube. La valeur par défaut est '1'.<br />
+		radialSegments — [page:Integer] - Le nombre de segments qui composent la section. La valeur par défaut est '8'.<br />
+		closed — [page:Boolean] Spécifie si le tube est ouvert ou fermé. La valeur par défaut est `false`.<br />
+		</p>
+
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h3>[property:Object parameters]</h3>
+		<p>
+		Un objet avec une propriété pour chacun des paramètres du constructeur. Toute modification après instanciation ne change pas la géométrie.
+		</p>
+
+		<h3>[property:Array tangents]</h3>
+		<p>
+			Un tableau de tangentes [page:Vector3].
+		</p>
+
+		<h3>[property:Array normals]</h3>
+		<p>
+		Un tableau de normales [page:Vector3].
+		</p>
+
+		<h3>[property:Array binormals]</h3>
+		<p>
+		Un tableau de binormaux [page:Vector3].
+		</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 56 - 0
docs/api/fr/geometries/WireframeGeometry.html

@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Cela peut être utilisé comme objet d'assistance pour afficher une [page:BufferGeometry geometry] sous forme filaire.</p>
+
+		<h2>Exemple de code :</h2>
+
+		<code>
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
+
+		const wireframe = new THREE.WireframeGeometry( geometry );
+
+		const line = new THREE.LineSegments( wireframe );
+		line.material.depthTest = false;
+		line.material.opacity = 0.25;
+		line.material.transparent = true;
+
+		scene.add( line );
+		</code>
+
+		<h2>Exemples</h2>
+
+		<p>
+			[example:webgl_helpers helpers]
+		</p>
+
+		<h2>Constructeur</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry] )</h3>
+		<p>
+		geometry — Tout objet de géométrie.
+		</p>
+
+		<h2>Propriétés</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les propriétés communes.</p>
+
+		<h2>Méthodes</h2>
+		<p>Voir la classe de base [page:BufferGeometry] pour les méthodes communes.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 28 - 0
docs/list.json

@@ -1499,8 +1499,13 @@
 
 			"Outils de build": {
 				"Tests avec NPM": "manual/fr/buildTools/Testing-with-NPM"
+			},
+			"Noyau": {
+				"BufferAttribute": "api/fr/core/BufferAttribute",
+				"BufferGeometry": "api/fr/core/BufferGeometry"
 			}
 
+
 		},
 
 		"Référence": {
@@ -1540,6 +1545,29 @@
 				"OrthographicCamera": "api/fr/cameras/OrthographicCamera",
 				"PerspectiveCamera": "api/fr/cameras/PerspectiveCamera",
 				"StereoCamera": "api/fr/cameras/StereoCamera"
+			},
+			"Géométries": {
+				"BoxGeometry": "api/fr/geometries/BoxGeometry",
+				"CapsuleGeometry": "api/fr/geometries/CapsuleGeometry",
+				"CircleGeometry": "api/fr/geometries/CircleGeometry",
+				"ConeGeometry": "api/fr/geometries/ConeGeometry",
+				"CylinderGeometry": "api/fr/geometries/CylinderGeometry",
+				"DodecahedronGeometry": "api/fr/geometries/DodecahedronGeometry",
+				"EdgesGeometry": "api/fr/geometries/EdgesGeometry",
+				"ExtrudeGeometry": "api/fr/geometries/ExtrudeGeometry",
+				"IcosahedronGeometry": "api/fr/geometries/IcosahedronGeometry",
+				"LatheGeometry": "api/fr/geometries/LatheGeometry",
+				"OctahedronGeometry": "api/fr/geometries/OctahedronGeometry",
+				"PlaneGeometry": "api/fr/geometries/PlaneGeometry",
+				"PolyhedronGeometry": "api/fr/geometries/PolyhedronGeometry",
+				"RingGeometry": "api/fr/geometries/RingGeometry",
+				"ShapeGeometry": "api/fr/geometries/ShapeGeometry",
+				"SphereGeometry": "api/fr/geometries/SphereGeometry",
+				"TetrahedronGeometry": "api/fr/geometries/TetrahedronGeometry",
+				"TorusGeometry": "api/fr/geometries/TorusGeometry",
+				"TorusKnotGeometry": "api/fr/geometries/TorusKnotGeometry",
+				"TubeGeometry": "api/fr/geometries/TubeGeometry",
+				"WireframeGeometry": "api/fr/geometries/WireframeGeometry"
 			}
 		
 		}