création d'un point dependant

Lieu d'échange sur les pratiques et les réalisations de scripts
Post Reply
martinAcosta
Posts: 344
Joined: Mon Apr 28, 2014 8:06 pm

création d'un point dependant

Post by martinAcosta » Sat Jul 25, 2015 3:27 pm

Bonjour

Est-ce possible d'utiliser un script pour créer des points dont les coordonnées ne sont pas numériques, mais ce sont des expressions algébriques?

Merci

martinAcosta
Posts: 344
Joined: Mon Apr 28, 2014 8:06 pm

Re: création d'un point dependant

Post by martinAcosta » Sat Jul 25, 2015 4:15 pm

Je m'explique un peu mieux.

Je sais que dans un script je peux écrire des expressions pour les coordonnées, mais carmetal calcule les coordonnées, qui deviennent des nombres. Je voudrais créer un point qui dépend des coordonnés d'un autre point, donc qu'il bouge quand l'autre bouge... des idées?

Merci

monique31
Posts: 373
Joined: Sat Nov 03, 2007 3:33 pm
Location: Toulouse

Re: création d'un point dependant

Post by monique31 » Sat Jul 25, 2015 5:53 pm

Voici un exemple :

Code: Select all

pt=Point("A",-3,2);
m=Point("x(A)","y(A)^2");
//autre syntaxe 
//m=Point("x_pt","y_pt^2");
n=Point(X(pt)+1,Math.sqrt(Y(pt)));
Le point A est juste initialisé avec les coordonnées -3 et 2, mais c'est un point libre.
  • Pour créer le point contenu dans la variable m, on s'est placé "du côté de CaRMetal" ; en écrivant les coordonnées entre guillements ; et en utilisant la syntaxe de CaRMetal : celle des expressions de CaRMetal. Dans ce cas on obtient une construction dynamique, c'est à dire que si A bouge le point déduit bougera aussi.
    On remarquera au passage qu'une autre syntaxe est possible (par exemple dans les boucles, quand on ne cherche pas à connaitre le nom des points). Uniquement quand on est côté CaRMetal (donc entre les fameux guillemets), on peut faire appel au contenu d'une variable avec le underscore. C'est l'autre syntaxe : x_pt signifie abscisse du point dans la variable pt.
  • Pour la création du point contenu dans n, on s'est placé "côté javascript". La syntaxe utilisée c'est celle de javascript. Y et Y pour les coordonnées, et Math.sqrt pour la racine carrée. Dans ce cas la figure n'est pas dynamique : si A bouge le point contenu dans n ne suit pas
.

martinAcosta
Posts: 344
Joined: Mon Apr 28, 2014 8:06 pm

Re: création d'un point dependant

Post by martinAcosta » Sun Jul 26, 2015 8:16 pm

Merci Monique

J'ai compris le coté Javascript et le coté CarMetal. Mais est-ce possible de melanger les deux?

Je voudrais créer un point dont l'abscise depende de l'abscise d'un autre point (coté carmetal), d'une expression (coté carmetal), et d'une variable du script (coté javascript).

J'ai essayé a melanger les deux, mais cela ne marche pas... y a-t-il une astuce?

Merci

martinAcosta
Posts: 344
Joined: Mon Apr 28, 2014 8:06 pm

Re: création d'un point dependant

Post by martinAcosta » Mon Jul 27, 2015 3:50 pm

J'ai compris!!

J'étais perdu a cause de l'ambiguité du signe + (comme addition et comme concatenation). Maintenant je sais que je peux écrire par exemple
for (i=0; i<29; i=i+1){
for (j=0; j<17; j=j+1){
Point("d"+i+"-"+j,i/2-7+"*FactorH+x(P2)",j/2-4+"*FactorH+y(P2)");
AddMagneticObject("G","d"+i+"-"+j) ;
AddMagneticObject("I","d"+i+"-"+j)
if (i==14){ AddMagneticObject("C","d"+i+"-"+j);
AddMagneticObject("J","d"+i+"-"+j)}
}
}

Et cela fonctionne!! Merci CaRMetal!

Post Reply