Page 1 sur 1

Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 21:18
par DK
Bonsoir,

Depuis que je suis passé à la version 1.96 d'Asymptote, je constate que le "dotgranularity=0; //(Render dots as spheres.)" n'est plus fonctionnel. Il faut donc enlever cette ligne des anciens fichiers. Après tout, ce n'est pas grave...
Le plus embêtant est que je ne parviens plus avec la version 1.96, de faire tracer des cercles, ou des arcs de cercle en pointillé à l'aide de "dotted" pour des figure 3D. Même le "dashdotted" ne fonctionne pas (seul les trait interrompu s'affichent), mais le dashed lui fonctionne bien.

Quelqu'un a-t-il rencontré ces problèmes? Qui peut m'aider à trouver le remède, ou me dire ce qui ne va pas.

Merci à vous.

DK.

Re: Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 21:28
par chellier
Bonsoir,

Peux-tu donner un exemple qui ne fonctionne pas ?

Chez moi (asymptote 2.00svn)

Code : Tout sélectionner

import three;
size(5cm);
settings.render=0;
settings.prc=false;

path3 c=circle((0,0,0),1cm,Z);

draw(c,dotted);

donne le résultat attendu.

Christophe

Re: Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 21:41
par chellier
Finalement, j'ai le problème avec les prc,

Code : Tout sélectionner

import three;
size(5cm);
path3 c=circle((0,0,0),1cm,Z);
draw(c,dotted);

Cette fois, je ne vois plus rien :shock: , mais tout va bien avec dashed :?

Christophe

Re: Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 22:05
par GM
J'ai déposé de suite... un message sur le forum officiel à ce propos... car je crois que John a le souci d'avoir une version stable et déboguée à intégrer à TeXLive 2010.

Re: Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 22:15
par DK
Voici le fichier sur lequel je travaille.

Code : Tout sélectionner

// ********Appel des fichiers de macros....************************************* <----
import graph3;
import solids;
import math;
usepackage("relsize");//règle la taille du texte...

// taille de la figure
size(10cm,0);
scale(true);

// ********REGLAGES de la vue / perspective...********************************** <----
currentprojection=orthographic(1,2,2);
currentlight=White;

// ********DECLARATION des VARIABLES et des PARAMETRES...***********************
real R, phi, epsilon, delta, L, n, k, K ;

R=1            ; // rayon de la sphère céleste                           <----
phi= 43+43/60      ; // latitude géographique du lieu du cadran solaire
epsilon=23+26/60   ; // obliquité de l'écliptique / valeur maximum de delta.
K=-cot(phi*pi/180)   ;
// ***************************************************************************** //
//   Les points sur la sphère
triple origine    =   (0,0,0);   // Centre de la sphère.
triple poleNord =   (0,0,R);   // pôle Nord P sur la sphère céleste.
triple poleSud  =   (0,0,-R);   // pôle Sud P' sur la sphère céleste.
triple EqSud   =   (R,0,0);   // Point sud équatorial.
triple EqEst   =   (0,R,0);   // Point équatorial est.
triple Zenith   =   (R*Sin(90-phi),0,R*Sin(phi)); // Zénith du lieu de latitude phi.
triple OrigineHectemories = R*(Cos(90-phi),0,-Sin(90-phi)); // Intersection commune des Hectémories

//~~~~~~~~~ CONSTRUCTION de la SPHERE CELESTE ~~~~~~~~~
revolution b=sphere(origine,R);
draw(surface(b),palegreen+opacity(.85));

// Construction d'un point de la shère, et pourquoi pas sur une hectémorie...
k=2;
n=6/k ;
L = 35 ;
delta = aTan(K*Cos(n*L));
triple S = R*( Cos(L)*Cos(delta),Sin(L)*Cos(delta),  Sin(delta) );
triple Seq=R*(Cos(L),Sin(L),0);
triple Seq_perp=(R*Cos(90-L),-R*Sin(90-L),0);
//~~~~~~~~~ CONSTRUCTION des ARCS de GRAND CERCLE et des PETITS CERCLES ~~~~~~~~~
//~~~~~~~~~ arcs de grand cercle ~~~~~~~~~
path3 meridien         = arc(origine, R, 0, 0, 90+(90-phi), 0); // Cercle méridien
path3 cerclehori       = circle(O, R, rotate((90-phi),Y)*Z); // Cercle horizon
//~~~~~~~~~ CONSTRUCTION des TROPIQUES et des CERCLES LIMITES sur la SPHERE CELESTE ~~~~~~~~~
//~~~~~~~~~ RAYONS, CENTRES ET CERCLES LIMITES (sphère) ~~~~~~~~~
real Rmax = R*Cos(90-phi)               ;
real Rmin = R*Cos(-(90-phi))            ;

triple Cmax = (0,0,R*Sin(90-phi))         ;
triple Cmin = (0,0,R*Sin(-(90-phi)))         ;

path3 cerclemax = circle(Cmax, Rmax, Z)      ;
path3 cerclemin = circle(Cmin, Rmin, Z)      ;

//~~~~~~~~~ TROPIQUE DES SOLSTICES (sphère) ~~~~~~~~~
real Rsolstice    = R*Cos(epsilon)            ;
real zsolstice    = R*Sin(epsilon)            ;

triple centre_ete = (0,0,zsolstice)         ;
triple centre_hiv = (0,0,-zsolstice)         ;

path3 ETE = circle(centre_ete, Rsolstice, Z)   ;
path3 HIV = circle(centre_hiv, Rsolstice, Z)   ;
//~~~~~~~~~ cercle horaire ~~~~~~~~~
path3 cerclehoraire   = arc(origine, R, 0, 0, 90, L)   ;

//TRACAGE DES OBJETS DE LA FIGURE...
// Segments...
draw(poleNord--poleSud,white+dashed);
draw(origine--EqSud,white+dashed);
draw(origine--OrigineHectemories,black+dashed+1/4bp);
draw(origine--S,white+dashed);

draw(meridien,1bp+red)         ;      // MERIDIEN
draw(scale3(R)*unitcircle3,red)      ;      // EQUATEUR
draw(cerclehori,3yellow)         ;      // HORIZON
draw(cerclemax,2bp+dotted+3blue)   ;      // limite supérieure des hectémories
draw(cerclemin,2bp+dotted+3blue)   ;      // limite inférieure des hectémories
draw(ETE,2bp+dotted+1.5yellow)   ;      // SOLSTICE ETE
draw(HIV,2bp+dotted+1.5yellow)   ;      // SOLSTICE HIVER

draw(cerclehoraire,white)         ;      // Cercle horaire

// POINTS...
dot(origine);
dot(poleNord,3bp+green);
dot(poleSud,3bp+green);
dot(EqSud,3bp+green);
dot(EqEst,3bp+green);
dot(Zenith,3bp+yellow);
dot(OrigineHectemories,3bp+blue);
dot(S,3bp+blue);
dot(Seq,3bp+white);

// ETIQUETTES...
label("{\relsize{-3}{$O$}}", origine,NW);
label("{\relsize{-3}{$P$}}", poleNord,0.4NW);
label("{\relsize{-3}{$Z$}}", Zenith,0.5N);
label("{\relsize{-3}{$E$}}", EqSud,0.5NW);
label("{\relsize{-3}{$Est$}}", EqEst,NW);
label("{\relsize{-4}{$I$}}", OrigineHectemories,S);

// Le repère Oxyz...
limits(O,3/2*R*X+3/2*R*Y+3/2*R*Z);
axes3("$x$","$y$","$z$",Arrow3);


J'ai vu qu'il y a avait la version 1.99 pour macintosh. J'ai tenté de l'installer, mais sans succès. Je vais résoudre ce pépin et voir si la version 1.99 règle le problème...
Merci à vous.
DK

Re: Problème en 3D avec les cercles et le "dotted"

Posté : jeu. 24 juin 2010, 22:21
par GM
DK a écrit :... voir si la version 1.99 règle le problème

Elle ne règlera rien.

La solution est de jeter un oeil de temps en temps ici, pour voir s'il y a une réponse sur le forum officiel (en haut à droite) ou s'il y a des modifications de fichiers de la version svn (en bas à gauche).

Re: Problème en 3D avec les cercles et le "dotted"

Posté : ven. 25 juin 2010, 06:47
par GM
Maintenant la nouvelle version svn va régler le problème.

Le 2010-06-24 23:17:09 UTC, sur le forum officiel, jcbowman a écrit :Thanks; this bug is now fixed in svn.