Amélioration d'un rendu

Pour toute demande d'aide sur des exemples non finalisés, c'est ici.
Les exemples aboutis et intéressants seront ajoutés aux sous-forums qui suivent.

Règles du forum
Pour toute demande d'aide pour la conception (ou la confirmation d'un code) d'une figure Asymptote, c'est ici.

J'invite ceux qui ont régulièrement des questions à poser à aller dans leur panneau de l'utilisateur pour indiquer dans la signature de leurs messages :

  1. Nom du système d'exploitation (W7 ou Ubuntu 12.04 ou ...)
  2. Version d'Asymptote et éditeur utilisé pour les figures Asymptote
  3. Distribution LaTeX et éditeur utilisé pour les tex.


On va gagner du temps dans les réponses !
Viserion
Messages : 3
Enregistré le : mar. 24 mars 2020, 20:00

Amélioration d'un rendu

Message non lu par Viserion » mer. 25 mars 2020, 12:16

Bonjour,
L'idée est de reproduire le plus fidèlement possible la figure ci-après :
Image
Le code me donne un résultat correct mais pas celui attendu. De plus, je ne parviens pas à tracer le cône ; j'ai essayé avec la structure skeleton qui ne semble pas fonctionner.
J'ai compilé avec la commande :

Code : Tout sélectionner

asy -f pdf -noprc render=4 file.asy
Merci.
Fabrice

Code : Tout sélectionner

triple pA=(0,0,0), pB=(0,0,h), pC=(-R,0,0), pM=(-r,0,0), pF=(0,0,a),
pE=(xpart(pM),ypart(pM), a);
triple axis=Z;

revolution CoRev=cone(pA,R,h,axis=Z,n=1);

surface cylinder=scale(r,r,a)*unitcylinder;

draw(surface(CoRev),orange+opacity(0.4),render);
draw(CoRev,1bp+black);

draw(cylinder,green+opacity(0.5),render(merge=true));

draw(pB--pA^^pA--pC^^pE--pF,dashed);

dot(Label("$C$",align=NW),pC);
dot(Label("$A$",align=SW),pA);
dot(Label("$M$",align=NW),pM);
dot(Label("$B$",align=N),pB);
dot(Label("$F$",align=W),pF);
dot(Label("$E$",align=NW),pE);

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1425
Enregistré le : dim. 7 mars 2010, 14:50

Re: Amélioration d'un rendu

Message non lu par GM » mer. 25 mars 2020, 17:53

Bonjour,

J'ai voulu tester le code mais il est incomplet... et de toute façon, je croule sous les choses à faire pour le suivi des élèves à distance donc je ne pourrai regarder cela aujourd'hui car je dois me lancer dans la création d'une vidéo pour mon cours de TS sur les intégrales et je dois enchainer sur plusieurs créations de codes php/mysql pour inspirer 3 élèves en ISN qui sont sur leur projet de bac.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 31/03/19) :
PC n°1 :Windows 10 - Asymptote(2.59)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.52-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.52-1 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1425
Enregistré le : dim. 7 mars 2010, 14:50

Re: Amélioration d'un rendu

Message non lu par GM » ven. 27 mars 2020, 07:57

Bonjour,

avec le code suivant (complété en essayant de deviner ce qui pouvait manquer au début), j'obtiens ce qui suit (lien).

Code : Tout sélectionner

import solids;

size(0,200);
currentprojection=perspective(10,15,5);

real R=2;
real r=1;
real h=4;
real a=2;

triple pA=(0,0,0), pB=(0,0,h), pC=(-R,0,0), pM=(-r,0,0), pF=(0,0,a),
pE=(xpart(pM),ypart(pM), a);
triple axis=Z;

revolution CoRev=cone(pA,R,h,axis=Z,n=1);

surface cylinder=scale(r,r,a)*unitcylinder;

draw(surface(CoRev),orange+opacity(0.4),render(compression=Low));
draw(CoRev,1bp+black);

draw(cylinder,green+opacity(0.5),render(compression=Low));

draw(pB--pA^^pA--pC^^pE--pF,dashed);

dot(Label("$C$",align=NE),pC);
dot(Label("$A$",align=SW),pA);
dot(Label("$M$",align=NW),pM);
dot(Label("$B$",align=N),pB);
dot(Label("$F$",align=W),pF);
dot(Label("$E$",align=NE),pE);
Rendu avec la version 2.65 et sortie avec l'option html

version 2, avec ajout de currentlight=Viewport; pour remplacer le Headlamp par défaut
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 31/03/19) :
PC n°1 :Windows 10 - Asymptote(2.59)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.52-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.52-1 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1425
Enregistré le : dim. 7 mars 2010, 14:50

Re: Amélioration d'un rendu

Message non lu par GM » ven. 27 mars 2020, 08:13

La galerie d'exemple serait à refaire pour
  • être compatible avec les versions récentes d'Asymptote
  • prendre en compte cette possibilité des sorties en HTML.
... mais je n'ai pas le temps.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 31/03/19) :
PC n°1 :Windows 10 - Asymptote(2.59)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.52-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.52-1 git) + TexLive2018
Merci de préciser la votre !

Viserion
Messages : 3
Enregistré le : mar. 24 mars 2020, 20:00

Re: Amélioration d'un rendu

Message non lu par Viserion » ven. 27 mars 2020, 09:09

Bonjour Gaetan,
En fait je suis déjà inscrit sur le forum avec mon prénom usuel (Fabrice), mais j'ai dû changer d'opérateur et donc d'adresse. Pour tout avouer, je me suis un peu écarté d'Asymptote, et j'ai un peu oublié ! Merci pour le code en cette période compliquée où on est tous submergé de travail ! Par contre, je serais intéressé, quand tout reviendra à la normale, sur les moyens que tu te donnes pour faire une vidéo de cours.
Merci.
Fabrice

Viserion
Messages : 3
Enregistré le : mar. 24 mars 2020, 20:00

Re: Amélioration d'un rendu

Message non lu par Viserion » ven. 27 mars 2020, 09:22

Re,
Je viens de comparer ton code avec le mien : elle est où la différence mais il est vrai que j'ai les yeux qui sortent des orbites avec toutes ces heures passées devant l'écran !

Répondre