jPicEdt 1.6-pre1

Table of Contents

Next:   [Contents]

Manuel de jPicEdt v1.6-pre1

Ceci est le manuel de jPicEdt, version 1.6-pre1.

Documentation de l’API (si installée)
http://www.jpicedt.org

Previous: Top, Up: Top   [Contents]

1 Ligne de commande

La ligne de commande accepte les arguments suivants :

Exemple d’usage :

jpicedt --debug picture1.tex picture2.tex

(où jpicedt désigne le nom du script de démarrage).


Up: Top   [Contents]

2 Import, Export et sauvegarde


Next: , Up: contentTypes   [Contents]

2.1 Généralités

2.1.1 Formats de fichier

jPicEdt a été créé pour produire des dessins au format LaTeX de façon que ceux-ci puissent être directement inclus dans un document LaTeX. Il est également possible de faire en sorte que le dessin soit un document maître LaTeX — voir Pro/épilogue utilsateur.

Plus généralement, on distingue un format de fichier que jPicEdt peut manipuler comme il suit :

Un même format de sauvegarde peut avoir plusieurs variantes, et on désigne par type de contenu l’ensemble format de sauvegarde + variante.

jPicEdt ne produit pas directement de fichier en format propre, ce format est produit en hackant sous Emacs un fichier qui est dans un format de sauvegarde grâce au paquetage d’extension jpicedt.el pour Emacs. Lors de cette opération le fichier est débarrassé de la partie en format d’exportation, et il ne reste que la partie en JPIC-XML qui est mise dans un format variante du JPIC-XML pour faciliter le hackage.

Il est à noter que du point de vue de l’importation d’un dessin venant d’un autre logiciel il faut que le format un format d’import ou un format convertible, ainsi la différence entre format d’import et format convertible n’est qu’une question de créer ou pas un nouveau fichier pour jPicEdt.

Réciproquement du point de vue de l’exportation d’un dessin vers un autre logiciel, il faut que format employé soit un format d’export ou un format de sauvegarde. De même, la différence entre un format d’export ou un format de sauvegarde, n’est qu’une question de créer ou pas un nouveau fichier pour l’autre logiciel.

Voici les formats que jPicEdt 1.6-pre1 connaît :

formatvariantetypecommentaire
JPIC-XMLXMLproprevoir hackage sous Emacs
JPIC-XMLOpen LaTeXproprevoir hackage sous Emacs
JPIC-XMLmixed JPIC-XML/LaTeXproprevoir hackage sous Emacs
LaTeXpicture de basesauvegarde et convertible
LaTeXepic, eepicsauvegarde et convertible
LaTeXpstrickssauvegarde et convertiblenon directement compilable en PDF
DXFsauvegardeexportation très sommaire, non convertible : on ne peut donc que créer des dessins en DXF.

Il est à noter qu’il n’y a pas de relation forte entre le nom du fichier et son format, toutefois il est conseillé d’observer les conventions suivantes :

formatvariantetypeextension conseilléeautre extension possible
LaTeXpicture de baseconvertible.tex
LaTeXpicture de basesauvegarde.jpe.tex
LaTeXepic, eepicconvertible.epic.pic
LaTeXepic, eepicsauvegarde.jpe.epic.jpe.pic
LaTeXpstricksconvertible.pstricks.pst
LaTeXpstrickssauvegarde.jpe.pstricks.jpe.pst
DXFsauvegarde.jpe.dxf

2.1.2 Formats de sauvegarde et types de contenu

On désigne par type de contenu l’ensemble format de sauvegarde + variante. À la création d’un nouveau dessin le type de contenu par defaut est celui défini dans les préférences utilisateur. Mais vous pouvez changer à volonté le type de contenu par la suite avec le menu Éditer / Format… ailleurs le type de contenu courant d’un dessin est affiché entre crochets juste après le nom du dessin dans le bandeau de la planche correspondante (par exemple "[pstricks]" si le type de contenu est LaTeX + pstricks).

Il est à noter qu’il se peut que le "type de contenu" ne définisse pas à lui seul tous les paramètres de formattage, et qu’une partie de ceux-ci soient accessibles dans les préférences utilisateur.

Dans un format de sauvegarde la partie JPIC-XML aparaît comme des commentaires, par exemple si le format de sauvegarde est LaTeX le code JPIC-XML est commenté avec un symbole pourcent en début de chaque ligne. Ceci permet à un programme connaissant le format d’export de lire un fichier au format de sauvegarde sans être perturbé par la présence du code JPIC-XML. Par exemple si le format de sauvegarde est LaTeX le fichier peut être correctement compilé par LaTeX.

Inversement, la partie JPIC-XML permet à jPicEdt de recharger le dessin sans la moindre perte d’information, ce que ne permet par une importation même avec le format LaTeX sous sa variante PSTricks (et a fortiori en LaTeX sous eepic).

2.1.3 Ouverture d’un fichier

Réciproquement, à l’ouverture d’un fichier, jPicEdt analyse le fichier ouvert de la façon suivante:

  1. Tout d’abort jPicEdt essaie de voir si le fichier est dans un format de sauvegarde en cherchant la partie en JPIC-XML enfouie, et si elle y est, alors le dessin est reconstruit seulement en se basant sur le JPIC-XML enfoui (ce qui signifie non seulement que tous changements effectués sur la partie en format d’export seront ignorés, mais encore que si vous modifiez le dessin avec jPicEdt et puis le sauvegardez, ces changements seront perdus , car jPicEdt les écrasera sans pitié lors de formattage de la partie en format d’export).
  2. Dans le cas où il n’y a pas de code JPIC-XML enfoui (ce qui est par exemple le cas si vous chargez une image écrite à la main ou par un autre logiciel capable de produire du code LaTeX comme GnuPlot, ou encore si vous avez détruit la partie en JPIC-XML), jPicEdt essaie de voir si le fichier est dans un format convertible en soumettant le fichier à un analyseur syntaxique.

Il est à noter que jPicEdt n’utilise aucunement le nom du fichier, et notamment son extension pour détecter le type de contenu.

jPicEdt supporte actuellement trois formats convertibles, qui sont en fait trois variantes du format LaTeX, nommément l’environnement picture standard, le paquetage eepic, et le paquetage pstricks.

2.1.4 Type de contenu et WYSIWYG-ité

jPicEdt n’est pas vraiment WYSIWYG notamment car il ne comprend pas de compilateur LaTeX. Toutefois il est capable de présenter le dessin en fonction du type de contenu. Vous pouvez visionner le dessin à l’aide d’outils externe appelable directement depuis jPicEdt via le menu Commandes.

L’ensemble des attributs d’un objet graphique reste toutefois configurable, ceci peut être surprenant pour les débutants : si par exemple le type de contenu est "LaTeX" (c’est à dire le format de sauvegarde LaTeX dans sa variante environement picture de base), et que vous changez l’angle d’orientation alors le texte reste horizontal à l’écran, conformément à la façon dont il est exporté en picture de base. Dès lors que vous changer le type de contenu pour prendre par exemple pstricks, il apparaîtra avec l’orientation choisie.


Next: , Previous: General on Formats, Up: contentTypes   [Contents]

2.2 Format de sauvegarde, utilisation des prologue et épilogue utilisateur

L’utilisation des prologue et épilogue utilisateur suppose de modifier “à la main” le fichier de sauvegarde sans l’endommager. Ceci est réservé aux utilisateurs avertis. De plus, cette manipulation est d’autant plus délicate que la version actuelle de jPicEdt ne détecte pas la modification du fichier en dehors de jPicEdt, et ne vous invite donc pas à recharger un fichier plus récent que votre dernière modification avec jPicEdt, ni ne vous avertit contre l’écrasement d’un fichier de sauvegarde de dessin modifié à l’extérieur de jPicEdt.

Alors que de base un fichier dans un format de sauvegarde peut être directement inclus dans un fichier LaTeX avec une commande \input{nom_du_fichier_jpicedt}, il est également possible d’y insérer un prologue et un épilogue utilisateur de sorte à en faire un fichier LaTeX maître.

Le prologue et l’épilogue utilisateur ne sont pas interprété par jPicEdt, il peuvent donc en fait comprendre n’importe quel texte, notamment le prologue utilisateur peut être un prologue classique de document LaTeX, c’est à dire la portion de code allant de \documentclass à \begin{document}, et un épilogue classique de document LaTeX, c’est à dire la portion de code comprenant le \end{document}. De la sorte le fichier de sauvegarde peut compiler directement avec LaTeX comme un fichier maître.

La figure ci-dessous donne un exemple de la composition d’un fichier jPicEdt dans un format de sauvegarde:

img/RedStar

Le contenu du fichier jPicEdt correspondant à cette figure peut être téléchargé ici : help.RedStar.jpe.pstricks.

Il est illustré ci-après :

Disposition d’un fichier en format de sauvegarde

Ce fichier comprend sept parties consécutives :

  1. Tout d’abord un prologue utilisateur. Ce prologue est par défaut vide, et le seul moyen de le renseigner est d’éditer le fichier avec un programme d’édition de texte, comme par exemple EMACS. Vous pouvez mettre n’importe quel code LaTeX valide dans ce prologue, jPicEdt ne l’interprète pas. Toutefois les deux usages typiques du prologues utilisateur sont les suivants :

Previous: User Pre/Postamble, Up: contentTypes   [Contents]

2.3 Particularités des différents formats

2.3.1 Analyse d’un fichier au format LaTeX

Les trois variantes (picture de base, epic, ou pstricks) du format LaTeX peuvent combinées dans un même fichier convertible au moment de l’analyse, à ceci près que seul la première begin{(ps)picture}…end{(ps)picture} déclaration est prise en compte. L’analyseur syntaxique LaTeX est capable de s’accommoder d’un certain nombrre de, disons, déviations syntaxiques, et vous n’avez donc pas à vous souciez de savoir si votre syntaxe est parfaitement conforme à LaTeX, eepic ou PSTricks ou non, pusique l’analyseur syntaxique produira un message ne vous laissant pas dans le doute dès qu’il tombe sur une erreur de syntaxe, un numéro incorrect de format, etc. … Néanmoins, vous être fortement encouragé à respecter les règles suivantes :

2.3.2 Formatage en DXF

Les points suivants sont à noter :


Up: Top   [Contents]

3 Dessiner des objets

Pour dessiner un nouvel objet, tout d’abord sélectionner une forme en cliquant sur l’un des boutons outil-de-dessin dans la palette “Outils” (si cette palette est cachée, rendez la visible en cliquant sur Bascule palette
d’outils dans la barre d’outils principale). Alternativement, vous préferez peut-être laisser la palette cachée et sélectionner plutôt l’outil de dessin à partir du menu Outils ; les raccourcis clavier associés peuvent être modifiés à partir de l’onglet Raccourcis du panneau “Préférences…” (cliquez Bouton préférences dans la barre d’outils principale, ou sélectionner Préférences… dans le menu Éditer)

Palette d’outils de dessin

Chaque bouton affiche un conseil si la souris le survole plus de deux secondes. Une fois qu’un outil de dessin a été sélectionné, cliquez-gauche n’importe où sur la toile de dessin pour positionner le premier point, puis déplacez la souris pour choisir le second point, et ainsi de suite jusqu’au dernier point selon le nombre de points demandés par l’outil choisi.

Pour les objets qui sont définis par un nombre variable de points, tels que les Courbes de Bézier, le dernier point est déterminé en cliquant-droit au lieu de cliquer-gauche.

Les Courbes de Bézier ont ceci de spécial que :

Ci-après suit une liste de tous les outils de dessin disponibles accompagnés de leur icône associée dans la palette “Outils”. Certains outils de dessin supportent un ensemble de fonctions alternatives : celles-ci sont déclenchées par une combinaison spécifique de modificateurs (Ctrl+Maj, Ctrl+Alt ou Ctrl+Alt+Maj, comme indiqué), et vous permettent de relacher ou de renforcer une ou plusieurs contraintes géométriques (les mêmes combinaisons sont utilisées dans le mode SÉLECTION, à ceci près que le modificateur Ctrl ne veut rien dire dans ce cas). Vous pouvez appuyer ou relâcher les touches des modificateurs n’importe quand pendant la séquence de dessin en cours.

3.1 Outils de dessin

IcôneOutilNombre de points de contrôleSéquence de dessinFonctions alternatives
Outil dessin ligneLignes.2Première extrémité, seconde extrémité.N/A
Outil dessin rectangleRectangles .2Premier coin, coin opposé. Les côtés sont maintenus parallèles aux axes de la grille.Ctrl+Alt : punaise le centre du rectangle à sa position courante.
Ctrl+Alt+Maj : relâche la contrainte sur les côtés. Utilisez ce modificateur dès lors que vous désirer affecter l’orientation des côtés, puis relâcher le et deplacer la souris pour définir l’échelle du rectangle).
Outil dessin parallélogrammeParallélogrammes.3Coin inférieur gauche, Coin supérieur gauche, Milieu du côté opposé.Ctrl+Alt : punaise le centre du parallélogramme à sa position courante.
Ctrl+Alt+Maj : force le parallelogramme à être carré. Notez qu’utiliser ce modificateur alors que vous déplacez le second point de contrôle est possible, mais sans effet vu qu’il reste le troisième point de contrôle à définir !
Outil dessin EllipseCercle ou ellipse contrôlé par un rectangle.2Premier coin, coin opposé. Les côtés du rectangle contrôlant l’ellipse sont maintenus parallèles aux axes de la grille.Ctrl+Alt : punaise le centre de l’ellipse à sa position courante.
Ctrl+Alt+Maj : relâche la contrainte sur les côtés du rectangle contrôlant l’ellipse (voir Rectangles ci-dessus).
Outil dessin arc ouvert
Outil dessin camembert
Outil dessin arc cordé
Arc contrôlé par un rectangle.
Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs.
4Premier coin, coin opposé, début de l’arc, fin de l’arc.
Outil dessin Ellipse penchéeEllipse penchée.3Coin inférieur gauche, Coin supérieur gauche, Milieu du côté opposé du parallélogramme contrôlant l’ellipse.Ctrl+Alt : punaise le centre de l’ellipse à sa position courante.
Ctrl+Alt+Maj : force l’ellipse à être un cercle.
Outil dessin arc ouvert d’ellipse penchée
Outil dessin camembert d’ellipse penchée
Outil dessin arc cordé d’ellipse penchée
Arc d’ellipse penché.
Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs.
5Coin inférieur gauche, Coin supérieur gauche, Milieu du côté opposé du parallélogramme contrôlant l’ellipse, début de l’arc, fin de l’arc.
Outil dessin cercle de 3 pointsCercle contrôlé par 3 points.3Premier, second et troisième.N/A.
Outil dessin arc de cercle de 3 points
Outil dessin camembert cercle de 3 points
Outil dessin arc cordé de cercle de 3 points
Arc contrôlé par 3 points.
Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs.
Outil dessin chaîne de courbe de BézierChaîne ouverte de courbes de Bézier, polygônes, ou une combinaison des deux. Les points de subdivision et les tangentes sont définis en déplaçant la souris (pour les points de subdivision) ou en la faisant glisser (pour les tangentes). Un clic-droit définit le point terminal de la courbe, et permet de déplacer la tangente en ce point si le dernier segment est courbe (sinon la séquence de dessin s’arrête ici). Un clic-gauche supplémentaire signale la fin de la séquence de dessin.
Notez que vous pouvez joindre plusieurs chaînes de courbe de Bézier en les sélectionnant, en ouvrant le menu contextuel par un clic-droit, puis en sélectionnant Joindre les courbes sélectionnées. Cliquer ici pour plus d’information sur ce objet.
Variable
  • premier point (appuyer)
  • première tangente (glisser)1
  • second point (déplacer)
  • seconde tangente (glisser)2
  • etc…
  • dernier point (cliquer-droit)
  • dernière tangente (déplacer et cliquer)3

sans modificateur : force le lissage et symétrie des tangentes de part et d’autre d’un point de subdivision.
Ctrl+Maj : force le lissage seulement.
Ctrl+Alt : force la symétrie seulement.
Ctrl+Alt+Maj : déplacer les tangentes librement (sans aucune contraintes)
Outil dessin chaîne fermée de courbe de BézierChaîne fermée de courbes de Bézier, polygones fermés, ou une combinaison des deux : pareil que ci-dessus, mais la courbe étant fermée. Cliquer ici pour plus d’information sur cet objet.
Outil dessin de polygone lissePolygone lisse : c’est une chaîne de courbes de Bézier contrôlés par un polygone. Cliquer ici pour plus d’information sur cet objet.VariablePremier, second, troisième point… cliquer-droit pour finir.N/A
Outil dessin de polygone lisse ferméPolygone lisse fermé : pareil que ci-dessus, mais la courbe est fermée. Cliquer ici pour plus d’information sur cet objet.
Outil dessin de PsCurveCoubre interpolatrice (connue comme \pscurve dans le paquetage PSTricks) : ceci la spline qui interpole une courbe ouverte passant par les points de contrôle donné par l’utilisateur. La courbure est controlé par des paramètre qui peuvent être défini en cliquant-droit sur la courne ou en appuyant F2 alors qu’elle est sélecitonnée (c.f. documentation PSTricks, p. 14, pour plus d’information sur le role de chaque paramètre).VariablePremier, second, troisième point… cliquer-droit to finir.N/A
Outil dessin de PsCurve ferméeCoubre interpolatrice fermée : pareil que ci-dessus, à ceci-après que la courbe est fermé (aussi connue comme \psccurve).
Outil dessin de texteTexte (avec ou sans boîte).1Point d’ancrageN/A

Pour tous les objets, en appuyant sur F2 alors que l’objet est sélectionné, ou juste après avoir complété la séquence de dessin correspondante, ouvre un panneau des propriétés de l’objet. Ceci vous permet en particulier de retoucher les coordonnées à la main.

Arcs elliptiques : les dernières parutions de PSTricks supportent maintenant les arcs elliptiques de façon native : les nouvelles commandes sont \psellipticarc et \psellipticarcn. Malheureusement, LaTeX et eepic ne supportent pas ces objets; c’est pourquoi ceci sont émulé et ne peuvent pas être remplis.


Up: Top   [Contents]

4 Éditer des formes

Pour éditer un objet, commencer par cliquer sur son chemin de traits pour le sectionner.

Vous pouvez déplacer un point d’ancrage en particulier en cliquant dessus et en faisant glisser la souris, ou vous pouvrez translater la séléction entrière en cliquant n’importe où sur son chemin de trait. Lorsque vous déplacez un groupe d’objets, l’objet sur lequel vous avez cliqué sert de référence pour l’alignement sur la grille.

Si vous désirer un contrôle précis sur la localisation de l’objet, appuyer sur F2 afficher directement un panneau de propriétés permettant de changer la forme de l’objet par une saisie numérique plutôt que par la souris

Truc : Si vous cliquer sur un objet sélectionner en enfonçant la touche Maj, alors cela le désélectionne.

4.1 Séléctions multiples et groupes

Vous pouvez vous offrir des sélections multiples soit en maintenant enfoncée la touche Maj alors que vous sélectionner l’objet ou en "enlaçant" les objets que vous voulez sélectionner avec un lasso de sélection (visualisé comme rectangle bleu) que vous crée en faisant glisser la souris d’un point de départ quelconque sur la feuille. Les opérations de translation et changement d’échelle sont alors disponible selon les mêmes règles énoncées au paragraphe précédent. Vous pouvez aussi grouper des objets sélectionnés de sorte à les rendre solidaires les uns des autres, par un clic-droit pour déplier le menu contextuel, et en y sélectionnant l’article Grouper les objets sélectionnés ; d’autre part, les groupes peuvent être emboîtés (un groupe peut en contenir un autre et ainsi de suite). Pour dégrouper des objets précédemment groupés, cliquer-droit quelque part sur un groupe sélectionné pour déplier le menu contextuel, et y sélectionner l’article Dégrouper.

4.2 Éditer des angles d’arcs

Vous pouvez ajouter ou ôter des contrainte géométrique au opération d’édition, en maintenant enfoncé des modificateurs (Ctrl+Maj, Ctrl+Alt ou Ctrl+Alt+Maj) pendant le déplacement de la souris. En plus des combinaisons de modificateur utilisées par les outils de dessin, il y a un modificateur supplémentaire, nommément Ctrl, qui permet de déplacer les deux points contrôlant l’angle de départ et de fin au cas où ceci devraient être à la même position que le point contrôlant la forme de l’ellipse (par défaut, ces deux dernier points sont plus prioritaire et sont déplacer en premier; ansi maintenir Ctrl enfoncé inverse cette priorité).


Up: Top   [Contents]

5 Chaîne de courbes de Bézier

Aide dessin de courbes de Bézier

Une courbe extensible de Bézier, est une chaîne de segments qui sont soit des segments de droite, soit des courbes de Bézier cubiques, un segment de droite étant un cas particulier de courbe de Bézier cubique. Pour chaque point de subdivision (c’est à dire un point à la jonction de deux courbes de Bézier, comme A,B,C,D,E dans la figure ci-dessus), on peut imposer deux propriétés aux tangentes associées, nommément la propriété d’être lisse et/ou la symétrie. Être lisse en un point de subdivision signifie que les tangentes de part et d’autre de ce point sont parallèles (par exemple, BB' est parallèle à BB'' sur la figure ci-dessus), le lissage consistant à maintenir cette propriété. Plus précisément, si l’on requière que la courbe soit lisse en B, ou en d’autres terme le lissage en B, et qu’on déplace B' avec la souris, alors B” se déplacera de façon convenable à préserver l’état lisse. Pour faire un angle (comme au point C), le lissage de NE doit PAS être requis. La symétrie en B signifie que les longueurs BB' et BB'' sont les mêmes, la symétrisation consistant à maintenir cette propriété. La symétrisation est requise en tous les points de la figure ci-dessus. Si à la fois la symétrisation et le lissage sont requis, disons en B, alors B' et B'' seront symétriques l’un de l’autre par rapport à B. La symétrie et l’état lisse n’ont pas d’effet sur les points terminaux A et E.

Lorsqu’on dessine ou on édite une courbe, la symétrisation et le lissage sont requis par défaut, mais en utilisant des modificateurs vous pouvez changer ce comportement :

Notez que ces combinaisons et leur signification sont rappelées dans la barre d’état.

Vous avez également la possibilité de changer ces propriétés pour tous les points d’un coup, ou seulement pour un point en particulier, en sélectionnant une courbe, en cliquant-droit, et en sélectionnant l’action correspondante dans le menu contextuel. Alternativement, le panneau de propriétés (appuyer sur F2) vous permet d’effectuer le même genre d’opérations, mais d’une façon plus précise si vous saisissez de nouvelle coordonnées numeriquement. Il est important de remarquer que certaines modification sont irreversibles (à moins que vous appeliez explicitement défaire), puisque lorsque vous requerrez l’une des ces proprités, cela PEUT changer la positions de certain points de contrôles, et la politique actuelle de jPicEdt est de ne pas se souvenir de leur position précédente ; ainsi les coches Symétrie et Lissage dans le panneau des propriétés sont en fait des rues à « sens unique ».

5.1 Que les segments soient rectilignes, qu’ils cessent de l’être

Pour rendre rectiligne une coubre de Bézier, il suffit de déplacer les points de contrôle des tangentes aux extrémités jusqu’à qu’ils se superpose au point de subdivision correspondant, cela revient à réduire le segment tangent à un seul point. Pour qu’un segment cesse d’être rectiligne, appuyez sur le modificateur Ctrl, Ctrl+Maj, Ctrl+Alt ou Ctrl+Alt+Maj, cliquez sur chaque extrémité du segment et faites glisser le point de controle de la tangente, de sorte à étirer le segment tangent. Si vous omettez d’appuyer sur l’un de ces modificateur avant de cliquer, alors vous ne ferez que translater les extrémités du segment sans modifier leur tangentes associées.

Ici encore, le menu contextuel permet de rendre la courbe rectiligne en tous ses segments d’un coup, ou en seulement un segment particulier. Pour annuler le changement, invoquer défaire.

5.2 Polygones lisses

Aide dessin polygone lisse

Un polygone lisse est une courbe lisse contrôlée par un polygone. Par exemple, le polygone lisse sur la figure ci-dessus est contrôlé par le polygone ABCDE (en vert sur la figure). La courbe est toujours lisse, et ne passe pas en général par les points de contrôle. Mais la courbe passe par les points médians de chacundes segments du polygone (sauf les deux segments aux extrémités). Sur l’exemple ci-dessus, la courbe passe par P et Q qui sont les points médians de [BC] et [CD].

À chaque point du polygones lisse est associé un coefficient de lissage qui contrôle la proximité entre le polygone et la courbe. Sa valeur par défaut est 70, et des valeurs utiles sont généralement dans l’intervalle 50–100. Plus le coefficient d’un point est grand et plus la courbe colle au polygone le long des bords du coin de polygone correspondant à ce point. Ce coefficient peut être affecté comme suit : sélectionnez le polygone lisse et appuyer sur F2 pour faire apparaître le panneau de propriétés ; si vous ne voulez pas ajuster le coeffcient de tous les point, décochez certaine des boîtes de coche dans la colonne Adjuster ; puis utiliser la glissière pour adjuster le coefficient. La figure ci-dessous montre l’effet d’un changement de la valeur du coefficient de tous les points à 50.

Pour une façon alternative d’éditer les coeffcients de lissage, voir la rubrique Utiliser l’outil Éditer les points de Bézier [Bouton éditer les points
de Bézier] ci-dessous.

example

Plus précisément, un polygone lisse est un chaîne de courbe cubique de Bézier dont les point de contrôle sont compris dans le polygones de contrôle (sur la figure ci-dessus, les points de contrôle des courbes de Bézier sont représenté par les extrémités des ligne en gras pointillé). Si on note c le coéfficient en B, alors P' est tel que le vecteurr PP' est c fois le vecteur PB. De même, le point A' est tel que le vecteur AA' est c fois le vecteur AB.

5.3 Utiliser l’outil « Éditer les points de Bézier » pour ajouter, enlever et éditer des points

Il y a un outil spécialement dédié pour ajouter et enlever des points à des/de courbes de Bézier et des polygones lisses, et également à des parallélogrammes et des ellipses en les convertissant en chaînes de courbes de Bézier à la volée. Il est accessible par l’icone Bouton éditer les points
de Bézier de la palette d’outils de dessin ou par le menu Outils (voir aussi le panneau Outils). À tout instant, un clic-droit vous ramène au mode standard de SELECTION [Bouton outil séléction].

Sélectionner l’élément cible : Une fois que l’outil a été activé dans la palette d’outil, la première étape doit être de sélectionner un unique objet cible, par exemple un polygone lisse ou une courbe de Bézier extensible. Si la cible est un parallélogramme ou une ellipse, elle est convertie en une chaîne de courbes de Bézier à la volée (ceci peut être annullé en invoquant Défaire dans le menu Édition).

Sélectionner le points : avant d’enlever des points, vous devez sélectionner ceux que vous désirer enlever. Il suffit de cliquer sur chacun des points à sélectionner pour être enlever ; maintenir le modificateur Maj permet d’étendre/réduire la sélection. Alternativement, vous pouvez entourer d’un lasso l’ensemble des points à sélectionner, en faisant glisser la souris de sorte à ouvrir une zone rectangulaire de sélection (le lasso). Les points sélectionnés sont mis en vedette en bleu.

Enlever des points: Il suffit de cliquer sur l’un quelconque des points sélectionnés comme ci-dessus (le pointeur de la souris apparaît alors comme un signe moins). En ce qui concerne les chaînes de courbes de Bézier, enlever un point qui contrôle une tangente rend rectiligne le segment correspondant, alors qu’enlever le point de subdivision à la jonction de deux courbes de Bézier enlève ce point ainsi que les deux points de contrôle de tangentes qui lui sont associés.

Ajouter des points: Maintenez le modificateur Ctrl alors que la souris survole segment (qu’il soit courbe ou rectiligne), puis cliquer pour ajouter un nouveau point de subdivision. En cliquant-glissant (c’est à dire en maintenant le bouton gauche) vous pouvez ajouter l’un des/les point(s) de contrôle des tangentes au point ou vous relâchez de la souris. Après avoir relâcher la souris, il vous est possible d’éditer les points de contrôle de tangente, si vous le desirez. Pour les polygones lisse, vous devez cliquer lorsque la souris survole un segment du polygone de contrôle, et non la courbe elle-même.

Ajuster les coefficients d’un polygone lisse: Pour chaque point du polyogone controlant la courbe, il y a un coefficient représentatif de la proximité entre la courbe et le polygone (en savoir plus). Pour éditer ces coefficients, sélectionner les points dont vous désirer modifier le coefficient, puis maintenir les modificateurs Ctrl+Alt, survolez de la souris l’un des points sélectionné (son pointeur prend alors l’apparence d’un flèche nord-sud), et faites glisser la souris vers le haut, ou vers le bas. Ceci augmente (resp. réduit) les coefficients en proportion du déplacement de la souris. Notez que l’outil ne fonctionne que si au moins un point est sélectionné!


Up: Top   [Contents]

6 Zones Convexes

La fonction “zones convexes” est expérimentale, la documentation ci-après est parfois incomplète ou inexacte

Les Zones convexes ne sont pas des éléments du dessin, mais ce sont des objets faisant partie d’un ensemble d’outils utilisés pour modifier des éléments de dessin et pour lesquels un préalable est de se limiter aux points de contrôles compris ou à la partie du dessin comprise dans une zone déterminée par l’union de zones convexes. Par exemple, les zones convexes peuvent être utilisées pour déplacer certains des points de contrôle d’un élement de dessin, ou pour rogner un élément de dessin.

Les zones convexes peuvent être définies pour chaque dessin séparément, toutefois elle ne font pas partie du document dessin, et en tant que telles, elles sont perdues lorsque vous fermer une planche à dessin.

En ce qui concerne les courbes extensibles de Bézier, une alternative plus simple mais moins puissance aux zones convexes, lorsque vous désirez agir sur plusieurs points de contrôle à la fois, est d’utiliser le mode d’édition GLOBAL/LOCAL (Voir Mode d’édition de point Global/local).

Les zones convexes ne sont visibles et ne peuvent être utilisées que lorsque la palette « Zones convexes » est visible, et elles sont cachées sinon. Pour utiliser des zones convexes, commencer par rendre la palette de zones convexes visible en cliquant sur le bouton Icon tool ToggleConvexZonePanel de la barre d’outils principale).

Une zone convexe est définie comme l’intersection d’un ou plusieurs demi-plan, chaque demi-plan étant à son tour défini par deux points de contrôle :

  1. Un point P1 sur la ligne de bordure.
  2. Un point P2 tel que la ligne de bordure est orthogonale au vecteur P1 P2 et que le demi-plan contient P2.

Chaque demi-plan qui compose une zone convexe est visualisé avec la ligne de bordure et avec un signe demi-plan comme cela:

Icône Outil convexzoneSign

La bordure de la zone convexe est visualisée en bleu. Lorsque la zone convexe est sélectionnée, le premier et le second point de contrôle sont visualisés comme le signe demi-plan et comme un petit de couleur magenta comme cela:

Icône Outil convexzoneHighlighted

Lorsque la zone convexe n’est pas sélectionnée, seule le signe demi-plan est visible, et il est visualisé en couleur grise.

Lorsque vous éditez des zones convexes, il ya certaines choses que jPicEdt vous empèche de faire :

Panel ConvexzonePanelDraw

Chaque bouton peut afficher un conseil d’usage si la souris le survole plus de deux secondes.

6.1 Sélection d’une zone convexe

La sélection zone convexe est possible avec l’outil de sélection de convexe-zone (Voir Selectionner une zone Convexe). La sélection de zone convexe et la sélection (d’éléments de dessin) sont deux sélections différentes.

Les commandes de menu, ou les raccourcis clavier tel(le)s que Tout sélectionner, Supprimer, F2 et les actions similaires dépendant de la sélection, peuvent agir soit sur la sélection d’éléments de dessin, soit sur la sélection de zones convexes, mais jamais sur les deux à la fois.

La règle suivante est suivie :

Une alternative à l’outil de "sélection de zone convexe" est d’utiliser les mêmes raccourcis clavier avec le préfixe Ctrl-U. Par exemple la sequence Ctrl-U Ctrl-C copie une zone convexe, la sequence Ctrl-U Ctrl-X la coupe, la séquence Ctrl-U Ctrl-V la colle, la séquence Ctrl-U Ctrl-A sélectionne toutes les zones convexes, etc. … la séquence Ctrl-U Ctrl-G n’a pas d’effet, elle permet de relâcher le préfixe Ctrl-U précédent.

6.2 Édition de zone convexe

Lorsque  l’outil de sélection de zone convexe Icône outil sélection de zone
convexe est actif vous pouvez éditer les zones convexes de la manière suivante :

Lorsque l’outil de sélection de zone convexe Icône outil édition de zone
convexe est actif vous pouvez ajouter ou enlever des demi-plans d’une zone convexe de la manière suivantes :

6.3 Négation d’une zone convexe

Si vous sélectionnez une zone convexe et ensuite cliquez-doit et choisissez Négation dans le menu contextuel, la zone convexe, qui est une intersection de demi-plans, est transformée en l’union des demi-plans complémentaires.

La négation est applicable à une selection de plusieurs zones convexes, de sorte qu’elle est réversible par une seconde négation. En d’autres termes, effectuer deux fois d’affilée n’a quasiment aucun effet ; quasiment seulement, car si pendant la première négation des zones convexes vides sont crées, alors celles-ci sont supprimées. Par exemple si vous sélectionnez deux zones convexes, et que la première contient la seconde, alors deux négations d’affilée ont l’effet de supprimer la seconde, c’est à dire la plus interne des deux.

6.4 Outils des zones convexes

Lorsque vous utilisez l’un quelconque des outils d’édition de zone convexe, vous pouvez revenir n’importe quand à l’outil sandard de SÉLECTION de zone convexe ( Icon
Convexzone Select), par un seul clic droit.

Ci-après on décrit l’ensemble des outils disponibles pour les zones convexes en regard de leur icônes sur la palette « Zones convexes ». Certain des outils pour zone convexe supportent un ensemble de fonctions alternatives : celles-ci sont déclenchées par une combinaison spécifique de modificateurs (Ctrl+Maj, Ctrl+Alt ou Ctrl+Alt+Maj, comme indiqué), et vous permettent de relâcher ou de renforcer une ou plusieurs contraintes géométriques (les mêmes combinaisons sont utilisées dans le mode SÉLECTION, à ceci près que le modificateur Ctrl ne veut rien dire dans ce cas). Vous pouvez appuyer ou relâcher les touches des modificateurs n’importe quand pendant la séquence de de création/modification de zone convexe en cours.

6.4.1 Le panneau des outils pour zones convexes

IcôneOutilNombre de points de contrôleSéquence à suivreFonctions alternatives
Icon Convexzone SelectSélection de zone convexeN/ACliquez sur l’une quelconque des bordures de demi-plan, ou sur l’un quelconque des signes de demi-plan, pour sélectionner l’ensemble de la zone zone convexe correspondante. (Voir Sélection zone convexe selection pour plus de détails).Maj : la même séquence que celle utilisée pour sélectionner une zone convexe peut être utilisée pour la déselectionner, ou pour ajouter une autre zone convexe à la sélection de zones convexes
Icon Convexzone EditÉdition de zone convexeN/ACliquez sur l’une quelconque des bordures de demi-plan, ou sur l’un quelconque des signes de demi-plan, pour sélectionner l’ensemble de la zone zone convexe correspondante. Enlever de la zone convexe l’un quelconque des demi-plans en cliquant sur le signe de demi-plan, ou la bordure du demi-plan à enlever. (Voir Édition de zone convexe pour de plus amples détails).Avec le modificateur Ctrl vous pouvez ajouter un demi-plan à la zone convexe sélectionnée en entrant la séquence de ses deux points de contrôle.
Icon Convexzone RectangleZone convexe rectangulaire2Premier coin, coin opposé. Les côtés sont maintenus parallèles aux axes de la grille.Ctrl : punaise le centre du rectangle sur la position du premier point.
Ctrl+Alt : relâche la constrainte sur les côtés. Maintenez ce modificateur dès que vous désirez changer l’orientation des côtés, puis relâchez le et déplacez la souris pour réduire/dilater le rectangle.
Maj : Une négation est appliqué sur le rectangle. (Voir Négation).
Ctrl+Maj : punaise le centre et applique une négation.
Ctrl+Alt+Maj : relâche la contrainte sur l’orientation des côté et applique une négation.
Icon Convexzone ExtensibleZone convexe extensibleVariablePremier point de contrôle du premier demi-plan, second point de contrôle du premier demi-plan, premier point de contrôle du second demi-plan, et ainsi de suite. Terminez par un clic-droit.N/A
Icon Convexzone BandShapeZone convexe en forme de bande2Premier côté, Second côté. Les côtés sont maintenus parallèles aux axes de la grille. La direction de la bande est orthogonale à la ligne passant par les premier et second points.Ctrl : punaise la centre de la bande sur la position du premier point.
Ctrl+Alt : relâche la contrainte sur les côtés parallèles aux axes de la grilles.
Maj : applique une négation (voir Négation)
Ctrl+Maj : punaise le centre et applique une négation.
Ctrl+Alt+Maj : relâche la contrainte sur l’orientation des côtés et applique une négation.
Icon Convexzone UShapeZone convexe en forme de U3Premier coin, Second coin, Sommet du U. Les côtés sont maintenus parallèles aux axes de la grille.Ctrl : punaise la centre du côté du bas du U à la position du premier point.
Ctrl+Alt : relâche la contrainte sur les côtés parallèles aux axes de la grille.
Maj : applique une négation (voir Négation)
Ctrl+Maj : punaise le centre et applique une négation.
Ctrl+Alt+Maj : relâche la contraint sur l’orientation des côtés et applique une négation.
Icon Convexzone HalfPlaneZone convexe demi-plan2Premier point de contrôle. Second point de contrôle. Les côtés sont maintenus parallèles aux axes de la grille.Ctrl+Alt : relâche la contrainte sur les côtés parallèles aux axes de la grille. Maintenez ce modificateur dès que vous désirez changer l’orientation des côtés, puis relâchez le et déplacez la souris pour changer l’orientation du demi-plan.
Maj : applique une négation (voir Négation)
Ctrl+Alt+Maj : relâche la contrainte sur l’orientation des côtés et applique une négation.
Icon Convexzone CzDrawingTranslateTranslater tous les points de contrôle d’éléments de dessin, les points de contrôle à translater étant compris dans la zone convexe sélectionnée.N/ACliquer sur l’une des zones convexes (en cliquant sur sa bordure, ou sur l’un de ses points de contrôle), et faire glisser à la souris, c’est à dire maintenez le bouton de clic enfoncé en déplaçant la souris. Tous les points de contrôle d’élément de dessin qui sont compris dans la zone convexe considérée zone sont translatée en conséquence ainsi que la zone convexe considérée. Notez que les points de contrôle d’une courbe extensible de Bézier qui ne sont pas des points de subdivision sont translaté en même temps que les points de subdivision correspondant qui sont compris dans la zone convexe sélectionnée.Avec le modificateur Ctrl, toutes les zones convexes sélectionnées, au lieu de seulement celle que vous faite glisser sont utilisées pour la translation.
Avec le modificateur Ctrl+Alt toute les zones convexes définies sont considérées.
Icône Convexzone Rôgnage DessinRogner les éléments de dessinN/AL’intersection de l’union de toutes les zones convexes définies, et de tous les éléments de dessin sélectionnés est effacée. Ceci peut impliquer la conversion d’élément de dessin de certains types (par exemple des rectangles) en courbes extensibles de BézierN/A
Icône Convexzone
Utiliser la sélectionUtiliser la sélection de zone(s) convexe(s)N/AEn basculant ce bouton entre actif et inactif vous pouvez decider du comportement d’action dépendant de la sélection telles que par exemple "Couper&Coller", ou "Tout Sélectionner", à savoir si ces actions portent sur la sélection d’éléments de dessin, ou sur la sélection de zones convexes. (Voir Utiliser la sélection de zones convexes pour plus amples détails)N/A

Pour toutes les zones convexes, lorsque l’outil "Sélection de zones convexes" est dans l’état actif, en appuyant sur le bouton F2 vous ouvrez un panneau de propriétés pour la première zone convexe de la sélection de zones convexes. Ceci en particulier vous permet d’éditer à la main les coordonnées des points de contrôle, ou de changer l’ange du vecteur P1 P2 par rapport à l’horizontal à la main.


Up: Top   [Contents]

7 Menus et barres d’outils

7.1 La barre d’outils Grille-zoom

Barre Grille/Zoom

La grille de dessin et celle d’aimantation sont graduées en mm, et leur pas peut être réglé indépendamment. Le facteur de zoom est en pourcents : vous pouvez aussi saisir votre propre valeur, elle sera enregistré dans la liste déroulante le temps de la session. Le bouton Bouton centrage (0,0) dans le coin en haut à gauche déplace les ascenseurs de sorte que le point (0,0) se trouve au centre du panneau à défilement de la toile à dessin (ceci est particulièrement utile pour de grands facteurs de zoom).

7.2 Panneau d’outils

palette d’outils de dessin

Note : les outils de dessin (c’est à dire les icones grisées de l’image ci-dessus) sont décrites en details dans la rubrique Dessiner des objets.

Outil séléctionMode de sélectionMode de sélection et d’édition : voir la rubrique Éditer des objets pour plus de détail.

Note importante : dans tous les autres mode/outil, y compris les outils de dessin, un CLIC-DROIT effectué alors que vous n’être pas au cours dúne procédure d’édition vous ramène au à ce mode de SÉLECTION. Par exemple pour un outils de dessin ceci signifie que le clic droit a cet effet chaque fois que vous venez de complété le dessin d’un objet.

Outil zoomMode de zoomCliquer pour zoomer ; avec le modificateur Maj un clic permet de dézoomer
outil éditer les points de BézierÉditer les points de BézierCet outil est principalement dédie à l’ajout/la suppression de points à des/de chaînes de courbes de Bézier, polygones et polygones lisse, ainsi qu’à des/d’ellipses et des parallelogrammes (en les convertissant en chaîne de courbes de Bézier à la volée). Il permet en outre, de modifier les coefficients de lissage des polygones lisses. Voir la rubrique Éditer les points de Bézier pour plus amples details.
Outil de translationOutil de translationTranslate une selection d’un vecteur donné. Cliquez sans relâcher pour définir le premier point du vecteur, puis faites glisser pour définir le second point et translater la sélection entière.
Outil de dilatationOutil de dilatationdilate/contracte la sélection d’un coefficient donné, simultannement selon l’axe des x et celui des y. Cliquer-gauche pour définir le point invariant, puis faites glisser la souris pour définir un rectangle (bleu) permettant de visualiser les proportions d’origine, puis, après avoir relâché, déplacer la souris pour dilater/contracter (un rectangle rouge est affiché pour vous permettre de visualiser la dilatation selon l’axe des x et celui des y).
Outil de rotationOutil de rotationEffectue une rotation sur la selection par un angle donné. cliquer-gauche sans relâcher pour definir le point invariant, puis faites glisser la souris pour définir l’extrémité d’un vecteur (bleu) permettant de visualiser l’angle d’origine (relativement auquel l’angle de rotation est mesuré), finalement, après avoir relâché, déplacez la souris pour changer l’angle de rotation.
Outil bascule mode d’édition de point Global/localMode d’édition de point Global/localFaire basculer ce bouton entre actif et inactif vous permet de commuter entre le mode d’édition de points GLOBAL (combinant dans l’outil de sélection les possibilités des outils de translation et de dilatation) et le mode d’édition de points LOCAL (pour l’édition point par point), que ce soit pour éditer une sélection d’un ou de plusieurs objets.

Dans le mode GLOBAL, la sélection est mise en vedette par un unique rectangle (en trait rouge), ce qui vous permet de déplacer et de dilater le contenu de toute la sélection comme un tout.

Dans le mode LOCAL, chaque element de la sélection est mise en vedette séparément en affichant ses points de contrôle comme des petits carrés verts ; ceci vous permet d’éditer chaque élément séparément sans avoir à désunir la sélection.

Même lorsque un élément unique est sélectionné, basculer entre ces deux modes est également utile : pour les courbes de Bézier, par exemple, le mode GLOBAL vous permet de dilater/contracter la courbe dans sont ensemble, alors que le mode LOCAL permet d’éditer les point de subdivision et de contrôle de tangentes.

Notez, cependant, que vous pouvez tout aussi bien vous en tenir au mode LOCAL et ne jamais utiliser le mode GLOBAL, mais utiliser à la place les outils de translation et de dilatation pour affecter la sélection gloablement. Ceci est plus une question de goût personnel dans la mesure ou les deux approches mènent au même résultat, malgré une interface utilisateur légèrement différente.

7.3 Menus

Certains des articles de menu suivants sont également disponibles comme des outils de la barre d’outils principale.

Menu Fichier
NouveauCréer une nouvelle feuille de dessin.
Ouvrir…Charge un fichier à partir du disque.
RechargerRecharge le dessins courant à partir du fichier associé sur le disque.
Enregistrer…Sauvegarde le dessin courant dans son fichier associé en utilisant l’un des formats de sauvegarde supporté (LaTeX, epic or PSTricks), selon le type de contenu courant ; les répertoires par défaut peuvent être spécifié dans le panneau de préferences. Lors de la première sauvegarde d’un nouveau dessin, le fichier associé est crée.
Enregistrer sous…Vous permet d’enregister le dessin courant dans un autre fichier (avec un autre nom).
Tout enregistrerSauvegarde toutes les feuille de dessin qui sont ouvertes.
Enregistrer la sélection…vous permet de sauvegarder seulement les partie sélectionnées (c’est à dire mises en vedette comme telles) de votre dessin ; ceci est utile pour créer des fragments ; le répertoire utilisateur des fragment est automatiquement sélectionné dans la fenêtre d’exploration de fichiers, mais vous pouvez sauvegader votre fragment à un autre endroit…
Insérer un fragment…Insère un fragment pré-enregistré dans la feuille de dessin active (la fenêtre interne la plus au-dessus), en le plaçant dans le coin inférieur-gauche de la feuille ; par défaut, la fenêtre d’exploration de fichier pointe sur le répertoire utilisateur de fragments, mais vous pouvez bien sûr insérer des fragment depuis d’autres endroits… Voir aussi le menu Fragment ci-après.
Fichiers récentsCe menu mutable (se mettant à jour automatiquement) garde la trace des quatre derniers fichiers lu ou modifiés, et vous permet de retrouver rapidement l’un d’eux.
FermerFerme la feuille de dessin active.
QuitterVous demande de sauvegarder les feuilles de dessin ouvertes et modifiées, puis sort de jPicEdt.
Menu Éditer
Défaire/RefaireDéfait/refait la dernière modification (le nombre de modifications que l’on peut défaire est spécifié dans le panneau de préférence).
CouperCoupe la sélection courante et l’envoie dans le presse-papier.
CopierCopie la sélection courante dans le presse-papier.
CollerColle le contenu du presse-papier graphique de jPicEdt sur la planche à dessin, et le sélectionne. La position des objets collés est à proximité des objets d’origine.
Collage spécialColler le contenu du presse-papier système en essayant de l’analyser. Par exemple, vous pouvez d’abord copier du code LaTeX vers le presse-papier système à partir de vorte éditeur favoris de LaTeX, puis le coller dans jPicEdt avec Collage spécial. Ceci peut évidemment provoquer des erreurs d’analyse si jPicEdt ne reconnait pas la syntaxe du contenu du texte collé.

Sous Linux, utiliser xclipboard pour copier un extrait de texte vers le presse-papier principal… Si cependant votre éditeur est jEdit, le transfert direct de données avec jPicEdt fonctionne sans problème.

Tout sélectionnerSélectionne tous les objets de la planche à dessin.
Format de feuille…définit le format de feuille pour la planche à dessin courante, s’il y en a une. Si aucune planche à dessin n’est ouverte, définit le format de feuille par défaut pour toute nouvelle planche (ce qui revient au même que de définir le format de feuille à partir du panneau Préférences…).
Format…Définit le type de contenu de la planche à dessin courante, s’il y en a une. Ceci défnit le formatteru utiliser pour encoder le dessin courant en LaTeX (c’est à dire si on utiliser l’environnement LaTeX picture de base, epic ou PSTricks), et ceci affecte églament la façon dont les élément sont affichés (par exemple, la couleur n’est supporté ni par LaTeX picture de base ni par Eepic, le remplissage des ellipses n’est pas supporté par LaTeX picture de base, …). Voir Import, Export et sauvegarde pour de plus amples détails.
Préférences…Ouvre le panneau à onglets “Préférences…”. Voir Spécifier vos préférences.
Menu Outils
Voir Déssiner des objets et Éditer des objets pour une description plus détaillées des outils disponibles dans ce menu.
Menu Commandes
LaTeXexécute LaTeX sur le dessin courant ; pour résumer : jPicEdt crée à la volée un fichier temporaire dans le répertoire temporaire de la plateforme (ce répertoire est défini à l’installation et peut être changé à partir de l’onglet Répertoires du panneau de préférences, c’est par exemple /tmp sous Unix et MacOS-X, c:\windows\temp under Win9x,…). Le fichier temporaire est encondé selon le type de contenu courant et contient tout le nécessaire (voir comment spécifier le prologue et l’épilogue à partir du panneau de Préférences). jPicEdt exécute ensuit LaTeX sur le fichier temporaire.

Contrairement aux parutions (NdT. release) précédentes de jPicEdt il n’est plus nécessaire de sauvegarder le dessin avant d’executer une commande externe LaTeX/DVI/etc. …

DVIMême chose que pour LaTeX, mais exécute une visionneuse DVI sur le fichier .dvi correspondant au fihcier temporaire (ce qui suppose que vous ayez exécuté avec succès préalablement LaTeX).
DvipsLance le programme Divps référencé.
GhostviewLance le programme Ghostview référencé.
Nota beneLe chemin des programmes externes ainsi que la syntaxe de la ligne de commande d’appel est spécifié dans le panneau de préférences. Voir Spécicifier les commandes externes pour plus amples détails.
Menu Fragments
Liste de fragmentsSelon les fragments trouvé dans le répertoire fragment jPicEdt et dans le répertoire fragments utilisateur, vous voyez zéro, un plus d’articles ici. Cliquer sur l’un d’eux pour insérer le fragment correspondant. Le répertoire fragment utilisateur est le sous-répertoire fragment du répertoire des données utilisateur d’application (par exemple : /home/user/.jpicedt/fragments sous Unix).
Actualiser la listeRafraîchit la liste des fragments.
Menu Scripts
Console BSH…Ouvre une console BSH pour s’interfacer à la volée avec jPicEdt, ou pour déverminer vos scripts. Voir Scriptage pour plus amples details.
Liste de scriptsSelon les scripts installés dans le répertoire des scripts jPicEdt dans le répertoire des scripts utilisateur, vous voyez zéro, un plus d’articles ici. Cliquer sur l’un d’eux pour lancer le script correspondant.
Actualiser la listeRafraîchit la liste des scripts installés dans les répertoires de scripts.
Menu Fenêtres
CascaderCascade toutes les fenêtre internes.
Mosaïque horizontalePave les fenêtres horizontalement, en créant autant de nouvelles rangées que nécessaire.
Mosaïque verticalePave les fenêtres verticalement, en créant autant de nouvelles colonnes que nécessaire.
Éditeur d’attributsBascule entre rendre visible ou invisible le panneau flottant « Éditeur d’attributs ». Ceci peut-être utiles sur les PC portables, car cette palette occupe une quantité d’écran importante ;-).
Boîte à outilsBascule entre rendre visible ou invisible le panneau flottant « Outils ».
Voir/masquer les outils zones convexesBascule entre rendre visible ou invisible le panneau flottant « Zones Convexes ».
Liste de fenêtresLe menu Fenêtres maintient également une liste des feuilles de dessin ouvertes, de sorte que vous puissiez rapidement passer le l’une à l’autre (Note : il se peut que les raccourcis clavier ne fonctionnent pas convenablement sur les plateformes Linux et MacOS).

Up: Top   [Contents]

8 Spécifier vos préférences

8.1 Général

8.2 Les onglets LaTeX, eepic et PSTricks

Ces onglets vous permettent de spécifier divers paramètres propres à un paquetage. Une chose est commune à tous ces onglets, c’est la configuration de textes de prologues/épilogues à utiliser lorsque vous lancez LaTeX depuis jPicEdt comme commande externe sur le dessin courant (celui correspondant à la fenêtre interne dont la visibilité est accentuée). Voir aussi le Menu Commandes.

Ces textes sont respectivement ajoutés au début et à la fin du texte généré par le formatteur (c’est à dire le texte délimité par \begin{picture} et \end{picture} par exemple pour le format LaTeX environnement picture de base). De la sorte, le texte résultant est un fichier LaTeX « autonome », et peut directement être compilé par LaTeX. Les prologue/épilogue définis par défaut à l’installation incluent juste les paquetages nécessaires, mais vous pouvez y ajouter vos propres définitions de macros, de sorte à ce que le contenu des éléments texte du dessin (PicText) qui utilisent vos macros soient correctement compilés.

8.2.1 Échelle des dessins

8.2.1.1 Dilater/Contracter un dessin d’un facteur donné

Par défaut l’unité de longueur est définie à 1 mm dans le fichier sauvegardé. La définition se trouve au début de la partie au format d’export (juste après la partie en JPIC-XML enfoui). Toutefois, il est souvent commode de changer l’unité de sorte à changer l’échelle de la figure. Il y a une méthode commode pour faire cela depuis le fichier LaTeX principal en définissant la macro \JPicScale. Voici un exemple contractant la figure à 80% :

\def\JPicScale{0.8}
\input{figure.tex}

On peut alternativement utiliser \newcommand*{\JPicScale}{0.8} ou \renewcommand*{\JPicScale}{0.8} selon que \JPicScale est déjà défini ou non (l’utilisation de la primitive TeX \def vous permet de ne pas vous soucier de cela, en prenant le risque raisonnable de penser que vous n’incluez aucun paquetage d’extension dont l’auteur aurait eu l’idée saugrenue d’utiliser le même nom \JPicScale pour une de ses macros).

8.2.1.2 Changer l’unité de dessin

Pour changer l’unité de dessin de 1mm à par exemple 1point, insérer le code suivant avant le dessin :

\def\JPicScale#1#2{1pt}
\input{figure.tex}

Les deux arguments #1#2 de \JPicScale ne sont là que pour gober l’unité mm utilisée par défaut.

8.2.1.3 Dilater/Contracter un dessin pour fixer sa largeur

Si vous désirez que, disons, 160 unités sur la figure correspondent à une largeur de \textwidth insérer le code suivant avant la figure :

\def\JPicScale#1#2{0.00625\textwidth}
\input{figure.tex}

Le principe est le même que pour un changement d’unité : 0.00625 est l’inverse de 160, c’est à dire la largeur en unités de dessin que vous voulez ajuster à \textwidth.

8.2.1.4 Problèmes de boîte bornante

Souvenez vous également que jPicEdt n’embarque aucun compilateur LaTeX. Par conséquent, si vous placez un élément textuel (PicText) qui est aligné à gauche sur le bord droit de la figure, le contenu du texte s’étendra au delà de la boîte bornante calculée par jPicEdt et sur laquel LaTeX se base pour centrer la figure. La figure peut alors être mal centrée.
Une technique simple pour prendre en compte la place nécessaire à cet élément textuel est de placer un autre élément textuelaligné à droite et ne contenant qu’un espace blanc ("\ ") sur le bord droit que vous désirez avoir. Le même truc peut être utilisé pour le bord gauche, le bord du haut et celui du bas, comme illustré ci-dessous :

Boîte bornante définie manuellement

Voir aussi Éditer la boîte bornante.

8.2.2 Paramètres spécifiques à l’environnement LaTeX picture de base

L’environnement LaTeX picture ne permet qu’un nombre restreint de pentes de ligne ; en mode émulé, jPicEdt utilise la commande \multiput pour émuler n’importe quelle pente en utilisant un ensemble de petits segments horizontaux et verticaux. Par conséquent, des lignes de toutes épaisseurs peuvent maintenant être dessinées (pour information, la commande \thickness ne marche pas avec les lignes inclinées standard).

8.2.3 Paquetage eepic

8.2.4 Paquetage PSTricks

8.2.4.1 Paquetage PSTricks exportation & correction d’angle des arcs d’ellipse

Lorsque on dessine des arcs d’ellipse alors les extrêmités de l’arc sont définies par des angles, selon la version de PSTricks ces angles sont interprétés différemment — voir pst-news10.pdf:

jPicEdt permet de gérer cette évolution de la façon suivante :

8.2.4.2 Nommage des couleurs prédéfinies pour les paquetages PSTricks et TikZ

Les couleurs sont stockées dans les objets graphiques sous forme de coordonnées RGB. Les préférences définissent par ailleurs une palette de couleurs prédéfinies préférée pour chacune des trois alternatives suivantes :

En ce qui concerne la génération de code LaTeX — PSTricks ou TikZjPicEdt vérifie si la couleur fait partie de la palette de couleur prédéfinie préférée, et :

La conséquence de ceci est que pour assurer que le code LaTeX généré compile il peut être nécessaire d’utiliser le paquetage xcolor, voire de lui passer les bonnes options :

Dans le cas maintenant de l’importation de code PSTricksjPicEdt ne prend pas en charge l’importation de code pour TikZ TikZ — la palette sélectionnée permet de savoir comment on été nommées les coleurs dans le dessin analysé. Cette précision est nécessaire car il se peut que le même nom existe dans deux palettes, mais avec des significations légèrement différentes.

8.3 Commandes externes

8.3.1 Comment ça marche ?

Lorsque vous exécuter LaTeX/DVI/… depuis jPicEdt, un fichier LaTeX est créé à la volée par jPicEdt dans le répertoire standard des fichiers temporaires selon le système d’exploitation que vous utilisez (par exemple c:\Document and Settings\utilisateur\Local Settings\Temp), ou un autre répertoire temp si vous avez décidé d’en configurer un (voir le panneau Répertoires). Il y a tellement de systèmes d’exploitation et de distributions de LaTeX que cela a rendu impossible de concevoir une méthode pour lancer des commandes externes sans s’appuyer sur des scripts système (c’est à dire des scripts .bat en MSDOS, ou .vbs en VisualBasicScript, ou des AppleScript sur MacOS).

Ainsi la meilleure approche (selon nous) est d’utiliser un script système qui appelera les programmes adéquats (latex, dviwin32.exe/xdvi,…). Vous pouvez passer les arguments à ces scripts en utilisant les symboles prédéfinis {p}, {f} et {i}.

Pour une liste complète des autres clefs {x} voir la documentation de la classe jpicedt.ui.util.CommandLineBuilder dans la doc API.

Voici un exemple d’un script système pour le shell Bash de Linux :

#!/bin/sh
cd $1
$2 $3

Supposez que ce script est sauvegardé dans un fichier nommé ext_proc dans un sous-répertoire add-ons de votre répertoire .jpicedt, alors la ligne de commande à faire apparaître sous l’onglet « Commandes » dans le panneau de préférences doit être la suivante :

{u}/.jpicedt/macros/ext_proc {p} latex {f}

(où vous pouvez remplacer "latex" par tout nom de commande plus approprié (par ex. xdvi, kghostview, kdvi, …).

Ceci sera développé, une fois que les ‘{p}’ et ‘{f}’ auront été remplacés, en :

/home/votre_id/.jpicedt/macros/ext_procext_proc /tmp latex jpicedt46858

/home/votre_id est votre répertoire domicile. Ceci finalement revient à faire :

cd /tmp
latex jpicedt46858

(latex accepte un nom de fichier sans extension sur la ligne de commande, sinon ajouter .tex à la main dans votre script).

8.3.2 Charger les configurations prédéfinies

Actuellemment il y a des scripts disponibles pour les distributions de LaTeX suivantes :

Ces scripts sont résidents dans le sous-répertoire add-ons du répertoire d’installation de jPicEdt (il est nécessaire que vous ayez installé le paquet add-ons pendant l’installation de jPicEdt).

Pour charger un fichier de configuration prédéfinie, aller au panneau Préférences/onglet Commandes, appuyer sur le bouton Charger (Chargement fichier de configuration), et naviguer dans l’arbre de répertoires jusqu’à trouver un fichier .properties dont le nom correspond à votre distribution de LaTeX.

8.4 Raccourcis

Le panneau Raccourcis vous permet de modifier les définitions de raccourcis clavier pour chaque article de menu (y compris les outils de la palette d’outils de dessin). Pour ajouter, modifier ou supprimer un raccourci, double-cliquer sur la cellule correspondante dans la colonne de droite, taper directement le raccourci, puis cliquer OK. Pour supprimer un raccourci, cliquer sur la gomme.

8.5 Format de feuille…

Le panneau Format de feuille… vous permet de définir le format de feuille par défaut lorsque vous créez un nouveau dessin ex-nihilo (ceci n’a pas d’effet sur les dessins chargés à partir du disque).

8.6 Menus contextuels

Un clic-droit sur un objet déplie le menu contextuel qui vous donne accès à diverse opération concernant cet objet, par exemple sa conversion en un autre type de forme, grouper/dégrouper, etc.

La figure ci-dessous illustee un menu contextuel typique pour une courbe extensible de Bézier. Ce menu est également affiché pour les objets suivants:

Menu contextuel: ligne

Il y a quatre autres menus contextuels, qui apparaissent dans la table ci-dessous accompagnés des objets auxquels ils sont associés.

Menu contextuel: Polygone
  • Polygone lisse
  • Polygone lisse fermé
Menu contextuel: courbe d’interpolation
  • Courbe d’interpolation
  • Courbe d’intrerpolation fermée
Menu contextuel: Parallélogramme
  • rectangle
  • parallelogramme
Menu contextuel: Ellipse
  • ellipse
  • coin
  • arc
  • corde
  • ellipse cisaillée
  • coin cisaillé
  • arc cisaillé
  • corde cisaillée

Ces articles ont tous la même signification (selon le contexte et la sélection courante, certains articles peuvent être grisés, c’est à dire, inactifs):

Éditer la géométrie…

Afficher les propriété géométrique de l’objet correspondant dans une fenêtre contextuelle

Fermer le chemin

Transforme la forme en une forme fermée

Convertir en courbe de Bézier

Transforme l’objet en une courbe de Bézier aussi proche que posible de l’objet original

Lisser tous les points

Voir dessiner ou éditer une courbe …

Symétriser tous les points

Voir dessiner ou éditer une courbe …

Transformer en polygone

Voir dessiner ou éditer une courbe …

Transformer en segment

Voir dessiner ou éditer une courbe …

À l’arrière

Puisque les images sont construites séquentiellement, les objets déssinés en dernier peuvent cacher ceux dessinés précédemment (autrement dit, les objets sont dessinés sur la toile dans lorsque croissant de l’axe des z). Cet article vous peremt de déplacer l’objet sélectionner vers la hauteur z la plus basse, rendant ainsi possible à tous les autres objet de le cacher.

Vers l’arrière

déplace l’objet sélectionné d’un cran vers le bas sur l’axe des z, de sorte qu’il puisse être caché par l’objet qu’il suivait précédemment.

Vers l’avant

déplace l’objet sélectionné d’un cran vers le haut sur l’axe des z, de sorte qu’il puisse être superposé à l’objet le suivant précédemment, et le cacher.

À l’avant

Déplace l’objet sélectionner au plus haut sur l’axe des z

Visualiser le fichier LaTeX

Affiche le dessin au format de sauvegarde courant (l’ensemble du dessin, et non pas seulement l’objet sélectionné). Voir aussi Import, Export et sauvegarde.

boîte bornante (éditer)

Cet article permet d’éditer la boîte bornante en vigueur à la main. Il est possibles de saisir les abscisses x (resp. les ordonnées y) minimales et maximales. Ceci est particulièrement utile lorsque des objets (en particulier du texte) dépassent à l’extérieur de la boîte bornante calculée automatiquement. Il est également possible de résoudre ce problème en cadrant le dessin avec des blancs.

8.7 Modifier les attributs

Les attributs graphiques, par ex. l’épaisseur du trait, la couleur de remplissage, etc… peuvent être modifié en sélectionnant les objets visés pour commencer, puis en modifiiant les valeurs des champs dans la palette flottantes “Éditeur d'attributs”. L’ensemble des attribut modifiables est en relation étroite avec les paramètres PSTricks, puisque c’est le paquetage LaTeX offrant la plus large choix de possibilité. Référer vous la documentation de PSTricks pour plus de détails.

Palette d’édition d’attributs

Par conséquent, selon le type de contenu courant, certain attributs n’ont pas d’influence sur l’affichage du dessin, alors qu’ils apparaissent dans l’Éditeur d’attribut. En particuler, le type de contenu l’environnement « LaTeX picture de base» ne supporte qu’un sous-ensemble restreint des attributs disponible dans la palette (par exe. pas de couleur, ni de texture, seulement des flèches simples, pas d’ombre,…). Si vous désirer utiliser l’ensembre de tous les attributs de la palette, y compris les ombres, textures et couleur de remplissage (plus sur le remplissage des formes), ou sur les pointillés à hautes résolution, vous devriez vraiment songer passer au type de contenu PSTricks, et inclure une directive \usepackage{pstricks} dans vos fichier LaTeX. Vous le ne regreterez pas !


Up: preferences   [Contents]

8.8 Remplir des objets graphiques

On peut remplir n’importe quelque objet graphique avec un motif coloré (y compris le motif uniforme) en sélectionnant pour commencer l’objet, et choisissant ensuite le motif approprié dans le panneau à onglet “Remplissage” de l’Éditeur d’attributs.

Les motifs suivant sont disponibles pour le format PSTricks :

Autres trucs et astuces pouvant s’avérer utiles :

  1. Vous pouvez aussi remplir un polygone OUVERT comme celui-ci :
    open polygon

    ce qui donne ceci :
    filled open polygon

  2. Un triangle composé de trois lignes indépnendat n’est pas un polygone fermé, et donc il ne peut pas être rempli tel quel ; le contournement consiste à sélectionner les trois lignes, cliquer-droit pour ouvrir le menu contextuel, et selctionner Joindre les courbes sélectionnées. Alors les trois ligne forment un seul chemin qui peut être rempli comme tout autre chemin.
  3. Une section d’anneau section
d’anneau remplie ne peut pas être rempli de la même façon : dessiner en premier lieu des arc correspondant, ensuite sélectionner les, puis vous pouvez :
  4. Un anneau ring peut être rempli en dessinant deux cercles, en s’assurant que le cercle le plus interne est plus à l’avant que le cercle le plus externe (on peut changer l’ordre en Z en invoquant Vers l'avant ou Vers l'arrière dans le menu contextuel, ou respectivement les touches / ou *), et ensuite en remplissant le cercle le plus externe dans la couleur de votre choix, et finalement le cercle le plus interne en blanc.

Up: Top   [Contents]

9 Utiliser et écrire des scripts BeanShell

jPicEdt supporte maintenant le scriptage (autrement dit les "macros") au travers d’un interpréteur BeanShell incorporable. BeanShell est une extension de Java légère, extensible et incorporable, écrite par Pat Niemeyer (courriel). Elle suit la grammaire de Java (quoique avec une plus grande tolérance aux erreurs de syntaxe ; en particulier elle a la capacité d’un typage faible), ainsi, quiconque baragouine quelque peu en Java peut écrire des scripts BeanShell.

On peut trouver une documentation détaillé de BeanShell à : www.beanshell.org. Ceci dit, examiner les scripts fournis avec jPicEdt est un bon début. Vous aurez aussi besoin de la documentation de l’ API de jPicEdt (au cas où vous ne l’auriez pas encore installé, vous pouvez la re-installer depuis l’installeur jPicEdt), en particulier si vous avez besoin d’écrire des scripts impiquant des operations complexes. La class jpicedt.JPicEdt offre une grande variété de méthodes statiques (par ex. JPicEdt.newBoard() pour créer une nouvelle planche) qui peuvent remplir les besoins de base. Les autres classes importantes sont :

Toutes ces classes sont facilement extensibles, et peuvent aisément se ficher l’une dans l’autre (c’est le fameux schéma Contrôleur-Modèle-Vue …). En outre, les classes jpicedt.JPicEdt et jpicedt.graphic.toolkit.EditorKit contiennent une grande variété d’Actions (implantées comme autant de classes statiques) dont vous pouvez tirer des sous-classes et les ajouter à votre propre interface graphique. Référez-vous à la documentation de jpicedt.graphic.toolkit.PEAction pour savoir ce qu’est une Action et comment vous pouvez l’utiliser dans votre propre code.

Par commodité, quelques variables et methodes ont été prédéfinies, et sont disponibles dès le démarrage de la console BSH, et de celui des scripts exécutés à partir du menu "Scripts". Ce sont :

9.1 OK, où dois-je mettre mes scripts ?

Les scripts de l’utilisateur (vos scripts) doivent être placés dans le sous-répertoire "macros" du répertoire utilisateur des données d’application de jPicEdt (par exemple, /home/user/.jpicedt/macros sous Unix, C:\Documents And Settings\votre_nom\.jpicedt\macros sous MSWindows). Les scripts doivent avoir l’extension .bsh. Les noms dans lesquels il y a des tirets bas (_) seront présentés avec des espaces à la place dans le menu Script (par exemple Multi_Copie.bsh apparaîtra comme "Multi Copie"). Vous pouvez appeler des scripts depuis d’autres script en utilisant la commande BSH source("chemin_de_l_autre_script");, et vous pouvez même ajouter vos propres classes Java en utilisant la commande addClassPath().

Utiliser la console BSH pour tester vos scripts, puis mettez les dans le répertoire indiqué ci-dessus, et ils apparaitront !


Up: Top   [Contents]

10 Liens utiles

Liens vers des outils similaires :


Up: Top   [Contents]

11 Contrat de licence de logiciel libre CeCILL

Avertissement

Ce contrat est une licence de logiciel libre issue d’une concertation entre ses auteurs afin que le respect de deux grands principes préside à sa rédaction :

Les auteurs de la licence CeCILL4 sont :

Commissariat à l’Energie Atomique — CEA, établissement public de recherche à caractère scientifique, technique et industriel, dont le siège est situé 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris.

Centre National de la Recherche Scientifique — CNRS, établissement public à caractère scientifique et technologique, dont le siège est situé 3 rue Michel-Ange, 75794 Paris cedex 16.

Institut National de Recherche en Informatique et en Automatique — INRIA, établissement public à caractère scientifique et technologique, dont le siège est situé Domaine de Voluceau, Rocquencourt, BP 105, 78153 Le Chesnay cedex.

Préambule

Ce contrat est une licence de logiciel libre dont l’objectif est de conférer aux utilisateurs la liberté de modification et de redistribution du logiciel régi par cette licence dans le cadre d’un modèle de diffusion en logiciel libre.

L’exercice de ces libertés est assorti de certains devoirs à la charge des utilisateurs afin de préserver ce statut au cours des redistributions ultérieures.

L’accessibilité au code source et les droits de copie, de modification et de redistribution qui en découlent ont pour contrepartie de n’offrir aux utilisateurs qu’une garantie limitée et de ne faire peser sur l’auteur du logiciel, le titulaire des droits patrimoniaux et les concédants successifs qu’une responsabilité restreinte.

À cet égard l’attention de l’utilisateur est attirée sur les risques associés au chargement, à l’utilisation, à la modification et/ou au développement et à la reproduction du logiciel par l’utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler et qui le réserve donc à des développeurs ou des professionnels avertis possédant des connaissances informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l’adéquation du logiciel à leurs besoins dans des conditions permettant d’assurer la sécurité de leurs systèmes et/ou de leurs données et, plus généralement, à l’utiliser et l’exploiter dans les mêmes conditions de sécurité. Ce contrat peut être reproduit et diffusé librement, sous réserve de le conserver en l’état, sans ajout ni suppression de clauses.

Ce contrat est susceptible de s’appliquer à tout logiciel dont le titulaire des droits patrimoniaux décide de soumettre l’exploitation aux dispositions qu’il contient.

Article 1 — Définitions

Dans ce contrat, les termes suivants, lorsqu’ils seront écrits avec une lettre capitale, auront la signification suivante :

Contrat :
désigne le présent contrat de licence, ses éventuelles versions postérieures et annexes.

Logiciel :
désigne le logiciel sous sa forme de Code Objet et/ou de Code Source et le cas échéant sa documentation, dans leur état au moment de l’acceptation du Contrat par le Licencié.

Logiciel Initial :
désigne le Logiciel sous sa forme de Code Source et éventuellement de Code Objet et le cas échéant sa documentation, dans leur état au moment de leur première diffusion sous les termes du Contrat.

Logiciel Modifié :
désigne le Logiciel modifié par au moins une Contribution.

Code Source :
désigne l’ensemble des instructions et des lignes de programme du Logiciel et auquel l’accès est nécessaire en vue de modifier le Logiciel.

Code Objet :
désigne les fichiers binaires issus de la compilation du Code Source.

Titulaire :
désigne le ou les détenteurs des droits patrimoniaux d’auteur sur le Logiciel Initial.

Licencié :
désigne le ou les utilisateurs du Logiciel ayant accepté le Contrat.

Contributeur :
désigne le Licencié auteur d’au moins une Contribution.

Concédant :
désigne le Titulaire ou toute personne physique ou morale distribuant le Logiciel sous le Contrat.

Contribution :
désigne l’ensemble des modifications, corrections, traductions, adaptations et/ou nouvelles fonctionnalités intégrées dans le Logiciel par tout Contributeur, ainsi que tout Module Interne.

Module :
désigne un ensemble de fichiers sources y compris leur documentation qui permet de réaliser des fonctionnalités ou services supplémentaires à ceux fournis par le Logiciel.

Module Externe :
désigne tout Module, non dérivé du Logiciel, tel que ce Module et le Logiciel s’exécutent dans des espaces d’adressage différents, l’un appelant l’autre au moment de leur exécution.

Module Interne :
désigne tout Module lié au Logiciel de telle sorte qu’ils s’exécutent dans le même espace d’adressage.

GNU GPL :
désigne la GNU General Public License dans sa version 2 ou toute version ultérieure, telle que publiée par Free Software Foundation Inc.

Parties :
désigne collectivement le Licencié et le Concédant.

Ces termes s’entendent au singulier comme au pluriel.

Article 2 — Objet

Le Contrat a pour objet la concession par le Concédant au Licencié d’une licence non exclusive, cessible et mondiale du Logiciel telle que définie ci-après à l’article 5 pour toute la durée de protection des droits portant sur ce Logiciel.

Article 3 — Acceptation

3.1

L’acceptation par le Licencié des termes du Contrat est réputée acquise du fait du premier des faits suivants :

  1. le chargement du Logiciel par tout moyen notamment par téléchargement à partir d’un serveur distant ou par chargement à partir d’un support physique ;
  2. le premier exercice par le Licencié de l’un quelconque des droits concédés par le Contrat.

3.2

Un exemplaire du Contrat, contenant notamment un avertissement relatif aux spécificités du Logiciel, à la restriction de garantie et à la limitation à un usage par des utilisateurs expérimentés a été mis à disposition du Licencié préalablement à son acceptation telle que définie à l’article 3.1 ci dessus et le Licencié reconnaît en avoir pris connaissance.

Article 4 — Entrée en vigueur et durée

4.1 Entrée en vigueur

Le Contrat entre en vigueur à la date de son acceptation par le Licencié telle que définie en 3.1.

4.2 Durée

Le Contrat produira ses effets pendant toute la durée légale de protection des droits patrimoniaux portant sur le Logiciel.

Article 5 — Étendue des droits concédés

Le Concédant concède au Licencié, qui accepte, les droits suivants sur le Logiciel pour toutes destinations et pour la durée du Contrat dans les conditions ci-après détaillées.

Par ailleurs, si le Concédant détient ou venait à détenir un ou plusieurs brevets d’invention protégeant tout ou partie des fonctionnalités du Logiciel ou de ses composants, il s’engage à ne pas opposer les éventuels droits conférés par ces brevets aux Licenciés successifs qui utiliseraient, exploiteraient ou modifieraient le Logiciel. En cas de cession de ces brevets, le Concédant s’engage à faire reprendre les obligations du présent alinéa aux cessionnaires.

5.1 Droit d’utilisation

Le Licencié est autorisé à utiliser le Logiciel, sans restriction quant aux domaines d’application, étant ci-après précisé que cela comporte :

  1. la reproduction permanente ou provisoire du Logiciel en tout ou partie par tout moyen et sous toute forme.
  2. le chargement, l’affichage, l’exécution, ou le stockage du Logiciel sur tout support.
  3. la possibilité d’en observer, d’en étudier, ou d’en tester le fonctionnement afin de déterminer les idées et principes qui sont à la base de n’importe quel élément de ce Logiciel; et ceci, lorsque le Licencié effectue toute opération de chargement, d’affichage, d’exécution, de transmission ou de stockage du Logiciel qu’il est en droit d’effectuer en vertu du Contrat.

5.2 Droit d’apporter des contributions

Le droit d’apporter des Contributions comporte le droit de traduire, d’adapter, d’arranger ou d’apporter toute autre modification au Logiciel et le droit de reproduire le logiciel en résultant.

Le Licencié est autorisé à apporter toute Contribution au Logiciel sous réserve de mentionner, de façon explicite, son nom en tant qu’auteur de cette Contribution et la date de création de celle-ci.

5.3 Droit de distribution

Le droit de distribution comporte notamment le droit de diffuser, de transmettre et de communiquer le Logiciel au public sur tout support et par tout moyen ainsi que le droit de mettre sur le marché à titre onéreux ou gratuit, un ou des exemplaires du Logiciel par tout procédé.

Le Licencié est autorisé à distribuer des copies du Logiciel, modifié ou non, à des tiers dans les conditions ci-après détaillées.

5.3.1 Distribution du logiciel sans modification

Le Licencié est autorisé à distribuer des copies conformes du Logiciel, sous forme de Code Source ou de Code Objet, à condition que cette distribution respecte les dispositions du Contrat dans leur totalité et soit accompagnée :

  1. d’un exemplaire du Contrat,
  2. d’un avertissement relatif à la restriction de garantie et de responsabilité du Concédant telle que prévue aux articles 8 et 9,

et que, dans le cas où seul le Code Objet du Logiciel est redistribué, le Licencié permette aux futurs Licenciés d’accéder facilement au Code Source complet du Logiciel en indiquant les modalités d’accès, étant entendu que le coût additionnel d’acquisition du Code Source ne devra pas excéder le simple coût de transfert des données.

5.3.2 Distribution du logiciel modifié

Lorsque le Licencié apporte une Contribution au Logiciel, les conditions de distribution du Logiciel Modifié en résultant sont alors soumises à l’intégralité des dispositions du Contrat.

Le Licencié est autorisé à distribuer le Logiciel Modifié, sous forme de code source ou de code objet, à condition que cette distribution respecte les dispositions du Contrat dans leur totalité et soit accompagnée :

  1. d’un exemplaire du Contrat,
  2. d’un avertissement relatif à la restriction de garantie et de responsabilité du Concédant telle que prévue aux articles 8 et 9,

et que, dans le cas où seul le code objet du Logiciel Modifié est redistribué, le Licencié permette aux futurs Licenciés d’accéder facilement au code source complet du Logiciel Modifié en indiquant les modalités d’accès, étant entendu que le coût additionnel d’acquisition du code source ne devra pas excéder le simple coût de transfert des données.

5.3.3 Distribution des modules externes

Lorsque le Licencié a développé un Module Externe les conditions du Contrat ne s’appliquent pas à ce Module Externe, qui peut être distribué sous un contrat de licence différent.

5.3.4 Compatibilite avec la licence GNU GPL

Le Licencié peut inclure un code soumis aux dispositions d’une des versions de la licence GNU GPL dans le Logiciel modifié ou non et distribuer l’ensemble sous les conditions de la même version de la licence GNU GPL.

Le Licencié peut inclure le Logiciel modifié ou non dans un code soumis aux dispositions d’une des versions de la licence GNU GPL et distribuer l’ensemble sous les conditions de la même version de la licence GNU GPL.

Article 6 — Propriété intellectuelle

6.1 Sur le logiciel initial

Le Titulaire est détenteur des droits patrimoniaux sur le Logiciel Initial. Toute utilisation du Logiciel Initial est soumise au respect des conditions dans lesquelles le Titulaire a choisi de diffuser son oeuvre et nul autre n’a la faculté de modifier les conditions de diffusion de ce Logiciel Initial.

Le Titulaire s’engage à ce que le Logiciel Initial reste au moins régi par le Contrat et ce, pour la durée visée à l’article 4.2.

6.2 Sur les contributions

Le Licencié qui a développé une Contribution est titulaire sur celle-ci des droits de propriété intellectuelle dans les conditions définies par la législation applicable.

6.3 Sur les modules externes

Le Licencié qui a développé un Module Externe est titulaire sur celui-ci des droits de propriété intellectuelle dans les conditions définies par la législation applicable et reste libre du choix du contrat régissant sa diffusion.

6.4 Dispositions communes

Le Licencié s’engage expressément :

  1. à ne pas supprimer ou modifier de quelque manière que ce soit les mentions de propriété intellectuelle apposées sur le Logiciel;
  2. à reproduire à l’identique lesdites mentions de propriété intellectuelle sur les copies du Logiciel modifié ou non.

Le Licencié s’engage à ne pas porter atteinte, directement ou indirectement, aux droits de propriété intellectuelle du Titulaire et/ou des Contributeurs sur le Logiciel et à prendre, le cas échéant, à l’égard de son personnel toutes les mesures nécessaires pour assurer le respect des dits droits de propriété intellectuelle du Titulaire et/ou des Contributeurs.

Article 7 — Services associés

7.1

Le Contrat n’oblige en aucun cas le Concédant à la réalisation de prestations d’assistance technique ou de maintenance du Logiciel.

Cependant le Concédant reste libre de proposer ce type de services. Les termes et conditions d’une telle assistance technique et/ou d’une telle maintenance seront alors déterminés dans un acte séparé. Ces actes de maintenance et/ou assistance technique n’engageront que la seule responsabilité du Concédant qui les propose.

7.2

De même, tout Concédant est libre de proposer, sous sa seule responsabilité, à ses licenciés une garantie, qui n’engagera que lui, lors de la redistribution du Logiciel et/ou du Logiciel Modifié et ce, dans les conditions qu’il souhaite. Cette garantie et les modalités financières de son application feront l’objet d’un acte séparé entre le Concédant et le Licencié.

Article 8 — Responsabilité

8.1

Sous réserve des dispositions de l’article 8.2, le Licencié a la faculté, sous réserve de prouver la faute du Concédant concerné, de solliciter la réparation du préjudice direct qu’il subirait du fait du Logiciel et dont il apportera la preuve.

8.2

La responsabilité du Concédant est limitée aux engagements pris en application du Contrat et ne saurait être engagée en raison notamment : (i) des dommages dus à l’inexécution, totale ou partielle, de ses obligations par le Licencié, (ii) des dommages directs ou indirects découlant de l’utilisation ou des performances du Logiciel subis par le Licencié et (iii) plus généralement d’un quelconque dommage indirect. En particulier, les Parties conviennent expressément que tout préjudice financier ou commercial (par exemple perte de données, perte de bénéfices, perte d’exploitation, perte de clientèle ou de commandes, manque à gagner, trouble commercial quelconque) ou toute action dirigée contre le Licencié par un tiers, constitue un dommage indirect et n’ouvre pas droit à réparation par le Concédant.

Article 9 — Garantie

9.1

Le Licencié reconnaît que l’état actuel des connaissances scientifiques et techniques au moment de la mise en circulation du Logiciel ne permet pas d’en tester et d’en vérifier toutes les utilisations ni de détecter l’existence d’éventuels défauts. L’attention du Licencié a été attirée sur ce point sur les risques associés au chargement, à l’utilisation, la modification et/ou au développement et à la reproduction du Logiciel qui sont réservés à des utilisateurs avertis.

Il relève de la responsabilité du Licencié de contrôler, par tous moyens, l’adéquation du produit à ses besoins, son bon fonctionnement et de s’assurer qu’il ne causera pas de dommages aux personnes et aux biens.

9.2

Le Concédant déclare de bonne foi être en droit de concéder l’ensemble des droits attachés au Logiciel (comprenant notamment les droits visés à l’article 5).

9.3

Le Licencié reconnaît que le Logiciel est fourni "en l’état" par le Concédant sans autre garantie, expresse ou tacite, que celle prévue à l’article 9.2 et notamment sans aucune garantie sur sa valeur commerciale, son caractère sécurisé, innovant ou pertinent.

En particulier, le Concédant ne garantit pas que le Logiciel est exempt d’erreur, qu’il fonctionnera sans interruption, qu’il sera compatible avec l’équipement du Licencié et sa configuration logicielle ni qu’il remplira les besoins du Licencié.

9.4

Le Concédant ne garantit pas, de manière expresse ou tacite, que le Logiciel ne porte pas atteinte à un quelconque droit de propriété intellectuelle d’un tiers portant sur un brevet, un logiciel ou sur tout autre droit de propriété. Ainsi, le Concédant exclut toute garantie au profit du Licencié contre les actions en contrefaçon qui pourraient être diligentées au titre de l’utilisation, de la modification, et de la redistribution du Logiciel. Néanmoins, si de telles actions sont exercées contre le Licencié, le Concédant lui apportera son aide technique et juridique pour sa défense. Cette aide technique et juridique est déterminée au cas par cas entre le Concédant concerné et le Licencié dans le cadre d’un protocole d’accord. Le Concédant dégage toute responsabilité quant à l’utilisation de la dénomination du Logiciel par le Licencié. Aucune garantie n’est apportée quant à l’existence de droits antérieurs sur le nom du Logiciel et sur l’existence d’une marque.

Article 10 — Résiliation

10.1

En cas de manquement par le Licencié aux obligations mises à sa charge par le Contrat, le Concédant pourra résilier de plein droit le Contrat trente (30) jours après notification adressée au Licencié et restée sans effet.

10.2

Le Licencié dont le Contrat est résilié n’est plus autorisé à utiliser, modifier ou distribuer le Logiciel. Cependant, toutes les licences qu’il aura concédées antérieurement à la résiliation du Contrat resteront valides sous réserve qu’elles aient été effectuées en conformité avec le Contrat.

Article 11 — Dispositions diverses

11.1 Cause extérieure

Aucune des Parties ne sera responsable d’un retard ou d’une défaillance d’exécution du Contrat qui serait dû à un cas de force majeure, un cas fortuit ou une cause extérieure, telle que, notamment, le mauvais fonctionnement ou les interruptions du réseau électrique ou de télécommunication, la paralysie du réseau liée à une attaque informatique, l’intervention des autorités gouvernementales, les catastrophes naturelles, les dégâts des eaux, les tremblements de terre, le feu, les explosions, les grèves et les conflits sociaux, l’état de guerre…

11.2

Le fait, par l’une ou l’autre des Parties, d’omettre en une ou plusieurs occasions de se prévaloir d’une ou plusieurs dispositions du Contrat, ne pourra en aucun cas impliquer renonciation par la Partie intéressée à s’en prévaloir ultérieurement.

11.3

Le Contrat annule et remplace toute convention antérieure, écrite ou orale, entre les Parties sur le même objet et constitue l’accord entier entre les Parties sur cet objet. Aucune addition ou modification aux termes du Contrat n’aura d’effet à l’égard des Parties à moins d’être faite par écrit et signée par leurs représentants dûment habilités.

11.4

Dans l’hypothèse où une ou plusieurs des dispositions du Contrat s’avèrerait contraire à une loi ou à un texte applicable, existants ou futurs, cette loi ou ce texte prévaudrait, et les Parties feraient les amendements nécessaires pour se conformer à cette loi ou à ce texte. Toutes les autres dispositions resteront en vigueur. De même, la nullité, pour quelque raison que ce soit, d’une des dispositions du Contrat ne saurait entraîner la nullité de l’ensemble du Contrat.

11.5 Langue

Le Contrat est rédigé en langue française et en langue anglaise, ces deux versions faisant également foi.

Article 12 — Nouvelles versions du contrat

12.1

Toute personne est autorisée à copier et distribuer des copies de ce Contrat.

12.2

Afin d’en préserver la cohérence, le texte du Contrat est protégé et ne peut être modifié que par les auteurs de la licence, lesquels se réservent le droit de publier périodiquement des mises à jour ou de nouvelles versions du Contrat, qui posséderont chacune un numéro distinct. Ces versions ultérieures seront susceptibles de prendre en compte de nouvelles problématiques rencontrées par les logiciels libres.

12.3

Tout Logiciel diffusé sous une version donnée du Contrat ne pourra faire l’objet d’une diffusion ultérieure que sous la même version du Contrat ou une version postérieure, sous réserve des dispositions de l’article 5.3.4.

Article 13 — Loi applicable et compétence territoriale

13.1

Le Contrat est régi par la loi française. Les Parties conviennent de tenter de régler à l’amiable les différends ou litiges qui viendraient à se produire par suite ou à l’occasion du Contrat.

13.2

À défaut d’accord amiable dans un délai de deux (2) mois à compter de leur survenance et sauf situation relevant d’une procédure d’urgence, les différends ou litiges seront portés par la Partie la plus diligente devant les Tribunaux compétents de Paris.

Version 2.0 du 2006-09-05.


Footnotes

(1)

Operations spécifiques aux chaînes de courbes de Bézier.

(2)

Operations spécifiques aux chaînes de courbes de Bézier.

(3)

Operations spécifiques aux chaînes de courbes de Bézier.

(4)

CeCILL est pour
Ce(a) C(nrs) I(nria) L(ogiciel) L(ibre)