Outils pour utilisateurs

Outils du site


issue97:inkscape

Over the past few instalments, I've detailed the workings of the Tiled Clones dialog. As well as producing some interesting, and often kaleidoscopic, visual effects, this dialog can be useful for creating particular arrangements of objects. Because the dialog's units are based on the bounding box of the parent object (rather than using explicitly stated dimensions), this approach isn't terribly useful for positioning objects at specific coordinates or locations, so the next few articles will look at the different tools Inkscape provides for these kinds of manipulations. It's important to remember, however, that Inkscape is not a “computer aided design” (CAD) program, of the sort used by architects or engineers. If you want to create technical drawings that could be used by builders or manufacturing companies, there are other Open Source programs that might serve you better, such as FreeCAD, OpenSCAD, or QCAD. With each release, Inkscape gains more functionality in this area – such as the new Measure tool in 0.91 – but it's still a long way from a fully fledged CAD application. With that limitation in mind, we'll start with the most obvious form of positioning: snapping to a grid. Inkscape is rather flexible when it comes to grids. You can have more than one active at a time, and each one can be either rectangular (based on horizontal and vertical lines), or axonometric (vertical lines, plus two sets of angled lines). Usually, however, it's easiest to work with just one grid at a time, most commonly a rectangular one. Launch Inkscape to create a new document, and, if there's no grid visible, try pressing “#” or use View > Grid to enable the display of the default grid. To edit this grid, or to add a new one, use the File > Document Properties menu, then select the Grids tab.

Dans les derniers articles, j'ai détaillé le fonctionnement de la boîte de dialogue des Clones en pavage. De même qu'elle permet des effets visuels intéressants, voire kaléidoscopiques, cette boîte de dialogue peut être utile pour créer certains arrangements particuliers d'objets. Parce que les unités du dialogue sont basées sur la boîte englobante de l'objet parent (plutôt que sur des unités explicitement établies), cette approche n'est pas terriblement utile pour positionner des objets à des coordonnées ou des endroits précis ; aussi, les quelques prochains articles montreront différents outils que propose Inkscape pour ces types de manipulations.

Cependant, il est important de se rappeler qu'Inkscape n'est pas un logiciel de « conception assistée par ordinateur » (CAO, en angl. CAD - Computer Aided Design), du genre de ceux utilisés par les architectes et les ingénieurs. Si vous voulez créer des dessins techniques qui pourraient être utilisés par des sociétés de construction ou de fabrication, il y a d'autres logiciels Open Source qui correspondent mieux, tels que FreeCAD, OpenSCAD ou QCAD. À chaque publication, Inkscape gagne de nouvelles fonctionnalités dans ce domaine - tel que le nouvel Outil de mesure dans la 0.91 - mais on est encore loin d'une application de CAO exhaustive. Avec cette limite en tête, nous allons commencer par la forme de positionnement la plus évidente : l'aimantation à une grille.

Inkscape est assez souple pour ce qui est des grilles. Vous pouvez en avoir plus d'une active à la fois, et chacune peut être rectangulaire (basée sur des lignes horizontales et verticales) ou axonométrique (des lignes verticales plus deux jeux de lignes obliques). Habituellement, cependant, le plus facile est de travailler avec une seule grille, le plus souvent une grille rectangulaire. Lancez Inkscape pour créer un nouveau document et, s'il n'y a pas de grille visible, essayez d'appuyer sur « # » ou d'utilisez Affichage > Grille pour autoriser l'affichage de la grille par défaut. Pour éditer cette grille ou en ajouter une nouvelle, utilisez le menu Fichier > Propriétés du document…, puis sélectionnez l'onglet Grilles.

To create a new grid, select either Rectangular or Axonometric from the pop-up menu at the top, then click the New button. Each grid gets its own tab in the “Defined grids” section, with slightly different icons for the two grid types – but the icons are always blue, regardless of the color of your grid lines. They're named automatically, with no easy mechanism to change the name, and no distinction in naming between the two grid types. The use of similar, identically-colored icons and fixed, generic names means that managing numerous grids is less than straightforward, so it's best to stick with just one or two. The tab bar isn't scrollable – the dialog just grows in size if you start to add too many; and there's also a practical limit imposed by the UI. Each grid has three checkboxes that control snapping and visibility. These are in addition to the View > Grid option (toggled via the “#” key), so, for a grid to be visible, you need both of the top two checkboxes to be enabled and the View > Grid toggle to be on. Think of the toggle as a global way of showing and hiding all the possible grids at once, with the checkboxes being a way to more finely control what each individual grid contributes. The first checkbox, “Enabled”, simply switches the entire grid on and off. With it unchecked, the remaining options are all disabled and the grid plays no part in snapping or display. You might use this if you have multiple grids so that only one is switched on at a time – typically when swapping between rectangular and axonometric within the same drawing.

Pour créer une nouvelle grille, sélectionnez Grille rectangulaire ou Grille axonométrique (3D) dans la liste déroulante en haut, puis cliquez sur le bouton Nouvelle. Chaque grille possède son propre onglet dans la section « Grilles définies », avec des icônes légèrement différentes suivant le type de grille - mais les icônes sont toujours bleues, quelle que soit la couleur des lignes de votre grille. Elles sont nommées automatiquement, sans mécanisme facile pour changer de nom, sans distinction dans le nom entre les deux types de grille. L'utilisation d’icônes similaires, de même couleur et de noms fixes et génériques signifie que la gestion de nombreuses grilles est loin d'être simple ; aussi, il est préférable de se limiter à une ou deux. La barre des onglets n'a pas de défilement - la boîte de dialogue ne fait que grossir si vous en créez trop - et il y a aussi une limite pratique imposée par l'interface utilisateur.

Chaque grille a trois cases à cocher pour contrôler l'aimantation et la visibilité. Celles-ci s'ajoutent à Affichage > Grille (bascule via la touche « # ») ; ainsi, pour qu'une grille soit visible, vous devez cochez les deux cases du haut et avoir le menu Affichage > Grille actif. Pensez au va-et-vient pour afficher/cacher toutes les grilles à la fois et aux cases à cocher comme un moyen d'ajuster finement chaque grille individuelle.

La première case à cocher, « Activé », simplement active ou désactive toute la grille. Désactivée, les autres options sont toutes grisées et la grille n'aimante pas et n'est pas visible. Vous pourriez l'utiliser si vous aviez de multiples grilles, pour n'en avoir qu'une active à la fois - typiquement quand vous basculez d'une grille rectangulaire à une grille axonométrique dans le même dessin.

The second checkbox, “Visible”, has only a visual effect. With this unchecked, the grid will not be displayed, but can still play a part in snapping if the grid is enabled via the first checkbox. As it can be difficult and frustrating to snap to a grid you can't see, I strongly recommend always leaving this option checked. The third checkbox, “Snap to visible grid lines only”, is slightly misleading with its labelling – though the tooltip is clearer. This checkbox concerns grid lines that are automatically suppressed as you zoom out. If you were to zoom out far enough, the grid lines would become so dense that they just appear as a solid colored background. Inkscape avoids this by hiding grid lines that would be drawn too densely, and would have been a hindrance rather than a help. With this option unchecked, you can still snap to these suppressed lines, but I recommend leaving it enabled so that you snap to only visible grid lines. This may require you to zoom in a little to get the precise snapping point you're looking for, but it's usually a good trade-off against the frustration of constantly mis-snapping to invisible grid lines.

La deuxième case à cocher, « Visible », a simplement un effet visuel. Décochée, la grille n'est pas affichée, mais peut continuer à aimanter si la grille est activée dans la première case. Comme il peut être difficile et frustrant d'être aimanté par une grille qu'on ne voit pas, je recommande chaudement de toujours garder cette option cochée.

La troisième case à cocher, « Aimanter seulement aux lignes visibles de la grille », est un peu confuse dans son libellé, alors que l'info-bulle est plus claire. Cette case à cocher concerne les lignes de la grille qui sont supprimées automatiquement quand on diminue le niveau du zoom. Si vous alliez trop loin dans cette diminution, les lignes seraient si denses qu'elles finiraient par paraître comme un fond uni. Inkscape évite cela en cachant les lignes qui deviendraient trop serrées et qui seraient devenues une gêne plutôt qu'une aide. Si l'option est décochée, vous pouvez toujours être aimanté par les lignes supprimées, mais je recommande de laisser la coche activée afin de n'être aimanté que par lignes visibles. Ceci peut vous obliger à augmenter un petit peu le zoom pour une aimantation précise au point que vous visez, mais c'est un bon compromis au regard de la frustration d'aimantations erronées répétées sur des lignes invisibles.

The remaining options in the dialog are used to define the displayed lines, and are fairly self-descriptive. You can position the origin of the grid – 0,0 is good for most drawings – and define the spacing between grid lines in both the x and y directions. As most people usually need a square grid it would be good to have an option to link these values, but it's no great hardship to simply enter the same value into each field. You can set the color, and opacity for the grid lines – it's usually best to keep the opacity low so that they are less dominant on the screen, and less likely to be mistaken for real lines in your drawing. By setting different colors or opacities for major and minor grid lines, you can create a “graph paper” effect. This becomes visible only when you're zoomed in closely enough, and, if you do decide to use this feature, it's best to make the major lines more opaque than the minor ones. Set the “Major grid line every” field to 0 if you want to disable this feature. Finally, the “Show dots instead of lines” checkbox does exactly what it describes, and results in a more lightweight view of the grid. Setting this option, or changing the line colors, can make it easier to work with multiple grids that are all active at the same time, should you need to. The options for creating an axonometric grid are broadly similar to those for creating a rectangular one. There's only a single entry for spacing, and a couple of new fields for defining the angles of the x and z axes. The default values of 30° are fine for isometric drawings, though you might want to use 45° for an “oblique” projection. Setting either of these too close to 0° or 90° results in rendering problems. Any value outside this range is capped, though that isn't reflected in the displayed number. Unfortunately, there's no “Show dots instead of lines” option for axonometric grids.

Les options restantes de la boîte de dialogue sont utilisées pour définir les lignes affichées et sont assez faciles à comprendre. Vous pouvez positionner l'origine de la grille - 0,0 est bien pour la plupart des dessins - et définir l'espace entre les lignes de la grille dans les deux directions x et y. Comme la plupart des gens ont en général besoin d'une grille carrée, ce serait bien d'avoir une option qui lie ces valeurs, mais ce n'est pas très difficile d’entrer la même valeur dans chaque champ. Vous pouvez régler la couleur et l'opacité des lignes de la grille - c'est généralement mieux de garder l'opacité faible pour qu'elles soient moins dominantes à l'écran et qu'elles ne soient pas confondues avec les vraies lignes de votre dessin. En différenciant les couleurs des lignes principales et secondaires de la grille, vous pouvez créer un effet de papier millimétré. Ça devient visible quand vous augmentez assez le zoom et, si vous décidez d'utiliser cette fonctionnalité, c'est mieux de rendre les lignes principales plus opaques que les secondaires. Réglez le champ « Couleur de la grille principale » à 0 si vous voulez désactiver cette fonctionnalité. Enfin, la case à cocher « Afficher des points plutôt que des lignes » fait exactement ce qu'elle annonce et allège l'impact visuel de la grille. En réglant cette option ou en changeant les couleurs des lignes, le travail avec des grilles multiples, toutes actives en même temps (si vous en avez besoin), est rendu plus aisé.

Les options pour créer une grille axonométrique sont largement similaires à celles d'une grille rectangulaire. Il n'y a qu'une entrée pour l'espacement et deux nouveaux champs pour définir les angles des axes x et z. 30° sont les valeurs par défaut, qui sont parfaites en dessin isométrique, alors que vous voudriez peut-être utiliser 45° pour une projection « oblique ». Régler l'une ou l'autre trop près de 0° ou 90° entraînera des problèmes de rendu. Toute valeur en dehors de cette gamme est plafonnée, bien que ça ne soit pas reflété dans la valeur affichée. Malheureusement, il n'y a pas d'option « Afficher des points plutôt que des lignes » pour les grilles axonométriques.

Also missing is the ability to create logarithmic or polar grids. Both are possible via extensions – though these create “real” SVG objects, rather than Inkscape grids, so they can't be toggled with the “#” key, and have to be snapped to via object snapping, not grid snapping. If you do have need of these grid types, however, you can find them under Extensions > Render. In 0.48, you're looking for the Cartesian Grid and Polar Grid entries, whereas in 0.91 they've both been moved into an extra “Grids” submenu. The image on the next page (top right) gives an example of grids produced using these extensions. Going back to Inkscape's rectangular and axonometric grids, the setup we've done so far just lets you visually align objects. To really use them as layout tools, you'll also need to enable snapping. As with grids, there's a global toggle for snapping: press the “%” key (Shift-5 on my keyboard) to trigger it, use the View > Snap menu entry, or click on the first icon on the Snap Controls Bar (button 1 in the screenshot below). With snapping enabled, you also need to have either button 2 or 3 (or both) enabled. These dictate what parts of your drawing can be snapped: button 2 enables the snapping of bounding box corners, and kicks in when you resize or move an object using the Select tool; button 3 enables the snapping of nodes and handles, so has an effect when you initially draw an object, or subsequently edit it using the appropriate object-specific tool. Enabling either button makes a few others available that you can use to enable more specific snappings – such as snapping the center point of a bounding box, rather than just its corners – but most of the time I find that one of the main two buttons is good enough.

Il manque aussi la possibilité de créer des grilles logarithmique (cartésienne) ou polaire. Les deux sont possibles grâce à des extensions, bien que celles-ci créent de vrais objets SVG plutôt que des grilles Inkscape. Par conséquent, elles ne peuvent pas être basculées avec la touche « # » et il s'agit d'une aimantation d'objets et non de grille. Cependant, si vous avez besoin de ces types de grilles, vous pouvez les trouver sous Extensions > Rendu. Dans la version 0.48, vous voyez les lignes Grille cartésienne et Grille polaire, alors que dans la 0.91, elles ont été regroupées dans un sous-menu Grilles. L'image de la page suivante (en haut à droite) montre un exemple de grilles produites en utilisant ces extensions.

Revenons aux grilles rectangulaires et axonométriques d'Inkscape. Le réglage que nous avons fait jusqu'à présent ne nous permet que d'aligner des objets visuellement. Pour les utiliser comme des vrais outils d'agencement, vous avez aussi besoin d'autoriser l'aimantation. Comme pour les grilles, il y a un va-et-vient pour l'aimantation : appuyez sur la touche « % » (Maj+5 sur un clavier Querty) pour changer d'état, utilisez l'entrée de menu Affichage > Adhérence ou cliquez sur la première icône de la barre de contrôle d'aimantation (bouton 1 sur la copie d'écran ci-dessous).

L'aimantation étant activée, vous devez aussi avoir activé les boutons 2 ou 3 (ou les deux). Ils déterminent quelles parties de votre dessin peuvent être aimantées : le bouton 2 permet l'aimantation aux angles des boîtes englobantes et s'applique quand vous redimensionnez ou déplacez un objet en utilisant l'outil Sélecteur ; le bouton 3 permet l'aimantation aux nœuds et aux poignées ; il a donc un effet quand vous créez un objet ou quand vous l'éditez avec l'outil approprié spécifique à l'objet. L'activation de l'un de ces boutons en rend quelques autres disponibles que vous pouvez utiliser pour des aimantations plus spécifiques - comme l'aimantation au centre de la boîte englobante, plutôt que dans ses coins seulement - mais la plupart du temps, je trouve que l'un des deux boutons principaux est suffisant.

As well as defining which parts of an object should snap, we also have to tell Inkscape what we want them to snap to. Button 4 enables snapping to the grid. The button after it enables snapping to guidelines (covered in Part 16 of this series) – I usually leave this enabled as it has no effect unless you specifically add some guidelines, in which case you probably want it switched on anyway. The other button in this section enables snapping to the page border, which I find to be less useful for my own projects. There's one final setting to look at (shown left) regarding snapping, so it's back to File > Document Properties, but this time select the Snap tab. Within this panel, you can set how voracious Inkscape is in its efforts to snap. For each section, the “Always snap” option means exactly that: snap to the nearest snapping point, regardless of how far away it might be. This is useful if you absolutely have to draw to the grid to ensure dimensional accuracy. More generally, however, “Snap only when closer than” offers a good trade-off between accuracy and freedom. With this mode enabled, you can freely place your objects, nodes and handles, unless they get close to a snapping point, in which case they will jump to that location. Exactly how close is set by the “Snap distance” slider. The values are measured in screen pixels, so zooming has an effect on the effective “hit area” in which snapping occurs: zoom in to give yourself more freedom, or zoom out to make snapping more likely.

Ayant défini quelles parties d'un objet peuvent aimanter, nous devons aussi dire à Inkscape à quoi nous voulons qu'ils s'aimantent. Le bouton 4 permet l'aimantation à la grille. Le bouton suivant permet l'aimantation aux guides (traité dans la partie 16 de la série). Généralement, je le laisse activé car il est sans effet, sauf si vous ajoutez spécialement des guides et, dans ce cas, vous voudrez que l'aimantation soit active de toute façon. Dans cette section, l'autre bouton (à gauche de 4) permet l'aimantation au bord de la page, ce que je trouve être de peu d'intérêt pour mes projets.

Il y a un dernier réglage à regarder (voir à gauche) à propos d'aimantation ; revenons au menu Fichier > Propriétés de document…, mais cette fois-ci, sélectionnez l'onglet Adhérence.

Dans ce panneau, vous pouvez ajuster la puissance d'aimantation qu'Inkscape va déployer. Pour chaque section, l'option « Toujours aimanter » signifie exactement ça : adhérer au point d'aimantation le plus proche, sans tenir compte de son éloignement. C'est utile si vous devez absolument dessiner à la grille pour assurer une précision dimensionnelle. Cependant, plus généralement, « Aimanter seulement à moins d'une distance de : » offre un bon compromis entre précision et liberté. Avec ce mode activé, vous pouvez positionner librement vos objets, nœuds et poignées, sauf s'ils sont trop près d'un point d'aimantation, au quel cas, ils sautent à cet emplacement. La distance précise est définie avec la réglette « Distance d'attraction ». Les valeurs sont mesurées en pixels d'écran ; aussi, la valeur du zoom a un effet sur la « zone d'impact » effective où l'aimantation a lieu : un zoom important augmente votre liberté et un zoom réduit augmente la probabilité d'attraction.

Within File > Inkscape Preferences (Edit > Preferences in 0.91), there are “Grids” and “Snapping” panels that offer a few other options. The defaults are usually fine for most users, but if you find yourself heavily using grids or snapping, it might be worth taking a look to see if any of these settings can improve your workflow. With a grid visible and snapping enabled, you should find it quite easy to create shapes that stick to the grid intersections. When you need to place nodes off the grid, you can either press the “%” to disable snapping (whilst leaving the grid visible), or more easily (on a US or UK keyboard, at least) you can press “#” to turn the grid off entirely, removing it as a snap target. Often, however, there's a requirement to place objects relative to one another, rather than to an absolute grid; that will be the subject of the next instalment…

Dans Fichier > Préférences d'Inkscape… (Édition > Préférences dans la version 0.91), il y a des rubriques « Grilles » et « Magnétisme » qui offrent d'autres options. Les valeurs par défaut sont généralement bonnes pour la plupart des utilisateurs, mais, si vous utilisez beaucoup les grilles et l'aimantation, ça vaudrait le coup d'y jeter un œil pour voir si l'un des réglages pourrait augmenter votre productivité.

Avec une grille visible et l'aimantation activée, vous devrez trouver qu'il est vraiment facile de créer des formes qui adhèrent aux intersections de la grille. Quand vous avez besoin de placer des nœuds en dehors de la grille, vous pouvez, soit appuyer sur « % » pour désactiver le magnétisme (tout en maintenant la grille visible), soit plus facilement (du moins sur un clavier UK ou US), vous pouvez appuyer sur « # » pour désactiver entièrement la grille, l'enlevant comme cible d'aimantation. Souvent, cependant, vous avez besoin de placer les objets les uns par rapport aux autres, plutôt que sur une grille absolue ; ce sera le sujet du prochain article ….

issue97/inkscape.txt · Dernière modification : 2015/06/10 17:23 de auntiee