Plusieurs vues d'une même figure - addViews

Règles du forum
ATTENTION ! Il est demandé de ne déposer dans ce forum que des exemples en langage Asymptote
  • finalisés
  • que l'on pense intéressants et optimisés
  • et qui se rapportent au thème du forum.
Si certains exemples déposés donnent lieu à de nombreuses modifications, ils seront déplacés et remplacés par un nouveau sujet dans ce forum avec la ou les meilleures propositions.
Pour les demandes d'aide ... il y a un forum spécifique !
Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1512
Enregistré le : dim. 7 mars 2010, 14:50

Plusieurs vues d'une même figure - addViews

Message non lu par GM » dim. 25 déc. 2011, 23:18

Image


Code : Tout sélectionner

import three;
picture pic;
unitsize(pic,4mm);
currentprojection=orthographic((13,-12,4),up=Z);
currentlight=nolight;
viewportmargin=(4mm,4mm);
int  n=10; // nombre de marches
real a=5,  // rapport emmarchement/hauteur d'une marche
     r=28/17,  // rapport giron/hauteur d'une marche
     p=5;      // profondeur du palier
path3 contremarches[], marches[], palier, profil;
surface contremarches3[], marches3[];

for(int k=0; k<n; ++k){
    contremarches.push((0,r*k,k)--(0,r*k,k+1));
    marches.push((0,r*k,k+1)--(0,r*(k+1),k+1));
    profil=profil--contremarches[k]--marches[k];
    contremarches3.push(extrude(contremarches[k],a*X));
    marches3.push(extrude(marches[k],a*X));
    draw(pic,contremarches3[k],.8paleblue,1bp+black);
    draw(pic,marches3[k],paleblue,1bp+black);
}   
palier=(0,r*n,n)--(0,r*n+p,n)--(0,r*n+p,0)--(0,0,0);
draw(pic,extrude(palier,a*X),.8paleblue,1bp+black);
profil=profil--palier--cycle;
draw(pic,surface(profil^^shift(a,0,0)*profil),.8palegray);

projection[][] GMViews={{RightView,FrontView},
                        {currentprojection,TopView}};
addViews(pic,GMViews);
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 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Répondre