Outils pour utilisateurs

Outils du site


issue102:tutoriel_4

This month we're going to start looking at Live Path Effects (LPEs). These are a way to add more powerful capabilities to paths – such as drawing a pattern that follows a path (for creating ropes and chains), or rendering a path as though it's been roughly sketched. There are 13 LPEs in version 0.48, increasing to 15 in 0.91 with a slight change of UI as well. Let's dive straight in with a relatively simple LPE: Spiro Spline. Draw a path using Bézier tool, consisting of straight lines forming a simple spiral type of shape. Something like this:

Ce mois-ci, nous allons consacrer un premier regard aux effets de chemin. Ils nous donnent la possibilité d'appliquer aux chemins de puissantes fonctionnalités, comme dessiner un motif le long de celui-ci (pour faire des cordes ou des chaînes) ou lui donner l'aspect d'un trait rapidement griffonné. Il y a 13 effets de chemin dans la version 0.48, puis 15 dans la 0.91, avec une interface légèrement modifiée en plus.

Plongeons directement dans le grand bain avec un effet relativement simple : Spline spirographique. Dessinez un chemin avec l'outil de Bézier, en agençant des lignes droites pour former une sorte de spirale simple. Quelque chose comme ceci :

Now select the path and open the LPE dialog using the Path > Path Effects… menu option (Path Effect Editor… in 0.48). At this point, the user interface diverges. To add the Spiro Spline LPE to your path: • In 0.48.x, select “Spiro spline” from the drop-down list of effects at the top of the dialog, then click on the Add button next to it. • In 0.91, click the “+” button at the bottom left of the dialog. This will open another dialog listing the available effects. Scroll down and select “Spiro spline,” then click the Add button. The second dialog will close, adding the effect to the list in the main dialog.

Maintenant sélectionnez ce chemin et ouvrez le dialogue des effets de chemins : Chemins > Effets de chemin… (Éditeur d'effets de chemin… dans la version 0.48). Ici, les interfaces utilisateur divergent. Pour appliquer Spline spirographique à votre chemin : * dans la version 0.48 choisissez Spline spirographique dans le menu déroulant en haut du dialogue, puis cliquez sur le bouton « Ajouter » à côté ; * dans la version 0.91 cliquez sur le signe « + » en bas à gauche du dialogue. Cela ouvrira un nouveau dialogue énumérant les effets disponibles. Faites défiler vers le bas, sélectionnez Spline spirographique et cliquez sur Ajouter. Ce second dialogue se fermera en ajoutant l'effet à la liste du dialogue principal.

With the Spiro Spline effect added to your path, you might be a little underwhelmed to see that there's been no change to the appearance of your spiral. This is because the spiro algorithm works only on paths where some of the nodes are smooth or symmetrical. Currently, all the nodes in our shape are corner/cusp nodes. Double-click on the path to both select it and switch to the node tool, and you should see that all the nodes have the diamond-shaped handles that represent cusp nodes. Press CTRL-A to select them all, and use the buttons on the tool control bar to change them to smooth, symmetrical or auto-smooth. Immediately you should see the effects of the spiro algorithm, as your square spiral turns into a super-smooth version.

Une fois l'effet ajouté au chemin, vous pourriez être déçu de ne constater aucun changement dans l'aspect de votre spirale. C'est parce que l'algorithme ne fonctionne que là où les nœuds sont doux ou symétriques. Or tous les nœuds de notre forme sont pour l'instant des angles ou des nœuds durs. Double-cliquez sur votre chemin pour le sélectionner tout en activant l'outil Nœuds et vous constaterez que tous vos nœuds sont représentés par la forme en diamant qui symbolise les nœuds durs. Faites Ctrl – A pour les sélectionner tous et utilisez les boutons de la barre d'outil pour les rendre doux, symétriques ou automatiques. Vous devriez immédiatement constater les effets de l'algorithme quand votre spirale carrée se transformera pour devenir une version lissée d'elle-même.

You may be forgiven for thinking that your new spiral is just a normal result of switching to smooth nodes, but that's not the case. In the LPE dialog, you'll notice that the Spiro Spline entry has an “eye” icon next to it. Click that to toggle the effect on and off, and you'll notice that the spiro version of the path is noticeably smoother than the normal version. Here's the original (black), smooth (green), and spiro (purple) versions of the path – overlaid on top of each other so you can more easily see the differences between them.

Vous êtes pardonnable si vous pensez que votre nouvelle spirale n'est que le résultat normal du lissage des nœuds, mais ce n'est pas le cas. Dans le dialogue des effets de chemin vous remarquerez une icône en forme d’œil à côté de l'entrée Spline spirographique. Cliquez dessus pour activer et désactiver l'effet : vous constaterez que la version spirographique est bien plus lisse que la version normale. Voici une superposition des trois versions du chemin : l'originale en noir, la version lissée en vert et la version avec effet en violet ; ainsi vous pouvez plus facilement constater les différences entre elles.

The real difference comes when you start to manipulate the path: spiro splines are indifferent to changes in the node handles, so the most practical way to modify the path is to move the nodes themselves. The algorithm is a little unstable, and can sometimes shoot off into wild shapes as you do so; undoing your edit, or moving the nodes a little more, will generally get things back on track. For example, this image shows a green original path, plus the same path with the spiro LPE added in purple, demonstrating just how out-of-control the spiro algorithm can get!

La principale se manifeste quand vous commencez à manipuler le chemin : les splines spirographiques sont insensibles aux modifications des poignées des nœuds. La meilleure façon de modifier le chemin est donc de déplacer les nœuds eux-mêmes. L'algorithme est quelque peu instable et peut parfois faire surgir des formes improbables à cette occasion. Annuler votre modification ou déplacer encore un peu plus les nœuds remettra généralement les choses en ordre. Par exemple, l'image ci-dessous montre un chemin de base (en vert) superposé à sa version modifiée, ce qui démontre à quel point l'algorithme peut déraper.

As well as moving nodes, there's one other way to manipulate spiro paths: straighten some sections. Simply select the end nodes of a segment and use the “Make selected segments lines” button on the tool control bar to straighten it. The spiro algorithm will ensure a smooth transition between straight and curved segments. If you need to introduce a sharp transition into your path, you first have to convert one of your smooth nodes into a corner node. That alone isn't usually enough to do the job though – moving the adjacent node to one side will usually also alter the path on the opposite side in an effort to maintain the spiro path's smoothness. The secret is to move the handles of the corner node so that they're no longer co-linear, then you'll be able to move the spiro paths on either side as you would expect, with a sharp transition occurring at the corner node.

En plus du déplacement des nœuds, il existe une autre manière de modifier un chemin spirographique : redresser certaines sections. Sélectionnez simplement les deux extrémités d'un segment et cliquez sur le bouton « Rendre rectilignes les segments sélectionnés » dans la barre d'options des outils. L'algorithme assurera une transition harmonieuse entre les sections courbes et les sections droites. Si vous avez besoin d'une transition nette, vous devrez d'abord convertir en nœud dur l'un de vos nœuds doux. C'est en général suffisant, et déplacer un des nœuds adjacents déplacera généralement le chemin dans le sens opposé dans un effort pour préserver l'harmonie du tracé. Le secret est de déplacer les deux poignées du nœud d'angle de sorte qu'elles ne soient plus colinéaires, ensuite vous pourrez déplacer le chemin des deux côtés comme attendu, avec une transition brutale au niveau du nœud dur.

The spiro algorithm was originally created by Raph Levien for font design (see http://www.levien.com/spiro/ for more details), but it can also be useful for flowing, organic shapes such as plants, leaves, and… tentacles. It's so useful, in fact, that Inkscape has dedicated buttons on the Bézier and Pencil toolbars which automatically add the Spiro Spline LPE to any lines you draw with them. Select the Pencil tool and ensure that the smoothing is set to about 50% - a little either way won't make much difference. On the tool control bar (shown above), enable Spiro mode using the second button on the bar:

L'algorithme spirographique a été créé par Ralph Levien pour servir à la conception typographique (pour plus de détails, voir http://www.levien.com/spiro/), mais il peut aussi être utilisé pour des formes fluides ou organiques, comme des plantes, des feuilles et… des tentacules ! Il est si utile qu'Inkscape possède un bouton dédié dans la barre d'option des outils Courbes de Bézier et Courbes à main levée : il ajoute automatiquement l'effet spirographique aux courbes que vous dessinez avec. Activez l'outil Courbes à main levée, et assurez-vous que le lissage est à environ 50 % – un petit décalage ne fera pas de différence. Dans la barre d'options de l'outil activez le mode spirographique (deuxième bouton) :

Now it's time to draw something on the canvas: the kind of shape that suits spiro mode. Try drawing a circle, keeping it as neat as you can, and finishing in the starting node. As you draw you'll see a green line indicating your path, regardless of your current fill and stroke settings – don't worry, that's just a guideline that won't be visible when you've finished. Unless you have supernatural control over your muscles, the green path is likely to be bumpy and distorted; yet, on releasing the mouse button, it will be replaced with a nicely rounded circle. If your original path was extremely rough, you might not get a perfect circle, but the final shape will certainly be a lot smoother than your hand-drawn efforts.

Maintenant, il est temps de dessiner quelque chose, le type de forme qui se prête bien aux splines spirographiques. Essayez de dessiner un cercle aussi régulier que possible en terminant votre tracé par son point de départ. À mesure que vous dessinez, vous verrez une ligne verte qui prévisualise votre tracé sans tenir compte du type de trait et du remplissage. Ne vous en faites pas : il s'agit juste d'un guide qui ne sera plus visible quand vous aurez terminé. À moins que votre main ne soit d'une stabilité surnaturelle, le tracé vert a de fortes chances d'être bosselé et irrégulier ; pourtant, en lâchant le bouton de la souris, il sera remplacé par un joli cercle bien rond. Si votre chemin d'origine est très grossier, vous pourriez ne pas obtenir un cercle parfait, mais la forme finale sera certainement bien plus lisse que votre travail à main levée.

Select the path you've drawn, and, in the Path Effects dialog, you should see that the Spiro Spline effect has been added. Toggle the visibility button (the eye-shaped icon) to see how the spiro version compares with your original path. Now try the process again with a different shape – a figure of eight, or a spiral. As you can see, for some shapes it's a lot easier to create something neat and smooth using spiro mode.

Sélectionnez le chemin que vous venez de dessiner et, dans le dialogue des effets de chemin, vous verrez que l'effet Spline spirographique a été ajouté. Activez et désactivez sa visibilité (l'icône en forme d’œil) et vous constaterez à quel point la version avec effet diffère de la version d'origine. Maintenant vous pouvez essayer avec différentes formes, un huit ou une spirale. Comme vous pouvez le voir, selon les formes il est plus ou moins facile de créer quelque chose de lisse et régulier en utilisant le mode spirographique.

When using the Bézier tool in spiro mode, the icon on the tool control bar is the same, but the drawing process is a little different. I usually suggest drawing Bézier paths as a series of straight line segments by single-clicking to place each node, then going back in Node Edit mode to add curves afterwards. If you take that approach with spiro mode enabled, you'll get a series of corner nodes which, as we've seen, don't really play a role in the spiro algorithm. Instead you need to click-and-drag as you place each node, in order to set the curves as you go along. Personally, I find this to be much harder to control, but give it a try to see if you're better at it than me! You can always lay down straight segments with spiro mode enabled, then explicitly change some points into cusp nodes afterwards. It's not a huge workflow improvement, but does save you a trip to the Path Effects dialog to manually add the LPE.

Quand vous utilisez l'outil de Bézier en mode spirographique les icônes de la barre d'options restent les mêmes mais le procédé est un peu différent. En général, je recommande de tracer les chemins Bézier comme une suite de segments rectiligne en faisant un simple clic pour placer chacun des nœuds et de créer les courbes après coup en les éditant. Si vous utilisez cette approche en activant le mode spirographique vous obtiendrez une série d'angles vifs qui, comme nous l'avons vu, ne seront pas pris en compte par l'algorithme. À la place vous devrez faire un cliquer-glisser pour ajuster chaque nœud à mesure que vous progressez. Personnellement je trouve cela beaucoup plus difficile à contrôler, mais vous pouvez toujours essayer pour voir si vous êtes capables de faire mieux que moi ! Vous avez toujours la possibilité de tracer des segments rectilignes quand le mode spirographique est activé, puis de créer les courbes explicitement par la suite. Cela ne révolutionnera pas vos méthodes de travail, mais cela vous évitera de devoir faire le voyage jusqu'au dialogue des effets de chemin pour en ajouter un manuellement.

One big problem with having spiro buttons on these two tools it that it's easy for newcomers to Inkscape to enable them, then forget about it. A common question on the support forums is, “why can't I change the shape of my path using the node handles?” The answer is usually because the Spiro LPE has unintentionally been added, so watch out for that if you find yourself similarly stuck.

Un des problèmes posés par la disponibilité du mode spirographique pour ces deux outils est qu'il est facile pour les néophytes d'activer le bouton, puis de l'oublier. Une question qui revient souvent sur les forums est « Pourquoi ne puis-je plus modifier mon chemin en utilisant les poignées des nœuds ? » La réponse est souvent que le mode spirographique a été involontairement activé. Pensez donc à vérifier cela si vous vous trouvez vous-mêmes confrontés à ce problème.

Let's move on to another LPE: Gears. You first have to draw a path with at least three nodes – to begin, I'll use exactly three so that it's clear what the relevance of each one is. With your path drawn and selected, open the Path Effects dialog and add the Gears LPE. You should immediately see your path replaced by a gear. Double-click on it so that you can see the three nodes and move them around. It should quickly become apparent that the nodes are used to set: 1) The angle of the first gear tooth, relative to the center point. 2) The center point of the gear. 3) The radius of the gear (from the center to the mid-point of the tooth).

Voyons un autre effet de chemin : les engrenages.

Vous devez commencer par dessiner un chemin avec au moins trois nœuds – au début, j'en utiliserai exactement trois pour rendre le rôle de chacun parfaitement clair. Une fois le chemin dessiné et sélectionné, ouvrez le dialogue des effets de chemin et ajouter Engrenages. Votre chemin devrait être immédiatement remplacé par une roue dentée. Double-cliquez dessus pour afficher les trois nœuds et pouvoir les déplacer. Vous devriez rapidement comprendre ce que chacun contrôle (respectivement) : 1. l'angle de la première dent par rapport au centre ; 2. le centre de la roue ; 3. le rayon (du centre au milieu de la dent).

With your gear selected, switch to the Bézier tool. The start and end nodes of your path should be visible: click on the end node, then double-click somewhere else on the canvas to add another segment to your path. Now the path has four nodes, and you should find that a second gear has been added, centered at the new end node.

L'engrenage étant sélectionné, activez l'outil de Bézier. Les points de départ et d'arrivée de votre chemin devraient être visibles. Cliquez sur le nœud final, puis double-cliquez ailleurs dans l'espace de travail pour faire apparaître un autre segment au chemin. Maintenant le chemin a quatre nœuds et vous pouvez constater qu'une deuxième roue dentée est apparue, centrée sur le nouveau nœud final.

You can repeat this process to add more nodes, and hence more gears. Applying the Gear LPE to any path with more than three nodes follows the same rules: the first three nodes define the parameters for the first gear, and any subsequent nodes set the center points for additional gears in the chain. Once you've got a few gears on screen, switch to the node tool to move their centers, noting how Inkscape automatically adjusts the radius and number of teeth in the process. Try dragging the first node around the second one to crank your gear train into life (after all, it is a LIVE path effect).

Vous pouvez répéter la manipulation pour ajouter plus de nœuds et donc plus de pignons. Appliquer cet effet à n'importe quel chemin comportant plus de trois nœuds met en œuvre les mêmes règle : les trois premier nœuds déterminent les paramètres de la première roue dentée et les suivants règlent le centre des pignons supplémentaires dans la chaîne. Quand il y a plusieurs pignons à l'écran, basculez sur l'outil d'édition de chemins et déplacez leur centre. Notez comment Inkscape ajuste automatiquement leur rayon et le nombre de dents. Essayez de faire glisser le point initial autour du deuxième pour donner vie à votre train de pignons (après tout, il s'agit d'un effet dynamique !)

As well as the values that are implicitly set by the positions of the nodes, there are two additional parameters required to fully specify the effect. These can be found at the bottom of the Path Effects dialog, in fields labelled “Teeth” (the number of teeth on the first gear), and “Phi” (the “tooth pressure angle” - set it to about 20 for realistic looking teeth). Almost all LPEs populate this part of the dialog with a UI of some sort, and in some cases the number of additional parameters is rather excessive (watch out if you're working on a small screen!).

En plus des valeurs contrôlées par la position des nœuds, deux paramètres supplémentaires sont nécessaires pour complètement spécifier l'effet. On les trouve en bas du dialogue des effets de chemin. Ce sont les champs « Dents » (le nombre de dents du premier pignon) et « Phi » (l'angle de contact entre les dents – fixez-le à 20 pour des dents d'apparence réaliste). Presque tous les effets occupent cette zone du dialogue avec une interface utilisateur et dans certains cas le nombre de paramètres additionnels est plutôt excessif (faites attention si vous travaillez sur un petit écran !).

You may have guessed from the UI that it's possible to apply more than one LPE to a path. In programming terms you can think of an LPE as a function that takes a path as an input, and produces another path as an output, allowing you to chain them together. Be aware, however, that the order in which you chain them is significant. Consider this simple path, made up of cusp nodes: If we apply either the Spiro Spline or Gears LPE to the path we get the results we'd expect:

Vous avez peut-être deviné en observant l'interface qu'il était possible d'appliquer plusieurs effets à un seul chemin. Par analogie avec le jargon des développeurs, voyez ces effets comme des fonctions qui prennent un chemin en entrée et en renvoient un autre en sortie, ce qui vous permet de les chaîner l'un à l'autre. Toutefois soyez attentifs : l'ordre dans lequel vous les agencez a une influence. Considérez ce tracé simple, fait de courbes serrées :

Si nous appliquons l'un ou l'autre des deux effets que nous avons vus, nous obtenons le résultat escompté :

But if we apply both LPEs to the path, the effects differ greatly depending on the order. We'll start with the least surprising combination: Gears first and Spiro Spline second. It may not be easy to see, but the only real effect is that the teeth of the gears have become more rounded (though each gear also has one tooth that's misshapen). Thinking about our chain of LPEs the general effect makes some sense: the first LPE outputs a composite path in the shape of the gears, then the spiro algorithm is applied to that path, smoothing out any cusp nodes that are present in it. But what happens if we apply the Spiro Spline LPE first, and the Gears LPE second?

Mais si nous appliquons les deux effets à ce chemin, l'ordre fait une grande différence. Commençons avec la combinaison la moins surprenante : Engrenages d'abord et Spline spirographique ensuite. Cela n'est peut-être pas facile à voir, mais les dents sont maintenant plus arrondies (et chaque pignon possède une dent qui est déformée). En pensant à notre chaîne d'effets ce résultat est logique : le premier effet renvoit un chemin composite sous forme d'engrenages, puis l'algorithme spirographique s'applique à ces engrenages en arrondissant tous les angles vifs qu'il peut trouver. Mais que se passe-t-il si nous appliquons nos effets dans l'ordre inverse ?

Now we've got a load more gears! This is because the path that is created by the Spiro Spline LPE has more nodes than our original input path. Although we drew 6 nodes, the spiro version of the path actually has 13, so when the second LPE runs it creates a lot of extra gears. We could have predicted this result had we only kept an eye on Inkscape's status bar: when an LPE is active it shows the number of nodes in the output path, not the number in the original path. Try using the Gears LPE again, and have a look at how many nodes that generates! Why not practice drawing naturalistic curves and mechanistic gears, then next time we'll continue to look at some of the other LPEs that are available.

Maintenant nous avons beaucoup plus de pignons ! C'est parce-que le chemin créé par Spline spirographique comporte beaucoup plus de nœuds que le chemin d'origine. Nous avons dessiné six nœuds et la version spirographique en comporte treize. Quand le second effet entre en scène, il crée donc beaucoup plus d'éléments. Nous aurions pu le prévoir en observant la barre d'état d'Inkscape : quand un effet est actif elle indique le nombre de nœuds du chemin de sortie, pas celui du chemin original. Essayez d'utiliser l'effet Engrenages une fois encore et voyez combien de nœuds sont générés !

Pourquoi ne pas vous entraîner à dessiner des courbes organiques et des engrenages réalistes ? La prochaine fois nous continuerons à explorer les effets de chemin disponibles avec Inkscape.

issue102/tutoriel_4.txt · Dernière modification : 2015/11/07 00:45 de erlevo