vecteur 3d

Bugs

Modérateur : xcasadmin

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

vecteur 3d

Message par alb » ven. avr. 26, 2013 8:05 am

1/ v:=vecteur(point(1,0,-2),point(1,0,3)) trace le vecteur [1,0,3] d'origine point(1,0,-2)
le second argument se comporte donc comme un vecteur. Problème ?
2/ Il n'y a pas d'aide détaillée pour vecteur ?

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

Re: vecteur 3d

Message par parisse » ven. avr. 26, 2013 9:44 am

Ok, on corrige!
Il n'y a pas d'aide détaillée en 1.0, il faut que je regarde si c'est commenté dans la dernière version du cascmd_fr de Renée...

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

Re: vecteur 3d

Message par alb » mer. mai 01, 2013 7:37 pm

1/ je n'ai pas l'impression que le pb soit corrigé dans la version 1.1
vecteur(point(1,0,-2),point(1,0,3)) n'affiche rien.

2/ un pb connexe

Code : Tout sélectionner

A:=point(1,0);u:=[1,1];v:=[2,5];
legende(vecteur(A,A+2*u),"2u");legende(vecteur(A+2*u,A+2*u+v),"v");
legende(vecteur(A,A+2*u+v),"2u+v",affichage=rouge+epaisseur_ligne_3);
M:=legende(point(A+2*u+v),"M");
donne dans DispG la construction du vecteur 2u+v d'origine A. Correct ici.

Le programme ci-dessous faisait la même chose mais aujourd'hui le vecteur v et le point M ne sont plus correctement construits. Je ne trouve pas l'erreur.

Code : Tout sélectionner

/********************************************************
*********** Construction interactive de au+bv ***********
********************************************************/

// Après compilation taper CombLin2vect()

CombLin2vect():={
  local pnom,L1,L2,A,a,b;
  /***** Saisie du prénom, des coordonnées de u, de v, de A, des réels a et b *****/
  ClrGraph;
  saisir_chaine("Quel est votre prénom",pnom);
  saisir("Bonjour "+pnom+" \n Donnez les coordonnées du vecteur u \n par exemple -3,7",L1);L1:=[L1];
  saisir("Donnez les coordonnées du vecteur v",L2);L2:=[L2];
  saisir("Donnez les coordonnées du point A",A);A:=[A];
  saisir("Donnez un nombre a",a,"Donnez un nombre b",b);
  legende([20,20],"u=("+L1[0]+","+L1[1]+")");
  legende([20,40],"v=("+L2[0]+","+L2[1]+")");
  legende([20,60],"A("+A[0]+","+A[1]+")");
  afficher("Soit A("+A[0]+","+A[1]+") u=("+L1[0]+","+L1[1]+") v=("+L2[0]+","+L2[1]+")");
  titre="Un représentant du vecteur ("+a+")u+("+b+")v";
  //output("Construisez sur votre feuille un représentant du vecteur ("+a+")u d'origine A");//variante afficher
  /***** Suivre les recommandations affichées en zone bleue intermédiaire *****/
  afficher("Construisez sur votre feuille un représentant du vecteur ("+a+")u d'origine A");
  output("Suivez les consignes écrites en bleu avant de fermer la fenêtre");
  DispG;//affiche la fenêtre
  output("Attention "+pnom+" on ne regarde pas la feuille du voisin");// :=)
  /***** Construction de A et de au *****/
  legende(point(A),"A");legende(vecteur(A,A+a*L1),"("+a+")u");
  afficher("Construisez sur votre feuille un représentant du vecteur ("+b+")v d'origine l'extrémité du vecteur précédent");
  Pause;
  /***** Construction de bv d'origine l'extrémité de au *****/
  legende(vecteur(A+a*L1,A+a*L1+b*L2),"("+b+")v");
  afficher("Construisez en rouge un représentant du vecteur ("+a+")u+("+b+")v");
  Pause;
  /***** Construction de au+bv et de son extrémité M *****/
  legende(vecteur(A,A+a*L1+b*L2,affichage=rouge+epaisseur_ligne_3),"("+a+")u+("+b+")v");
  legende(point(A+a*L1+b*L2),"M");
  retourne("Bravo "+pnom+" \nConsultez votre professeur si vous n'obtenez pas le graphique de la fenêtre DispG \nSi votre dessin est juste, calculez les coordonnées du point M (vérifiez avec Xcas)");
}
:;
3/ une remarque: après un ClrGraph le titre ne disparaît pas.

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

Re: vecteur 3d

Message par parisse » jeu. mai 02, 2013 3:16 pm

Decidement... J'ai confondu un type avec un subtype:-) je corrige ca demain.
Sinon legende(objet geometrique) cree une legende a la position de objet geometrique, c'est-a-dire au milieu du bipoint pour un vecteur (et il ne cree donc pas le vecteur seulement la legende), pour toi il faut utiliser ,legende= en argument de vecteur. Et attention, comme A+a*L1, A*a*L1+b*L2 sont des vecteurs et pas des points, il faut que tu mettes explicitement point(A+a*L1) ou alors tout simplement a*L1.

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

Re: vecteur 3d

Message par alb » jeu. mai 02, 2013 5:03 pm

ok mais j'ai quelques interrogations.

1/ ce code en ligne de commande:

Code : Tout sélectionner

A:=point(1,0);u:=[1,1];v:=[2,5];
legende(vecteur(A,A+2*u),"2u");legende(vecteur(A+2*u,A+2*u+v),"v");
legende(vecteur(A,A+2*u+v),"2u+v",affichage=rouge+epaisseur_ligne_3);
M:=legende(point(A+2*u+v),"M");
trace bien dans DispG le vecteur 2u légendé, le vecteur v légendé au bout de v, le vecteur 2u+v légendé, le point M.

2/ ma fonction CombLin2vect a longtemps affiché correctement la construction dans DispG.
Les objets en arguments de legende étaient affichés.
Je me suis aperçu hier que v et M n'était plus au bon endroit.

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

Re: vecteur 3d

Message par parisse » jeu. mai 02, 2013 5:18 pm

Tu as raison, pas la peine de changer les legende, j'ai été trompé par les essais en ligne de commande sans afficher le DispG.
Pour le reste, c'est la syntaxe de vecteur qui a changé je ne sais plus quand pour qu'on puisse créer un représentant avec le point de départ et le vecteur (si ça se trouve c'est toi qui l'a suggéré:-)).

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

Re: vecteur 3d

Message par alb » jeu. mai 02, 2013 9:26 pm

Le programme corrigé:

Code : Tout sélectionner

/********************************************************
*********** Construction interactive de au+bv ***********
********************************************************/

// Après compilation taper CombLin2vect()

CombLin2vect():={
  local pnom,L1,L2,A,a,b;
  /***** Saisie du prénom, des coordonnées de u, de v, de A, des réels a et b *****/
  ClrGraph;
  saisir_chaine("Quel est votre prénom",pnom);
  saisir("Bonjour "+pnom+" \n Donnez les coordonnées du vecteur u \n par exemple -3,7",L1);L1:=[L1];
  saisir("Donnez les coordonnées du vecteur v",L2);L2:=[L2];
  saisir("Donnez les coordonnées du point A",A);A:=point(A);
  saisir("Donnez un nombre a",a,"Donnez un nombre b",b);
  legende([20,20],"u=("+L1[0]+","+L1[1]+")");
  legende([20,40],"v=("+L2[0]+","+L2[1]+")");
  legende([20,60],"A("+abscisse(A)+","+ordonnee(A)+")");
  afficher("Soit A("+abscisse(A)+","+ordonnee(A)+") u=("+L1[0]+","+L1[1]+") v=("+L2[0]+","+L2[1]+")");
  titre="Un représentant du vecteur ("+a+")u+("+b+")v";
  //output("Construisez sur votre feuille un représentant du vecteur ("+a+")u d'origine A");//variante afficher
  /***** Suivre les recommandations affichées en zone bleue intermédiaire *****/
  afficher("Construisez sur votre feuille un représentant du vecteur ("+a+")u d'origine A");
  output("Suivez les consignes écrites en bleu avant de fermer la fenêtre");
  output("Attention "+pnom+" on ne regarde pas la feuille du voisin");// :=)
  /***** Construction de A et de au *****/
  legende(A,"A");legende(vecteur(A,A+a*L1),"("+a+")u");
  afficher("Construisez sur votre feuille un représentant du vecteur ("+b+")v d'origine l'extrémité du vecteur précédent");
  Pause;
  /***** Construction de bv d'origine l'extrémité de au *****/
  legende(vecteur(A+a*L1,A+a*L1+b*L2),"("+b+")v");
  afficher("Construisez en rouge un représentant du vecteur ("+a+")u+("+b+")v");
  Pause;
  /***** Construction de au+bv et de son extrémité M *****/
  legende(vecteur(A,A+a*L1+b*L2,affichage=rouge+epaisseur_ligne_3),"("+a+")u+("+b+")v");
  legende(point(A+a*L1+b*L2),"M");
  retourne("Bravo "+pnom+" \nConsultez votre professeur si vous n'obtenez pas le graphique de la fenêtre DispG \nSi votre dessin est juste, calculez les coordonnées du point M (vérifiez avec Xcas)");
}
:;

Répondre