Edition du 18/10/12 : problème réglé en page 2 (http://asy.gmaths.net/forum/les-demandes-d-aide-f15/probleme-d-arc-t237-10.html#p1766) avec une nouvelle version d'Asymptote.
*** 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(3mm);
- point pO=origin;
- circle cc=circle(pO,10);
- point pA=angpoint(cc,180), pB=angpoint(cc,270);
- dot("O",pO,5bp+orange);
- dot("A",pA,5bp+.5green);
- dot("B",pB,5bp+.5red);
- draw(arc(cc,pA,pB),2bp+blue);
- dot(point(cc,relabscissa(cc,pA)),3bp+green);
- dot(point(cc,relabscissa(cc,pB)),3bp+red);
Suis-je le seul à constater ce qui se passe ci-dessus ?
Il est vrai qu'à une certaine époque, il y a eu des problèmes avec les arcs.
Mais Fabrice dit avoir la 2.15 donc c'est après les modifications auxquelles je fais indirectement allusion (il me semble)...
... et avec la 2.21, j'ai ce que l'on obtient ci-dessus : le problème est que l'arc ne s'arrête pas au point B.
Rappel de définitions dans geometry.asy :
Code : Tout sélectionner
/*<asyxml><function type="arc" signature="arc(ellipse,abscissa,abscissa,bool)"><code></asyxml>*/
arc arc(ellipse el, explicit abscissa x1, explicit abscissa x2, bool direction = CCW)
{/*<asyxml></code><documentation>Return the arc from 'point(c, x1)' to 'point(c, x2)' in the direction 'direction'.</documentation></function></asyxml>*/
real a = degrees(point(el, x1) - el.C);
real b = degrees(point(el, x2) - el.C);
arc oa = arc(el, a - el.angle, b - el.angle, fromCenter, direction);
return oa;
}
/*<asyxml><function type="arc" signature="arc(ellipse,point,point,bool)"><code></asyxml>*/
arc arc(ellipse el, point M, point N, bool direction = CCW)
{/*<asyxml></code><documentation>Return the arc from 'M' to 'N' in the direction 'direction'.
The points 'M' and 'N' must belong to the ellipse 'el'.</documentation></function></asyxml>*/
return arc(el, relabscissa(el, M), relabscissa(el, N), direction);
}