Page 1 sur 1
affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 16:18
par zariski
Hello everybody !
Est-il possible d'afficher (à l'aide de label par exemple) la valeur d'un booléen lors d'un test ?
par exemple, je teste quelques fonctions sur les path et notamment ce petit fichier :
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***
- CODE ASYMPTOTE de la figure ci-dessus :
Tout sélectionner
unitsize(1cm);
path p=(0,0)--(1,2)--(2,2)--(3,1)--(2,0)--(2,-1)--(1,-1)--cycle;
int n=length(p);
int s=size(p);
bool c=cyclic(p);
draw(p);
label(string(n),(1,1));
label(string(s),(2,1),E);
//label(c,(1,1),S); // qui ne marche pas bien sûr
shipout(bbox(5mm));
Re: affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 16:31
par GM
Bonjour,
write... pour un affichage dans la console... car je doute d'un intérêt sur l'image.
Sinon... un test "If... then ... else ... " en version abrégée :
Re: affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 16:36
par zariski
Bingo pile poil ce que je voulais, je voyais bien un truc du style "test" mais la façon d'y arriver .....
En console, j'avais testé mais aucun intérêt.
MERCI.
"un jour je l'aurai !
"
Re: affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 17:34
par zariski
Une question plus pointue.
Comment fait-on pour afficher la valeur d'un type quelconque ?
affichage de la valeur d'un entier --> fait
affichage de la valeur d'un bool --> fait
affichage des coordonnées d'un point --> ?
affichage de la valeur d'un real --> ?
etc...
Re: affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 22:51
par zariski
En fait c'est : format("
",I.x) que je ne comprends pas !
Je me suis bricolé ce truc mais je préfèrerais avoir un affichage du style : (1,33 ; 2,33) sur ma figure.
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***
- CODE ASYMPTOTE de la figure ci-dessus :
Tout sélectionner
import graph;
unitsize(1cm);
xaxis("$x$",Ticks(scale(0.7)*Label(),NoZero),Arrow(2mm));
yaxis("$y$",Ticks(scale(0.7)*Label(),NoZero),Arrow(2mm));
real f(real x){return x+1;}
real g(real x){return -0.5*x+3;}
path p1=graph(f,-3,3,300);
path p2=graph(g,-3,3,300);
pair I=intersectionpoint(p1,p2);
draw(p1,red);
draw(p2,blue);
dot(I);
draw(Label(format("$x_{I}=%.2f$",I.x)),I,NE);
draw(Label(format("$y_{I}=%.2f$",I.y)),I,SE);
Re: affichage de la valeur d'un booléen
Posté : mer. 14 nov. 2012, 23:29
par GM
L'extension geometry de Philippe permet de telles choses :
http://www.marris.org/asymptote/Changement_Repere/index.html#fig_aa03_030308_deux_reperes
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***
- CODE ASYMPTOTE de la figure ci-dessus :
Tout sélectionner
import geometry;
size(7cm,0);
// On définit un stylo,
pen p=.8bp+blue;
// ... un second repère
coordsys R=cartesiansystem((1,2),i=(1,0),j=(-1,1));
// On affiche les deux repères.
show(currentcoordsys);
show(Label("$O'$",p),
Label("$\vec{u}$",p), Label("$\vec{v}$",p),
R, ipen=p);
// Point A(2,1) dans le repère par défaut, en rouge
pair A=(2,1);
dot("", A, SW, red);
// et B le couple de coordonnées de A dans le repère R
point B=point(R, A/R);
dot("", B, NE, p);
avec des facilités pour tracer des droites données par équation réduite ou cartésienne :
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***
- CODE ASYMPTOTE de la figure ci-dessus :
Tout sélectionner
import geometry;
size(7cm,0);
// Affichage du repère courant
show(currentcoordsys);
// Tracé de la droite d'équation x + 2y - 3 = 0
line d1=line(1,3,-3);
draw(d1,blue);
// Tracé de la droite d'équation y = 2x - 3
line d2=line(2,-3);
draw(d2,.8green);
// Point d'intersection des deux droites
dot("I",intersectionpoint(d1,d2),N,.7red);
draw(box((-2,-2),(5,4)),invisible);
Mais si tu préfères que j'adapte ton exemple... il s'agira de concaténer des chaines ; on peut faire des choses comme cela :
Code : Tout sélectionner
"........"+string(....)+format(.........)+format(.........)+.....
Re: affichage de la valeur d'un booléen
Posté : jeu. 15 nov. 2012, 07:51
par zariski
merveilleux, c'est ce que j'attendais, pourtant c'est pas faute de visiter un tas de site ...
Merci, à plus pour d'autres aventures qui ne sauraient tarder !