Ne parvenant pas à me connecter ces derniers jours sur ton site, je viens de poser le problème sur le forum d'Asymptote. Seulement, j'ai reçu un email "surprenant"
I am on vacation until August 26.
Andrei
donc, je refais une tentative, et cela marche !
Je souhaiterais faire une couverture pour un ebook. Par exemple, la résolution serait de 504x720. Le format de sortie serait svg, png ou jpg avec la qualité optimale permise par Asymptote.
Quelles options faut-il choisir en ligne de commande ?
Merci.
Code : Tout sélectionner
import polyhedron_js;
currentprojection=orthographic(5,3,2);
currentlight.background=black;
settings.render=8;
size(10cm);
int a=6;
pen p=ZapfChancery(series="m",shape="n");
triple O=(0,0,0), M1=a*X, M2=a*(X+Y), M3=a*Y, M4=a*(X+Y/2+(sqrt(3)/2)*Z);
polyhedron pyra;
pyra[0]=M1--M2--M4--cycle;
pyra[1]=M2--M3--M4--cycle;
pyra[2]=M3--O--M4--cycle;
pyra[3]=O--M1--M4--cycle;
pyra[4]=O--M1--M2--M3--cycle;
draw(surface(pyra),invisible,white+0.5bp);
transform3 hom(real k, triple v){
return shift(v)*scale3(k)*shift(-v);
}
triple[] Z1={};
triple[] Z2={};
triple[] Z3={};
for(int i=1 ; i<a; ++i){
Z1.push(hom(i/a,M1)*M2);
Z2.push(hom(i/a,M2)*M4);
Z3.push(hom(i/a,M1)*M4);
}
for(int i=0 ; i<=a-2 ; ++i){
draw(Z3[i]--Z2[i],white);
draw(Z1[i]--Z3[i],white);
draw(Z1[i]--Z2[a-2-i],white);
}
triple[] T1={};
triple[] T2={};
triple[] T3={};
for(int i=1 ; i<a; ++i){
T1.push(hom(i/a,M2)*M3);
T2.push(hom(i/a,M3)*M4);
T3.push(hom(i/a,M2)*M4);
}
for(int i=0 ; i<=a-2 ; ++i){
draw(T3[i]--T2[i],white);
draw(T1[i]--T3[i],white);
draw(T1[i]--T2[a-2-i],white);
}
triple[] P1={};
triple[] P2={};
triple[] P3={};
for(int i=1 ; i<a; ++i){
P1.push(hom(i/a,O)*M3);
P2.push(hom(i/a,M3)*M4);
P3.push(hom(i/a,O)*M4);
}
for(int i=0 ; i<=a-2 ; ++i){
draw(P3[i]--P2[i],white);
draw(P1[i]--P3[i],white);
draw(P1[i]--P2[a-2-i],white);
}
triple[] Q1={};
triple[] Q2={};
triple[] Q3={};
for(int i=1 ; i<a; ++i){
Q1.push(hom(i/a,M1)*O);
Q2.push(hom(i/a,O)*M4);
Q3.push(hom(i/a,M1)*M4);
}
for(int i=0 ; i<=a-2 ; ++i){
draw(Q3[i]--Q2[i],white);
draw(Q1[i]--Q3[i],white);
draw(Q1[i]--Q2[a-2-i],white);
}
label(scale(1.5)*"Math\'ematiques",(0,0,5),p+white);