From BlenderWiki

Jump to: navigation, search


[edit] Outils Booléens

Mode: Mode Object (objets mesh seulement)

Panneau: Contexte EditingModifiers

Raccourci clavier: W

Menu: ObjectBoolean Operation...


[edit] Description

Les opérations booléennes sont des méthodes pour combiner (ou soustraire, ou “intersecter”) deux objets solides pour en créer un troisième. Dans Blender, elles ne s’appliquent qu’à deux objets meshes, de préférence “solides”, ou “fermés”, avec une surface intérieure et une surface extérieure bien définies. Si plus de deux meshes sont sélectionnés, seuls l’objet actif et celui précédemment sélectionné sont utilisés comme opérandes. Les opérations booléennes prennent aussi en compte les matériaux et les textures UV, produisant des objets avec plusieurs matériaux et placages UV.

[edit] Options

Le menu Boolean (appelé par W en mode Object) présente les options suivantes :

Opérations booléennes.
Intersect
Crée un nouvel objet dont la surface “dessine” le volume commun aux deux objets d’origine.
Union
Crée un nouvel objet dont la surface “dessine” le volume total occupé par les deux objets d’origine.
Difference
La seule opération dans laquelle l’ordre de sélection des opérandes est important, l’objet actif (le dernier sélectionné) étant soustrait de l’autre. Cela crée donc un nouvel objet dont la surface “dessine” le volume de l’objet inactif moins le volume de l’objet actif.
Add Intersect Modifier
Un raccourci qui ajoute un modificateur Boolean à l’objet actif et y sélectionne Intersect en une seule étape.
Add Union Modifier
Un raccourci qui ajoute un modificateur Boolean à l’objet actif et y sélectionne Union en une seule étape.
Add Difference Modifier
Un raccourci qui ajoute un modificateur Boolean à l’objet actif et y sélectionne Difference en une seule étape.


[edit] Modificateur “Boolean”

Ce sous-panneau est affiché dans les boutons Editing (F9, ou clic sur Image:Manual-Part-I-Interface-Context-Editing.png dans la fenêtre Buttons). Il fait partie de l’onglet Modifiers. Pour plus d’informations sur cet onglet et son contenu, voyez la page sur l’interface de la pile des modificateurs.

Panneau Modifiers avec un modificateur Boolean activé.
Intersect, Union ou Difference
Le type d’opération booléenne à appliquer.
Ob:
Le nom de l’objet à utiliser comme seconde opérande pour ce modificateur.

L’inconvénient d’utiliser une opération booléenne directe est que, si vous voulez la modifier (déplacer les opérandes, changer l’opération), vous devez supprimer le nouvel objet, et ré-appliquer la commande. Au contraire, l’utilisation du modificateur Boolean permet une grande flexibilité, et une édition non-destructive. En tant que modificateurs, ces opérations booléennes peuvent être activées/désactivées, ou même réarrangées dans la pile pour modifier l’ordre d’application. De plus, vous pouvez déplacer les opérandes et voir ces modifications appliquées en temps réel !

Attention
Si les meshes des objets sont trop complexes vous pouvez avoir à attendre un moment pendant que le système calcule tous les mouvements de souris. Désactiver (temporairement) l’affichage dans les vues 3D de ce modificateur peut alors améliorer les choses.


Pour obtenir un objet “définitif” de ce modificateur (comme avec l’utilisation directe d’une opération booléenne), vous devez “l’appliquer” en cliquant sur son bouton Apply. Pour voir le résultat, vous devez soit déplacer l’opérande restante, soit passer en vue locale (NumPad /). Tant que vous n’appliquez pas le modificateur, le mesh de l’objet n’est pas modifié. Quand vous appliquez un modificateur Boolean, il vous est notifié que vous perdrez les données de mesh sticky, les clefs d’animation et les groupes de vertices.

Attention
Il existe une différence importante entre utiliser une opération booléenne “directe” et appliquer un modificateur Boolean : la première crée un nouvel objet, alors que le second modifie le mesh de son objet sous-jacent. Cela signifie que quand vous appliquez un modificateur Boolean, vous “perdez” l’une de vos opérandes !


[edit] Exemples

[edit] Intersection

Le cube et la sphère ont été déplacés pour révéler le nouvel objet créé (“A”). Chaque face de cet objet a le matériau de la face de l’objet opérande qui lui correspond dans cette opération Intersect.

Avant l’intersection.
Après l’intersection.


[edit] Union

Le cube (“A”) et la sphère (“B”) ont été déplacés pour révéler le nouvel objet (“U”). “U” est maintenant un objet mesh comme les autres, chacune de ses faces ayant le même matériau que celle de l’objet opérande qui lui correspond dans cette opération Union.

Exemple d’union.


[edit] Différence

La différence de deux objets n’est (comme la soustraction “normale”) pas commutative, car l’objet inactif moins l’objet actif (comportement de cette opération) ne produit pas la même chose que actif moins inactif. Le cube (“A”) – actif – a été soustrait de la sphère (“B”) – inactive –, puis tous les deux ont été déplacés pour révéler le nouvel objet (“D”). “D” est maintenant un objet mesh comme les autres, chacune de ses faces ayant le même matériau que celle de l’objet opérande qui lui correspond dans cette opération Difference. Le volume de “D” est inférieur à celui de “B”, car il a été diminué d’une partie du volume de “A”.

Exemple de différence.


[edit] Détails techniques

Normales visibles.

Les opérations booléennes s’appuient fortement sur les normales des faces des deux objets opérandes, il est donc très important que celles-ci soient correctement définies et cohérentes. Cela signifie que toutes les normales devraient pointer vers l’extérieur. Un bon moyen de voir les normales des objets est d’activer leur dessin en cliquant sur Draw Normals dans le panneau Mesh Tools 1, contexte Editing (F9) de la fenêtre Buttons. Ce panneau et les normales ne sont visibles qu’en mode Edit. (Normales visibles) est un exemple de cube avec ses normales visibles.

Dans le cas des objets ouverts, c’est-à-dire des objets ayant des trous dans leur surface, l’intérieur est défini mathématiquement en étendant les faces “frontières” de l’objet à l’infini. En conséquence, vous pouvez vous retrouver avec des résultats inattendus si vous utilisez ce type d’objet(s) comme opérande(s). Une opération booléenne n’affecte jamais les objets d’origine, le résultat est toujours un nouvel objet.

Attention
Ceci n’est pas vrai pour les modificateurs Boolean : lorsqu’ils sont appliqués, ils modifient leur objet cible, et n’en créent pas un nouveau !


Certaines opérations nécessiteront que vous déplaciez les opérandes, ou passiez en vue locale (NumPad /), pour en voir le résultat.


[edit] Limitations & Contournements

Le nombre de polygones générés peut être très grand comparé aux meshes d’origine, particulièrement avec des objets concaves complexes. De plus, les polygones générés peuvent être de piètre qualité, par exemple, très longs et fins, ou bien très petits. Essayez d’utiliser le modificateur Decimate pour régler ce problème.

Parfois, l’opération booléenne peut échouer avec le message suivant : “An internal error occurred -- sorry” (“Une erreur interne est survenue – désolé”). Si cela arrive, essayez de déplacer ou tourner très légèrement un ou deux des objets opérandes, et réessayez.