TeXgraph
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
-29%
Le deal à ne pas rater :
PC portable – MEDION 15,6″ FHD Intel i7 – 16 Go / 512Go (CDAV : ...
499.99 € 699.99 €
Voir le deal

Arbres

2 participants

Aller en bas

Arbres Empty Arbres

Message  charly Jeu 16 Avr - 1:56

Bonsoir,

Encore une petite salve de questions.

1) Je reviens ici sur une question mal exprimée dans un post précédent.
a) On a dessiné un arbre avec texgraph. Je l'exporte en pgf sous toto.pgf
b) On ouvre toto.pgf dans avec mon editeur latex(winedt en l'espèce)
c) Je copie le fichier dans mon code latex de mon document essai.tex(ce qui me permet de modifier des positions de label, des tailles...)
d) On compile et voila le travail.

Ca marche, mais comment faire pour changer la taille de mon image?
(lors de mes dessins d'ensembles, il n'y avait qu'un seul élément graphique(utilisateur) et je m'en sortais par un size(10) placé au début de celui-ci)

Bref, je ne veux pas forément que mon graphe prenne toute la page....

2) Une micro question cette fois: comment changer le rayon des cercles entourant les nodes?

3) Une micro question encore: comment changer la couleur de remplissage de certains cercles entourant quelques nodes choisis?

4) Comment faire pour mettre un texte au bout d'un rammeau terminal (une probabilité par exemple) rameau invisible?

merci
charly
charly

Nombre de messages : 26
Age : 62
Date d'inscription : 11/02/2008

Revenir en haut Aller en bas

Arbres Empty Re: Arbres

Message  P.Fradin Jeu 16 Avr - 10:38

charly a écrit:Bonsoir,

Bonjour,


1) Je reviens ici sur une question mal exprimée dans un post précédent.
a) On a dessiné un arbre avec texgraph. Je l'exporte en pgf sous toto.pgf
b) On ouvre toto.pgf dans avec mon editeur latex(winedt en l'espèce)
c) Je copie le fichier dans mon code latex de mon document essai.tex(ce qui me permet de modifier des positions de label, des tailles...)

Tu as bien plus simple: au lieu d'exporter dans un fichier, tu peux exporter dans le presse-papier (6ème bouton partant de la gauche sur la barre d'outils Standard) et coller dans ton document LaTeX.


Ca marche, mais comment faire pour changer la taille de mon image?
(lors de mes dessins d'ensembles, il n'y avait qu'un seul élément graphique(utilisateur) et je m'en sortais par un size(10) placé au début de celui-ci)

Qu'il y ait un seul ou cent éléments graphiques, cela ne change rien! Tu peux toujours créer un élément Utilisateur ne contenant que l'instruction size(10) et mettre cet élément en premier. Sinon tu peux aussi taper dans la ligne de commandes en bas de la fenêtre: size(10) puis tu fais F10 pour mettre le graphique à jour. Et enfin une autre solution consiste aussi à modifier soi-même la fenêtre (F6) et on modifie à la main les paramètres Xscale et Yscale...


2) Une micro question cette fois: comment changer le rayon des cercles entourant les nodes?

Modifier la valeur de la variable globale nodeep.


3) Une micro question encore: comment changer la couleur de remplissage de certains cercles entourant quelques nodes choisis?

Il faut modifier la macro drawAnode, exemple:

Code:

[{drawAnode(indice): on dessine le node indice %1, les attributs sont ceux de l'élément graphique styleNodes}

if Pos(%1,[1,5])<>Nil then
  SaveAttr(),
  FillColor:=lightblue, LineStyle:=solid, LabelStyle:=0,
  if %1=1 then nodeep:=0.5 else nodeep:=0.25 fi,
  Eval( ["Cercle(N",%1, ",", nodeep, ")" ]),
  Eval( ["Label( N", %1, ", \node", %1, ")" ]),
  RestoreAttr()
else
  {Eval( ["Cercle(N",%1, ",", nodeep, ")" ])}
  Eval( ["Label( N", %1, ", \node", %1, ")" ])
fi
]


4) Comment faire pour mettre un texte au bout d'un rammeau terminal (une probabilité par exemple) rameau invisible?

Invisible? Cela me paraît bizarre comme demande! Il faut modifier la macro drawAline, exemple pour ne pas dessiner le trait qui relie les nodes 0 et 3:

Code:

[ { drawAline(affixe depart, vecteur direction, indice1, indice2):
 on relie le node indice1 (son affixe est %1) au node indice2 (la direction est %2),
 les attributs sont ceux de l'élément graphique arbre}
 if %3=0 And %4=3 then {rien}
 else {sinon on dessine}
 $dep:=%1, $dir:=%2,
 $u:=Re(dir*bar(Dir1))*Dir1, {composante du vecteur direction suivant Dir1}
 $v:=Re(dir*bar(Dir2))*Dir2, {composante du vecteur direction suivant Dir2}
 if linetype=0 {segment de droite}
  then Ligne([dep,dep+dir],0)
 elif linetype=1 {segment à un coude}
  then u:=u*armpos, Ligne( [dep, dep+u+v, dep+dir],0)
 elif linetype=2 {segment à 2 coudes}
  then u:=u*armpos, Ligne( [dep, dep+u, dep+dir-u, dep+dir],0)
 elif linetype=3 {courbe de bézier}
  then Bezier(dep, dep+u/2, dep+u/2+v, dep+dir)
 elif linetype=4 {tube}
  then oldwidth:=Width,  Width:=Width*3,
        Ligne([dep,dep+dir],0), $oldcolor:=Color,
        Color:=FillColor, Width:=oldwidth,
        Ligne([dep,dep+dir],0), Color:=oldcolor
 fi
 fi
]

Arbres 090416093906748271
P.Fradin
P.Fradin
Admin

Nombre de messages : 1133
Age : 62
Date d'inscription : 19/01/2008

http://texgraph.tuxfamily.org/

Revenir en haut Aller en bas

Arbres Empty Re: Arbres

Message  charly Jeu 16 Avr - 11:11

Bonjour,

Merci pour ces réponses. Pour la denière, j'aurais voulu écrire 0,05 sous le C1, voire sous tous les rameaux terminaux de mon arbre et je proposais de tracer une ligne courte et invisible puis mon texte un peu sur le modèle proposé en dernier. Ta réponse convient à ce que je veux faire, mais je suis certain d'avoir une solution peu élégante...

Cordialemnt.

Charly
charly
charly

Nombre de messages : 26
Age : 62
Date d'inscription : 11/02/2008

Revenir en haut Aller en bas

Arbres Empty Re: Arbres

Message  charly Ven 17 Avr - 1:44

Bonsoir,

Pour le coloriage des cercles en couleurs différentes, peux-tu expliquer où se situe le coloriage des cercles B1 et C2 dans ta modification de de code? Je n'arrive pas à modifier cela sur d'autres arbres.... Crying or Very sad

Merci.

Charly
charly
charly

Nombre de messages : 26
Age : 62
Date d'inscription : 11/02/2008

Revenir en haut Aller en bas

Arbres Empty Re: Arbres

Message  P.Fradin Ven 17 Avr - 9:07

Bonjour Charly,

C'est ce test là:

Code:

if Pos(%1,[1,5])<>Nil then ...

car la macro Pos renvoie la position du premier argument dans la liste qui suit, par exemple Pos(2, [1,3,2]) renverra la valeur 3. Si la liste ne contient pas la valeur alors Pos renvoit Nil, donc la condition
Code:
Pos(%1,[1,5])<>Nil
signifie la même chose que %1=1 Or %1=5.
P.Fradin
P.Fradin
Admin

Nombre de messages : 1133
Age : 62
Date d'inscription : 19/01/2008

http://texgraph.tuxfamily.org/

Revenir en haut Aller en bas

Arbres Empty Re: Arbres

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser