Page 2 sur 2

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Jeudi 03 Janvier 2008, 18:25
par Fabrice Couvreur
Bonsoir à vous deux,
Merci pour vos suggestions, mais la première, je l'avais déjà testée sans succès, ce qui explique ma question sur le forum :

Code: Tout sélectionner
D:\couvreur.fabrice>asy jeudi.asy
jeudi.asy: 17.16: no matching variable 'tl.AB'


Code: Tout sélectionner
import geometry_dev;
size(10cm,0);
real k=-1;
point M=(-2,0);
point N=(-2,10);
line MN=line(N,M);
transform reflect=reflect(MN);
triangle t =triangleabc(5,6,7);
triangle t1 =reflect*t;
label(t);
label( "$A'$", "$B'$", "$C'$", t1);
draw(t,linewidth(bp));
draw(t1,linewidth(bp));
draw(segment(t.AB),StickIntervalMarker(1,1));
draw(segment(t.AC),StickIntervalMarker(1,2));
draw(segment(t.BC),StickIntervalMarker(1,3));
draw(segment(tl.AB),StickIntervalMarker(1,1));
draw(segment(tl.AC),StickIntervalMarker(1,2));
draw(segment(tl.BC),StickIntervalMarker(1,3));


Merci.

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Jeudi 03 Janvier 2008, 18:39
par MB
Oui, c'est bizarre ça en effet, on dirait qu'il n'aime pas le nom "t1" car le code suivant fonctionne :

Code: Tout sélectionner
import geometry_dev;
size(10cm,0);
real k=-1;
point M=(-2,0);
point N=(-2,10);
line MN=line(N,M);
transform reflect=reflect(MN);
triangle t =triangleabc(5,6,7);
triangle r =reflect*t;
label(t);
label( "$A'$", "$B'$", "$C'$", r);
draw(t,linewidth(bp));
draw(r,linewidth(bp));
draw(segment(t.AB),StickIntervalMarker(1,1));
draw(segment(t.AC),StickIntervalMarker(1,2));
draw(segment(t.BC),StickIntervalMarker(1,3));
draw(segment(r.AB),StickIntervalMarker(1,1));
draw(segment(r.AC),StickIntervalMarker(1,2));
draw(segment(r.BC),StickIntervalMarker(1,3));

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Jeudi 03 Janvier 2008, 19:20
par Fabrice Couvreur
Salut,
Encore du boulot pour Philippe :D !
Merci.

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Jeudi 03 Janvier 2008, 19:25
par MB
Fabrice Couvreur a écrit:Encore du boulot pour Philippe


Oui, c'est possible en effet. :|

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Vendredi 04 Janvier 2008, 14:30
par OG
MB a écrit:
Fabrice Couvreur a écrit:Encore du boulot pour Philippe


Oui, c'est possible en effet. :|


Pour ce problème il faudrait d'abord prendre du repos !
Ce n'est pas t1 mais tl dans les trois instructions segment(t1,..), d'où l'erreur.
J'ai eu du mal à m'en apercevoir...

Cordialement
O.G.

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Vendredi 04 Janvier 2008, 16:08
par MB
OG a écrit:Ce n'est pas t1 mais tl dans les trois instructions segment(t1,..), d'où l'erreur.
J'ai eu du mal à m'en apercevoir...


Ah oui !?
Pourtant j'avais fait attention car ça m'énerve assez souvent ça. L'éditeur que j'utilise (Notepad++) ne fait aucune différence à l'affichage entre les "1" et les "l" (de même avec les "0" et les "O" d'ailleurs) ce qui est assez pénible. Enfin bref, il me semblait avoir regardé cette possibilité ... mais bon comme Fabrice disait avoir eu le même problème ...

Bon en tout cas si ce n'est que ça c'est rassurant. :mrgreen:

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Vendredi 04 Janvier 2008, 17:29
par Fabrice Couvreur
Bonsoir,
J'ai une nouveau problème à soumettre :

Code: Tout sélectionner
import geometry_dev;
texpreamble("\usepackage{amsmath,amsfonts,amssymb,yhmath}");
texpreamble("\usepackage{mathrsfs}");
size(8cm,0);
pen p1=bp+0.8*red;
pen p2=bp+black;
point A=(0,0);
point B=(8,0);
point O=(4,0);
dot("O",O,2N);
dot("A",A,2W);
dot("B",B,2E);
circle c=circle(A,B);
draw(c,p2);
point D=(0,-8);
point C=(8,-8);
draw(A--B--C--D--cycle,p1);
dot("D",D,2W);
dot("C",C,2E);
draw(tangents(c,D),bp+0.8*blue);
draw(D--O,bp+0.8*magenta);
label("$\mathscr{C}$",(7,3.7),E);


- Est-il possible de ne tracer que la tangente issue de D ne passant pas par A ?
- Comment la nommer pour pouvoir ensuite construire le point M, point d'intersection de $\mathscr{C}$ et de cette tangente ?
Merci.

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Vendredi 04 Janvier 2008, 21:13
par OG
bonsoir

Comme le dit la doc de Philippe (que je dois traduire en un anglais incompréhensible) tangents renvoie des lines (line[]) donc un tableau. Il faut donc sélection la bonne (à la main ce sera plus facile). Chez moi

Code: Tout sélectionner
line tt=tangents(c,D)[0];
draw(tt,bp+0.8*blue);


fait le boulot.

Idem pour intersectionpoints qui renvoie un tableau de points. Chez moi

Code: Tout sélectionner
point[] p=intersectionpoints(tt,c);
point M=p[0];
dot("M",M);


fait le boulot (peut être abrégé en 2 lignes plutôt que 3).

bonne soirée et cordialement
O.G. qui a hâte du retour de Philippe !

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Vendredi 04 Janvier 2008, 23:06
par Fabrice Couvreur
Bonsoir OG,
Merci pour la qualité de ta réponse.
@+

Re: [Asymptote] Géométrie Euclidienne

MessagePosté: Samedi 05 Janvier 2008, 16:50
par Ph. Ivaldi
Bonjour MB,
MB a écrit:Bon en tout cas, la première solution, c'est qu'est ce que je disais il me semble ! :P

Oui, on s'est croisé.
La dernière est moins bien documentée.