Page 1 sur 1
À propos de la routine circle ((explicit point C, real r))
Posté : mer. 10 oct. 2012, 18:17
par Fabrice
Bonsoir,
Dans le code ci-après, j'ai voulu utiliser, sans succès, la routine circle (explicit point C, real r) pour tracer le cercle de centre O et de rayon r= 5 cm :
*** 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;
usepackage("kpfonts");
pen p =fontsize(8pt);
unitsize(0.5cm);
point z1=(0,0);
path g1=scale(5)*unitcircle;
pair z2=point(g1,0.5);
path g2=z1--z2;
point z3=point(g2,0.6);
circle c=circle(z3,-z3);
draw(g1);
draw(g2);
draw(c);
label("O",z1,S,p);
label("M",z3,2*N,p);
dot(z1);
dot(z3);
De plus, peut-on transformer le point de la routine dot() en une croix ?
Merci.
Re: À propos de la routine circle ((explicit point C, real r))
Posté : mer. 10 oct. 2012, 21:28
par GM
Bonsoir,
Fabrice a écrit :Dans le code ci-après, j'ai voulu utiliser, sans succès, la routine circle (explicit point C, real r) pour tracer le cercle de centre O et de rayon r= 5 cm
Tu veux dire :
à la place du
Pourquoi dis-tu que cela ne fonctionne pas : on obtient le même cercle dans les deux cas.
*** 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;
unitsize(0.5cm);
point z1=(0,0);
path g1=circle(z1,5);
draw(g1);
*** 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;
unitsize(0.5cm);
path g1=scale(5)*unitcircle;
draw(g1);
Si tu ne retrouves pas 5cm sur la feuille, je te rappelle que tu as mis :
Re: À propos de la routine circle ((explicit point C, real r))
Posté : mer. 10 oct. 2012, 21:36
par GM
Je nuance mon message précédent : il y a différence subtile entre les deux définitions qui ne se voit qu'en affichant les noeuds :
*** 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;
unitsize(0.5cm);
point z1=(0,0);
path g1=circle(z1,5);
draw(g1);
dot(g1,2bp+red);
*** 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;
unitsize(0.5cm);
path g1=scale(5)*unitcircle;
draw(g1);
dot(g1,2bp+red);
Et donc évidemment que le
n'a pas le même résultat dans les deux cas.
Et c'est pour cela que dans un message récent j'ai conseillé
relpoint.

Re: À propos de la routine circle ((explicit point C, real r))
Posté : mer. 10 oct. 2012, 22:04
par Fabrice
Bonsoir Gaetan,
En fait, je viens de me corriger. En effet, j'ai une habitude dont j'ai du mal à me défaire : pair z au lieu de point z :
Code : Tout sélectionner
-*- mode: compilation; default-directory: "/home/fab/" -*-
Compilation started at Wed Oct 10 22:56:32
asy -V -wait "fig_ie2"
fig_ie2.asy: 6.17: cannot cast 'path' to 'circle'
Compilation exited abnormally with code 1 at Wed Oct 10 22:56:32
Re: À propos de la routine circle ((explicit point C, real r))
Posté : mer. 10 oct. 2012, 22:12
par GM
Fabrice a écrit :j'ai une habitude dont j'ai du mal à me défaire : pair z au lieu de point z :
Je ne comprends pas l'exemple que tu donnes maintenant par rapport à ce que tu dis.
Tu veux dire que tu veux utiliser
pair et non
point ?

Car si tu veux bien utiliser
point, je ne comprends pourquoi tu me donnes le message d'erreur qui suit puisque cela fonctionne :
*** 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;
unitsize(0.5cm);
point z1=(0,0);
circle g1=circle(z1,5);
draw(g1);
Re: À propos de la routine circle ((explicit point C, real r))
Posté : jeu. 11 oct. 2012, 16:01
par Fabrice
Bonjour,
GM a écrit :Tu veux dire que tu veux utiliser pair et non point ?

Ce n'est pas que je veux, mais j'ai utilisé pair au lieu de point, ce qui a engendré le message d'erreur.
Le bout de code :
voulait te montrer ce que j'avais écrit, et qui donc ne fonctionnait pas.
Suis-je plus clair ?

Re: À propos de la routine circle ((explicit point C, real r))
Posté : jeu. 11 oct. 2012, 16:15
par GM
Fabrice a écrit :Suis-je plus clair ?

oui, oui
