Legende

Utilisation de Xcas

Modérateur : xcasadmin

slejoly
Messages : 194
Inscription : sam. oct. 14, 2006 10:17 am
Localisation : Lorient

Legende

Message par slejoly » dim. mai 20, 2007 7:52 pm

Bonjour,
j'ai défini une suite de points du plan, mais je voudrais que s'affiche en chacun de ces points la légende : M0, M1, ...., Mn.

J'ai essayé un " legende="M"+j ", voir ci-dessous pour un peu plus de détails :
...............

for(j:=1;j<=n;j++){

L:=coordonnees(M);
x:=a*L[0]+b*L[1];
y:=c*L[0]+d*L[1];

Mj:=point(x,y,legende="M"+j);

...........


Mais évidemment ça ne marche pas ! Les points sont bien là mais sans leurs noms.

Y-a-t-il une solution ?

Et d'ailleurs, pourquoi le tracé de tous les points, ne s'effectue pas dans la fenêtre de géométrie, mais seulement dans la fenêtre DispG ?

Merci d'avance.

Stéphane Lejoly.

PS : j++ et j+1 est-ce exactement la même chose ?

parisse
Messages : 5892
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Message par parisse » lun. mai 21, 2007 5:59 pm

il semble qu'il y a un bug sur les points definis par x,y par contre ca marche avec x+i*y
point(1+2*i,legend="M"+1);
Sinon, la raison pour laquelle les objets geometriques crees dans un programme ne sont pas affiches dans la fenetre de geometrie, c'est qu'elle n'affiche que les resultats des commandes de l'historique. Pour les visualiser en dehors de la fenetre DispG, il faut creer une sequence dans la fonction,

Code : Tout sélectionner

local res,...;
...
res:=NULL;
puis y ajouter au fur et a mesure les objets graphiques crees, par exemple

Code : Tout sélectionner

res:=res,(M:=point(1,2));
et a la fin de la fonction

Code : Tout sélectionner

return res;

slejoly
Messages : 194
Inscription : sam. oct. 14, 2006 10:17 am
Localisation : Lorient

Message par slejoly » lun. mai 21, 2007 6:29 pm

Merci, ça marche très bien avec les complexes.

slejoly
Messages : 194
Inscription : sam. oct. 14, 2006 10:17 am
Localisation : Lorient

Message par slejoly » lun. mai 21, 2007 6:35 pm

Pour l'affichage ça marche aussi, mais pour faire afficher les points et les segments je n'ai rien trouvé d'autre que :

...
res:=res,(Mj:=point(x+i*y,legende="M"+j));
res:=res,(segment(M,Mj));
...
return res;


il doit bien y avoir plus simple (?)

Merci pour tout.

Stéphane Lejoly.

parisse
Messages : 5892
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Message par parisse » mar. mai 22, 2007 1:51 pm

que voulez-vous dire par plus simple? je ne pense pas qu'on puisse simplifier plus parce qu'il faut ajouter l'instruction graphique a une sequence si on veut l'avoir dans la valeur de retour.

Répondre