Next: commandLine [Contents]
Ceci est le manuel de jPicEdt, version 1.6-pre1.
• commandLine: | Ligne de commande | |
• contentTypes: | Import, Export et types de contenu | |
• drawingCap: | Dessiner des objets | |
• editing: | Éditer des objets | |
• multicurve: | Courbes de Bézier et polygones lisses | |
• convexZones: | Zones convexes | |
• actions: | Menus et barres d’outils | |
• preferences: | Spécifier vos préferences | |
• scripting: | Scriptage | |
• links: | Liens utiles | |
• license: | Licence d’utilisation |
Documentation de l’API (si installée) |
http://www.jpicedt.org |
La ligne de commande accepte les arguments suivants :
--help
ou -h
: liste les options.
--debug
ou -d
: redirige le flux d’erreur standard (System.err) vers la
console à des fins de débogage.
Exemple d’usage :
jpicedt --debug picture1.tex picture2.tex
(où jpicedt
désigne le nom du script de démarrage).
• General on Formats: | Généralités. | |
• User Pre/Postamble: | Prologue et épilogue utilisateur du format de sauvegarde. | |
• Specific things on Formats: | Particularités des différents formats. |
Next: User Pre/Postamble, Up: contentTypes [Contents]
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 :
la partie JPIC-XML est en code JPIC-XML enfoui, c’est à dire que le JPIC-XML apparaît inséré sous la forme de commentaires conformes au format d’export sélectionné.
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 :
format | variante | type | commentaire |
---|---|---|---|
JPIC-XML | XML | propre | voir hackage sous Emacs |
JPIC-XML | Open LaTeX | propre | voir hackage sous Emacs |
JPIC-XML | mixed JPIC-XML/LaTeX | propre | voir hackage sous Emacs |
LaTeX | picture de base | sauvegarde et convertible | |
LaTeX | epic, eepic | sauvegarde et convertible | |
LaTeX | pstricks | sauvegarde et convertible | non directement compilable en PDF |
DXF | sauvegarde | exportation 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 :
format | variante | type | extension conseillée | autre extension possible |
LaTeX | picture de base | convertible | .tex | |
LaTeX | picture de base | sauvegarde | .jpe.tex | |
LaTeX | epic, eepic | convertible | .epic | .pic |
LaTeX | epic, eepic | sauvegarde | .jpe.epic | .jpe.pic |
LaTeX | pstricks | convertible | .pstricks | .pst |
LaTeX | pstricks | sauvegarde | .jpe.pstricks | .jpe.pst |
DXF | sauvegarde | .jpe.dxf |
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).
Réciproquement, à l’ouverture d’un fichier, jPicEdt analyse le fichier ouvert de la façon suivante:
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.
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: Specific things on Formats, Previous: General on Formats, Up: contentTypes [Contents]
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:
Le contenu du fichier jPicEdt correspondant à cette figure peut être téléchargé ici : help.RedStar.jpe.pstricks.
Il est illustré ci-après :
Ce fichier comprend sept parties consécutives :
% Version: $Id: help.RedStar.jpe.pstricks,v 1.1 2013/02/26 22:16:59 vincentb1 Exp $
latex -jobname=RedStar help.RedStar.jpe.pstricks dvips -E RedStar.dvi -o RedStar.eps
Notez que :
-jobname=RedStar
passée à la commande
latex
n’est nécessaire que parce qu’on désire changer la racine
du nom de fichier, il n’y en aurait pas eu besoin si le fichier s’était
nommé directement RedStar.tex
ce que jPicEdt n’empêche
pas.
\ifx\JPicIsIncluded\undefined … … … … … \fi
de sorte à ce que le fichier puisse non seulement être compilé comme un fichier maître mais aussi inclus via
la commande \input{…}
dans un autre fichier maître dans le préambule duquel on aura mis à cet
effet :
\newcommand*\JPicIsIncluded{}
%%Created by jPicEdt 1.6-pre1: mixed JPIC-XML/LaTeX format %%Mon Feb 25 21:15:38 CET 2013 %%Begin JPIC-XML
%%End JPIC-XML
%%User Data
\ifx\JPicIsIncluded\undefined \end{preview} \end{document} \fi
Notez que — autant être cohérent — pour cet épilogue LaTeX on a utilisé la même astuce de
l’encapsulation dans un \ifx\JPicIsIncluded\undefined … \fi
que pour le prologue LaTeX.
%%% Local Variables: %%% mode: latex %%% eval: (TeX-PDF-mode 0) %%% End:
Previous: User Pre/Postamble, Up: contentTypes [Contents]
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 :
\unitlength
ou
\psset{unit=xxx}
(ou xunit
, yunit
, runit
)
au tout début de votre fichier, ou tout du moins avant la première
commande que vous voulez traiter ; dans le cas contraire, un
\unitlength
par défaut sera prise pour hypothèse, c’est à dire
1cm pour PSTricks jusqu’à que ce que l’une de ces commandes soit
trouvée.
\multiput
(est ses équivalents en PSTricks) ne sont pas
encore gérés. Je sais qu’il y a une demande régulière de supporter ces
compagnon, mais ça ne coule pas de source, croyez moi…
\psset
) n’interféreront pas avec
ceux de LaTeX picture de base ou ceux d’eepic (par
ex. linethickness
).
\end{picture}
(ou son équivalent pour PSTricks) est
trouvé.
Les points suivants sont à noter :
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 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
dans la barre
d’outils principale, ou sélectionner Préférences… dans
le menu Éditer)
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.
Icône | Outil | Nombre de points de contrôle | Séquence de dessin | Fonctions alternatives |
---|---|---|---|---|
![]() | Lignes. | 2 | Première extrémité, seconde extrémité. | N/A |
![]() | Rectangles . | 2 | Premier 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). |
![]() | Parallélogrammes. | 3 | Coin 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 ! |
![]() | Cercle ou ellipse contrôlé par un rectangle. | 2 | Premier 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). |
![]() ![]() ![]() | Arc contrôlé par un rectangle. Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs. | 4 | Premier coin, coin opposé, début de l’arc, fin de l’arc. | |
![]() | Ellipse penchée. | 3 | Coin 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. |
![]() ![]() ![]() | Arc d’ellipse penché. Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs. | 5 | Coin 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. | |
![]() | Cercle contrôlé par 3 points. | 3 | Premier, second et troisième. | N/A. |
![]() ![]() ![]() | Arc contrôlé par 3 points. Le CLIC-DROIT permet de parcourir circulairement les différents types d’arcs. | |||
![]() | Chaî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 | 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) | |
![]() | Chaî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. | |||
![]() | Polygone 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. | Variable | Premier, second, troisième point… cliquer-droit pour finir. | N/A |
![]() | Polygone lisse fermé : pareil que ci-dessus, mais la courbe est fermée. Cliquer ici pour plus d’information sur cet objet. | |||
![]() | Coubre 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). | Variable | Premier, second, troisième point… cliquer-droit to finir. | N/A |
![]() | Coubre interpolatrice fermée : pareil que ci-dessus, à ceci-après que la
courbe est fermé (aussi connue comme \psccurve ). | |||
![]() | Texte (avec ou sans boîte). | 1 | Point d’ancrage | N/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.
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.
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.
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é).
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 ».
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.
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
[] ci-dessous.
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.
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
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
[
].
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é!
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
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 :
Chaque demi-plan qui compose une zone convexe est visualisé avec la ligne de bordure et avec un signe demi-plan comme cela:
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:
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 :
Chaque bouton peut afficher un conseil d’usage si la souris le survole plus de deux secondes.
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.
Lorsque l’outil de 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
est actif vous pouvez ajouter ou enlever des demi-plans d’une
zone convexe de la manière suivantes :
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.
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 ( ), 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.
Icône | Outil | Nombre de points de contrôle | Séquence à suivre | Fonctions alternatives |
---|---|---|---|---|
![]() | Sélection de zone convexe | N/A | Cliquez 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 |
![]() | Édition de zone convexe | N/A | Cliquez 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. |
![]() | Zone convexe rectangulaire | 2 | Premier 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. |
![]() | Zone convexe extensible | Variable | Premier 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 |
![]() | Zone convexe en forme de bande | 2 | Premier 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. |
![]() | Zone convexe en forme de U | 3 | Premier 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. |
![]() | Zone convexe demi-plan | 2 | Premier 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. |
![]() | Translater 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/A | Cliquer 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. |
![]() | Rogner les éléments de dessin | N/A | L’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ézier | N/A |
![]() | Utiliser la sélection de zone(s) convexe(s) | N/A | En 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.
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
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).
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.
![]() | Mode de sélection | Mode 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. |
![]() | Mode de zoom | Cliquer pour zoomer ; avec le modificateur Maj un clic permet de dézoomer |
![]() | Éditer les points de Bézier | Cet 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 translation | Translate 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 dilatation | dilate/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 rotation | Effectue 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. |
![]() | Mode d’édition de point Global/local | Faire 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. |
Certains des articles de menu suivants sont également disponibles comme des outils de la barre d’outils principale.
Menu Fichier | |
---|---|
Nouveau | Créer une nouvelle feuille de dessin. |
Ouvrir… | Charge un fichier à partir du disque. |
Recharger | Recharge 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 enregistrer | Sauvegarde 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écents | Ce 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. |
Fermer | Ferme la feuille de dessin active. |
Quitter | Vous demande de sauvegarder les feuilles de dessin ouvertes et modifiées, puis sort de jPicEdt. |
Menu Éditer | |
Défaire/Refaire | Dé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). |
Couper | Coupe la sélection courante et l’envoie dans le presse-papier. |
Copier | Copie la sélection courante dans le presse-papier. |
Coller | Colle 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écial | Coller 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 |
Tout sélectionner | Sé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 | |
LaTeX | exé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. … |
DVI | Mê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). |
Dvips | Lance le programme Divps référencé. |
Ghostview | Lance le programme Ghostview référencé. |
Nota bene | Le 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 fragments | Selon 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 liste | Rafraî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 scripts | Selon 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 liste | Rafraîchit la liste des scripts installés dans les répertoires de scripts. |
Menu Fenêtres | |
Cascader | Cascade toutes les fenêtre internes. |
Mosaïque horizontale | Pave les fenêtres horizontalement, en créant autant de nouvelles rangées que nécessaire. |
Mosaïque verticale | Pave les fenêtres verticalement, en créant autant de nouvelles colonnes que nécessaire. |
Éditeur d’attributs | Bascule 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 à outils | Bascule entre rendre visible ou invisible le panneau flottant « Outils ». |
Voir/masquer les outils zones convexes | Bascule entre rendre visible ou invisible le panneau flottant « Zones Convexes ». |
Liste de fenêtres | Le 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). |
dvips
en premier
pour convertir votre fichier DVI en un fichier PS, puis
exécuter ghostscript
pour afficher ce dernier.
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.
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).
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.
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
.
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 :
Voir aussi Éditer la boîte bornante.
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).
\thinlines
,
\thicklines
et \Thicklines
. Les valeurs par défaut devraient marcher (par
exemple toute ligne plus fine que 0,15 mm sera considérée comme fine et
dépendra de \thinline
, et toute ligne plus épaisse que 0,3 mm sera
formattée comme épaisse avec \Thicklines
). Cependant si vous faites
l’expérience de divergences entre l’affichage par jPicEdt et l’affichage par
une visionnneuse de la figure compilée, vous désirerez peut-être changer ces
valeurs pour améliorer le comportement WYSIWYG de jPicEdt.
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:
\psellipticarc
est interprété comme l’argument de l’équation
paramétrique canonique suivante donnée dans le système des axes de l’ellipse :
ooù a et b sont respectivement la demi-longueur du grand-axe et celle du petit axe.
\psset{correctAngle=false}
, dans le cas contraire le
paramètre angulaire t passé à \psellipticarc
est interprété comme l’angle du rayon de
l’extrémité dans le système des axes de l’ellipse, c’est à dire que l’équation paramétrique devient :
jPicEdt permet de gérer cette évolution de la façon suivante :
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 TikZ — jPicEdt 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 :
PSTRICKS
: si cette palette est sélectionnée, il n’est pas nécessaire que vous utilisiez le
paquetage xcolor
, en effet les quelques couleurs pré-définies disponibles dans cette palette sont
définies de base du moment que vous utilisez les paquetages pstricks
ou tikz
XCOLOR
: si cette palette est sélectionnée et que votre dessin comprend des couleurs qui lui
sont propres, alors vous devez faire un \usepackage{xcolor}
dans l’en-tête du document LaTeX
l’incluant pour pour assurer que la compilation réussisse.
SVG
ou X11
: si l’une de ces palettes est sélectionnée et que votre dessin comprend des
couleurs qui lui sont propres, alors vous devez faire respectivement un \usepackage[svgnames]{xcolor}
ou \usepackage[x11names]{xcolor}
dans l’en-tête du document LaTeX l’incluant pour pour assurer que
la compilation réussisse.
Dans le cas maintenant de l’importation de code PSTricks — jPicEdt 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.
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
où /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).
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.
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.
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).
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:
Il y a quatre autres menus contextuels, qui apparaissent dans la table ci-dessous accompagnés des objets auxquels ils sont associés.
![]() |
|
![]() |
|
![]() |
|
![]() |
|
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):
Afficher les propriété géométrique de l’objet correspondant dans une fenêtre contextuelle
Transforme la forme en une forme fermée
Transforme l’objet en une courbe de Bézier aussi proche que posible de l’objet original
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.
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.
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.
Déplace l’objet sélectionner au plus haut sur l’axe des z
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.
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.
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.
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 !
• fillingshapes: | Remplir des objets graphiques |
Up: preferences [Contents]
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 :
ce qui donne ceci :
Joindre les courbes
sélectionnées
. Alors les trois ligne forment un seul chemin qui peut
être rempli comme tout autre chemin.
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 :
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 !
Liens vers des outils similaires :
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.
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.
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.
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.
L’acceptation par le Licencié des termes du Contrat est réputée acquise du fait du premier des faits suivants :
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.
Le Contrat entre en vigueur à la date de son acceptation par le Licencié telle que définie en 3.1.
Le Contrat produira ses effets pendant toute la durée légale de protection des droits patrimoniaux portant sur le Logiciel.
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.
Le Licencié est autorisé à utiliser le Logiciel, sans restriction quant aux domaines d’application, étant ci-après précisé que cela comporte :
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.
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.
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 :
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.
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 :
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.
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.
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.
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.
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.
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.
Le Licencié s’engage expressément :
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.
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.
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é.
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.
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.
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.
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).
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é.
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.
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.
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.
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…
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.
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.
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.
Le Contrat est rédigé en langue française et en langue anglaise, ces deux versions faisant également foi.
Toute personne est autorisée à copier et distribuer des copies de ce Contrat.
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.
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.
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.
À 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.
Operations spécifiques aux chaînes de courbes de Bézier.
Operations spécifiques aux chaînes de courbes de Bézier.
Operations spécifiques aux chaînes de courbes de Bézier.
CeCILL est
pour
Ce(a) C(nrs) I(nria) L(ogiciel) L(ibre)