diff options
author | Karl Berry <karl@freefriends.org> | 2009-09-20 00:02:10 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-09-20 00:02:10 +0000 |
commit | d66729b2d5bdffdf5c860fdf30eca9e9119c42f2 (patch) | |
tree | 167f073d09029f346c7e4649eac08f3683881e53 /Master | |
parent | 387f35a7d35d0f89cf5ea9e780e13d394058d0ca (diff) |
asymptote doc update
git-svn-id: svn://tug.org/texlive/trunk@15380 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
65 files changed, 805 insertions, 309 deletions
diff --git a/Master/texmf/doc/asymptote/CAD.pdf b/Master/texmf/doc/asymptote/CAD.pdf Binary files differindex 5c22ad7eaa3..13a7826f8cf 100644 --- a/Master/texmf/doc/asymptote/CAD.pdf +++ b/Master/texmf/doc/asymptote/CAD.pdf diff --git a/Master/texmf/doc/asymptote/asymptote.pdf b/Master/texmf/doc/asymptote/asymptote.pdf Binary files differindex b536a5100f2..951444d6fce 100644 --- a/Master/texmf/doc/asymptote/asymptote.pdf +++ b/Master/texmf/doc/asymptote/asymptote.pdf diff --git a/Master/texmf/doc/asymptote/examples/BezierSurface.asy b/Master/texmf/doc/asymptote/examples/BezierSurface.asy index 65410deebca..bf386baf7e5 100644 --- a/Master/texmf/doc/asymptote/examples/BezierSurface.asy +++ b/Master/texmf/doc/asymptote/examples/BezierSurface.asy @@ -5,29 +5,29 @@ string viewpoint="{-24.132780075073242 7.2992024421691895 7.695427417755127}{0.8 //viewpoint=getstring("viewpoint",viewpoint); currentprojection=perspective(viewpoint); -currentlight=adobe; - -triple[][][] P={{ - {(-1.6,0,1.875),(-1.6,-0.3,1.875),(-1.5,-0.3,2.1),(-1.5,0,2.1)}, - {(-2.3,0,1.875),(-2.3,-0.3,1.875),(-2.5,-0.3,2.1),(-2.5,0,2.1)}, - {(-2.7,0,1.875),(-2.7,-0.3,1.875),(-3,-0.3,2.1),(-3,0,2.1)}, - {(-2.7,0,1.65),(-2.7,-0.3,1.65),(-3,-0.3,1.65),(-3,0,1.65)} +triple[][][] P={ + { + {(-1.6,0,1.875),(-2.3,0,1.875),(-2.7,0,1.875),(-2.7,0,1.65),}, + {(-1.6,-0.3,1.875),(-2.3,-0.3,1.875),(-2.7,-0.3,1.875),(-2.7,-0.3,1.65),}, + {(-1.5,-0.3,2.1),(-2.5,-0.3,2.1),(-3,-0.3,2.1),(-3,-0.3,1.65),}, + {(-1.5,0,2.1),(-2.5,0,2.1),(-3,0,2.1),(-3,0,1.65),} },{ - {(-2.7,0,1.65),(-2.7,-0.3,1.65),(-3,-0.3,1.65),(-3,0,1.65)}, - {(-2.7,0,1.425),(-2.7,-0.3,1.425),(-3,-0.3,1.2),(-3,0,1.2)}, - {(-2.5,0,0.975),(-2.5,-0.3,0.975),(-2.65,-0.3,0.7275),(-2.65,0,0.7275)}, - {(-2,0,0.75),(-2,-0.3,0.75),(-1.9,-0.3,0.45),(-1.9,0,0.45)} + {(-2.7,0,1.65),(-2.7,0,1.425),(-2.5,0,0.975),(-2,0,0.75),}, + {(-2.7,-0.3,1.65),(-2.7,-0.3,1.425),(-2.5,-0.3,0.975),(-2,-0.3,0.75),}, + {(-3,-0.3,1.65),(-3,-0.3,1.2),(-2.65,-0.3,0.7275),(-1.9,-0.3,0.45),}, + {(-3,0,1.65),(-3,0,1.2),(-2.65,0,0.7275),(-1.9,0,0.45),} },{ - {(-2.7,0,1.65),(-2.7,0.3,1.65),(-3,0.3,1.65),(-3,0,1.65)}, - {(-2.7,0,1.875),(-2.7,0.3,1.875),(-3,0.3,2.1),(-3,0,2.1)}, - {(-2.3,0,1.875),(-2.3,0.3,1.875),(-2.5,0.3,2.1),(-2.5,0,2.1)}, - {(-1.6,0,1.875),(-1.6,0.3,1.875),(-1.5,0.3,2.1),(-1.5,0,2.1)} + {(-2.7,0,1.65),(-2.7,0,1.875),(-2.3,0,1.875),(-1.6,0,1.875),}, + {(-2.7,0.3,1.65),(-2.7,0.3,1.875),(-2.3,0.3,1.875),(-1.6,0.3,1.875),}, + {(-3,0.3,1.65),(-3,0.3,2.1),(-2.5,0.3,2.1),(-1.5,0.3,2.1),}, + {(-3,0,1.65),(-3,0,2.1),(-2.5,0,2.1),(-1.5,0,2.1),} },{ - {(-2,0,0.75),(-2,0.3,0.75),(-1.9,0.3,0.45),(-1.9,0,0.45)}, - {(-2.5,0,0.975),(-2.5,0.3,0.975),(-2.65,0.3,0.7275),(-2.65,0,0.7275)}, - {(-2.7,0,1.425),(-2.7,0.3,1.425),(-3,0.3,1.2),(-3,0,1.2)}, - {(-2.7,0,1.65),(-2.7,0.3,1.65),(-3,0.3,1.65),(-3,0,1.65)} - }}; + {(-2,0,0.75),(-2.5,0,0.975),(-2.7,0,1.425),(-2.7,0,1.65),}, + {(-2,0.3,0.75),(-2.5,0.3,0.975),(-2.7,0.3,1.425),(-2.7,0.3,1.65),}, + {(-1.9,0.3,0.45),(-2.65,0.3,0.7275),(-3,0.3,1.2),(-3,0.3,1.65),}, + {(-1.9,0,0.45),(-2.65,0,0.7275),(-3,0,1.2),(-3,0,1.65),} + } +}; picture pic; size(pic,15cm); diff --git a/Master/texmf/doc/asymptote/examples/Klein.asy b/Master/texmf/doc/asymptote/examples/Klein.asy index ba3bccd87e9..06ef4271660 100644 --- a/Master/texmf/doc/asymptote/examples/Klein.asy +++ b/Master/texmf/doc/asymptote/examples/Klein.asy @@ -1,19 +1,44 @@ import graph3; -size(200,0); -currentprojection=perspective(40,-100,40); +size(469pt); + +viewportmargin=0; + +currentprojection=perspective( +camera=(25.0851928432063,-30.3337528952473,19.3728775115443), +up=Z, +target=(-0.590622314050054,0.692357205025578,-0.627122488455679), +zoom=1, +autoadjust=false); -// From http://local.wasp.uwa.edu.au/~pbourke/surfaces_curves/klein/ triple f(pair t) { real u=t.x; real v=t.y; - real r=4*(1-cos(u)/2); - real x=6*cos(u)*(1+sin(u))+(u < pi ? r*cos(u)*cos(v) : r*cos(v+pi)); - real y=16*sin(u)+(u < pi ? r*sin(u)*cos(v) : 0); + real r=2-cos(u); + real x=3*cos(u)*(1+sin(u))+r*cos(v)*(u < pi ? cos(u) : -1); + real y=8*sin(u)+(u < pi ? r*sin(u)*cos(v) : 0); real z=r*sin(v); return (x,y,z); } -pen p=rgb(0.2,0.5,0.7); +surface s=surface(f,(0,0),(2pi,2pi),8,8,Spline); +draw(s,lightolive+white); + +string lo="$\displaystyle u\in[0,\pi]: \cases{x=3\cos u(1+\sin u)+(2-\cos u)\cos u\cos v,\cr +y=8\sin u+(2-\cos u)\sin u\cos v,\cr +z=(2-\cos u)\sin v.\cr}$"; + +string hi="$\displaystyle u\in[\pi,2\pi]:\\\cases{x=3\cos u(1+\sin u)-(2-\cos u)\cos v,\cr +y=8\sin u,\cr +z=(2-\cos u)\sin v.\cr}$"; + +real h=0.0125; + +draw(surface(xscale(-0.38)*yscale(-0.18)*lo,s,0,1.7,h)); +draw(surface(xscale(0.26)*yscale(0.1)*rotate(90)*hi,s,4.9,1.4,h)); +draw(s.uequals(0),blue+dashed); +draw(s.uequals(pi),blue+dashed); -draw(surface(f,(0,0),(2pi,2pi),60,60),lightgray,meshpen=p); +currentpicture.add(new void(frame f, transform3 t, picture pic, projection P) { + draw(f,invert(box(min(f,P),max(f,P)),P)); + }); diff --git a/Master/texmf/doc/asymptote/examples/NURBSsurface.asy b/Master/texmf/doc/asymptote/examples/NURBSsurface.asy new file mode 100644 index 00000000000..3fcea79dbbd --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/NURBSsurface.asy @@ -0,0 +1,61 @@ +import three; + +size(10cm); + +currentprojection=perspective(40,40,50); + +// Nonrational surface: +// udegree=3, vdegree=3, nu=5, nv=6; +real[] uknot={0,0,0,0,0.5,1,1,1,1}; +real[] vknot={0,0,0,0,0.4,0.6,1,1,1,1}; + +triple[][] P={{ + (-31.2061,12.001,6.45082), + (-31.3952,14.7353,6.53707), + (-31.5909,21.277,6.70051), + (-31.4284,25.4933,6.76745), + (-31.5413,30.3485,6.68777), + (-31.4896,32.2839,6.58385), + },{ + (-28.279,12.001,7.89625), + (-28.4187,14.7353,8.00954), + (-28.5633,21.277,8.22422), + (-28.4433,25.4933,8.31214), + (-28.5266,30.3485,8.20749), + (-28.4885,32.2839,8.07099), + },{ + (-20,12.001,10.0379), + (-20,14.7353,10.2001), + (-20,21.277,10.5076), + (-20,25.4933,10.6335), + (-20,30.3485,10.4836), + (-20,32.2839,10.2881), + },{ + (-11.721,12.001,7.84024), + (-11.5813,14.7353,7.95269), + (-11.4367,21.277,8.16575), + (-11.5567,25.4933,8.25302), + (-11.4734,30.3485,8.14915), + (-11.5115,32.2839,8.01367), + },{ + (-8.79391,12.001,6.39481), + (-8.60483,14.7353,6.48022), + (-8.40905,21.277,6.64204), + (-8.57158,25.4933,6.70832), + (-8.45874,30.3485,6.62943), + (-8.51041,32.2839,6.52653) + }}; + +draw(P,uknot,vknot,new pen[] {red,green,blue,magenta}); + +// Rational Bezier patch: +// udegree=3, vdegree=3, nu=4, nv=4; +real[] uknot={0,0,0,0,1,1,1,1}; +real[] vknot={0,0,0,0,1,1,1,1}; +triple[][] P=scale3(20)*octant1.P; + +// Optional weights: +real[][] weights=array(P.length,array(P[0].length,1.0)); +weights[1][2]=0.5; + +draw(P,uknot,vknot,weights,blue); diff --git a/Master/texmf/doc/asymptote/examples/RiemannSurface.asy b/Master/texmf/doc/asymptote/examples/RiemannSurface.asy index 68c8f237a19..f32ca4d7539 100644 --- a/Master/texmf/doc/asymptote/examples/RiemannSurface.asy +++ b/Master/texmf/doc/asymptote/examples/RiemannSurface.asy @@ -8,6 +8,6 @@ currentprojection=orthographic(10,10,30); currentlight=(10,10,5); triple f(pair t) {return (exp(t.x)*cos(t.y),exp(t.x)*sin(t.y),t.y);} -surface s=surface(f,(-4,-2pi),(0,4pi),30,60); +surface s=surface(f,(-4,-2pi),(0,4pi),8,16,Spline); s.colors(palette(s.map(zpart),Rainbow())); -draw(s,meshpen=black); +draw(s); diff --git a/Master/texmf/doc/asymptote/examples/RiemannSurfaceRoot.asy b/Master/texmf/doc/asymptote/examples/RiemannSurfaceRoot.asy index 50cb9ead31d..93bd7035842 100644 --- a/Master/texmf/doc/asymptote/examples/RiemannSurfaceRoot.asy +++ b/Master/texmf/doc/asymptote/examples/RiemannSurfaceRoot.asy @@ -11,7 +11,7 @@ currentprojection=orthographic(10,10,30); currentlight=(10,10,5); triple f(pair t) {return (t.x*cos(t.y),t.x*sin(t.y),t.x^(1/n)*sin(t.y/n));} -surface s=surface(f,(0,0),(1,2pi*n),30,60); +surface s=surface(f,(0,0),(1,2pi*n),8,16,Spline); s.colors(palette(s.map(zpart),Rainbow())); draw(s,meshpen=black); diff --git a/Master/texmf/doc/asymptote/examples/animations/earthmoon.asy b/Master/texmf/doc/asymptote/examples/animations/earthmoon.asy index abd8ac9f431..08c578d86d2 100644 --- a/Master/texmf/doc/asymptote/examples/animations/earthmoon.asy +++ b/Master/texmf/doc/asymptote/examples/animations/earthmoon.asy @@ -9,7 +9,7 @@ settings.prc=false; settings.thick=false; settings.outformat="mpg"; currentprojection=orthographic(5,4,2); -currentlight=light(specular=black,(0.1,-0.1,1)); +currentlight=light(specular=black,(0.1,-0.1,1),viewport=true); size(15cm,0); @@ -23,17 +23,17 @@ real xST(real t) {return ast*cos(t)+cst;} real yST(real t) {return bst*sin(t);} real zST(real t) {return 0;} -real xTL(real t) {return atl*cos(27*t);} -real yTL(real t) {return btl*sin(27*t);} +real xTL(real t) {return atl*cos(27t);} +real yTL(real t) {return btl*sin(27t);} real zTL(real t) {return 0;} -real xLl(real t) {return Rl*cos(27*t);} -real yLl(real t) {return Rl*sin(27*t);} +real xLl(real t) {return Rl*cos(27t);} +real yLl(real t) {return Rl*sin(27t);} real zLl(real t) {return 0;} -real xTt(real t) {return Rtl*cos(100*(t))/5;} -real yTt(real t) {return Rtl*sin(100*(t))/5;} +real xTt(real t) {return Rtl*cos(100t)/5;} +real yTt(real t) {return Rtl*sin(100t)/5;} real zTt(real t) {return 0;} real xl(real t) {return xST(t)+xTL(t)+xLl(t);} @@ -48,8 +48,8 @@ real xL(real t) {return xST(t)+xTL(t);} real yL(real t) {return yST(t)+yTL(t);} real zL(real t) {return 0;} -path3 Pl=graph(xl,yl,zl,0,2*pi,1000),Pt=graph(xt,yt,zt,0,2*pi,3000), -Pts=graph(xST,yST,zST,0,2*pi,500); +path3 Pl=graph(xl,yl,zl,0,2pi,1000),Pt=graph(xt,yt,zt,0,2pi,3000), +Pts=graph(xST,yST,zST,0,2pi,500); picture pic; @@ -63,6 +63,7 @@ surface terre=scale3(Rtl/5)*unitsphere; surface lune=scale3(Rl)*unitsphere; int n=100; + real step=2pi/n; for(int i=0; i < n; ++i) { real k=i*step; diff --git a/Master/texmf/doc/asymptote/examples/animations/glmovie.asy b/Master/texmf/doc/asymptote/examples/animations/glmovie.asy new file mode 100644 index 00000000000..c3d86481b1b --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/animations/glmovie.asy @@ -0,0 +1,21 @@ +settings.autoplay=true; +settings.loop=true; + +import graph3; +import animate; +currentprojection=orthographic(1,-2,0.5); + +animation A; +int n=25; + +for(int i=0; i < n; ++i) { + picture pic; + size3(pic,6cm); + real k=i/n*pi; + real f(pair z) {return 4cos(abs(z)-k)*exp(-abs(z)/6);} + draw(pic,surface(f,(-4pi,-4pi),(4pi,4pi),Spline),paleblue); + draw(pic,shift(i*6Z/n)*unitsphere,yellow); + A.add(pic); +} + +A.glmovie(); diff --git a/Master/texmf/doc/asymptote/examples/animations/inlinemovie3.tex b/Master/texmf/doc/asymptote/examples/animations/inlinemovie3.tex index c46a17d3e59..4cd9cce3150 100644 --- a/Master/texmf/doc/asymptote/examples/animations/inlinemovie3.tex +++ b/Master/texmf/doc/asymptote/examples/animations/inlinemovie3.tex @@ -19,13 +19,12 @@ settings.prc=false; import graph3; import animate; currentprojection=orthographic(1,-2,0.5); -currentlight=(1,1,20); + animation A=animation("movie3"); int n=20; for(int i=0; i < n; ++i) { picture pic; size3(pic,12cm,12cm,8cm); - limits((-2,-2,-2),(2,2,2)); real k=i/n*pi; real f(pair z) {return 4cos(abs(z)-k)*exp(-abs(z)/6);} draw(pic,surface(f,(-4pi,-4pi),(4pi,4pi),Spline),paleblue); diff --git a/Master/texmf/doc/asymptote/examples/animations/sphere.asy b/Master/texmf/doc/asymptote/examples/animations/sphere.asy index e6bcb589add..56c5f73e3b6 100644 --- a/Master/texmf/doc/asymptote/examples/animations/sphere.asy +++ b/Master/texmf/doc/asymptote/examples/animations/sphere.asy @@ -3,7 +3,9 @@ import animation; currentprojection=orthographic((0,5,2)); currentlight=(0,5,5); + settings.thick=false; +settings.render=0; int nbpts=200; real step=2*pi/nbpts; diff --git a/Master/texmf/doc/asymptote/examples/animations/torusanimation.asy b/Master/texmf/doc/asymptote/examples/animations/torusanimation.asy index 9073ab2b56a..8370a0c25af 100644 --- a/Master/texmf/doc/asymptote/examples/animations/torusanimation.asy +++ b/Master/texmf/doc/asymptote/examples/animations/torusanimation.asy @@ -26,8 +26,11 @@ for(int i=0; i < n; ++i) { p[i]=graph(g,0,1,operator ..); } -revolution torus=revolution(shift(R*X)*Circle(O,a,Y,32),Z); -surface s=surface(torus); +triple f(pair t) { + return ((R+a*cos(t.y))*cos(t.x),(R+a*cos(t.y))*sin(t.x),a*sin(t.y)); +} + +surface s=surface(f,(0,0),(2pi,2pi),8,8,Spline); for(int i=0; i < n; ++i){ picture fig; diff --git a/Master/texmf/doc/asymptote/examples/condor.asy b/Master/texmf/doc/asymptote/examples/condor.asy index d109335e3bf..d3b48728ea0 100644 --- a/Master/texmf/doc/asymptote/examples/condor.asy +++ b/Master/texmf/doc/asymptote/examples/condor.asy @@ -6,7 +6,7 @@ import graph3; size(300,300,IgnoreAspect); currentprojection=orthographic(0,-1,0,center=true); -currentlight=adobe; +currentlight=White; real K=7; triple condor(pair t) @@ -26,7 +26,7 @@ triple condor(pair t) log(d)*((-B-1)/2)); } -surface s=surface(condor,(-1,0),(1,K),64); +surface s=surface(condor,(-1,0),(1,K),16,Spline); s.colors(palette(s.map(zpart),Rainbow())); -draw(s,meshpen=black); +draw(s); diff --git a/Master/texmf/doc/asymptote/examples/contextfonts.asy b/Master/texmf/doc/asymptote/examples/contextfonts.asy index ef1b1ddfe50..39177abdba3 100644 --- a/Master/texmf/doc/asymptote/examples/contextfonts.asy +++ b/Master/texmf/doc/asymptote/examples/contextfonts.asy @@ -1,8 +1,10 @@ settings.tex="context"; +// Work around ConTeXT bug for font sizes less than 12pt: +texpreamble("\setupbodyfont[8pt]"); usetypescript("iwona"); usetypescript("antykwa-torunska"); label("$A$",0,N,font("iwona")); -label("$A$",0,S,font("antykwa")+red); +label("$A$",0,S,font("antykwa",8pt)+red); diff --git a/Master/texmf/doc/asymptote/examples/cylinder.asy b/Master/texmf/doc/asymptote/examples/cylinder.asy index c574f577bbd..d326ea579a2 100644 --- a/Master/texmf/doc/asymptote/examples/cylinder.asy +++ b/Master/texmf/doc/asymptote/examples/cylinder.asy @@ -1,6 +1,7 @@ import solids; size(0,100); +currentlight=Viewport; revolution r=cylinder(O,1,1.5,Y+Z); draw(surface(r),green); diff --git a/Master/texmf/doc/asymptote/examples/datagraph.asy b/Master/texmf/doc/asymptote/examples/datagraph.asy index 299b1594a0f..62cca8ea896 100644 --- a/Master/texmf/doc/asymptote/examples/datagraph.asy +++ b/Master/texmf/doc/asymptote/examples/datagraph.asy @@ -9,4 +9,4 @@ draw(graph(x,y),red); xaxis("$x$",BottomTop,LeftTicks); yaxis("$y$",LeftRight, - RightTicks(Label(fontsize(8)),new real[]{0,4,9})); + RightTicks(Label(fontsize(8pt)),new real[]{0,4,9})); diff --git a/Master/texmf/doc/asymptote/examples/diatom.asy b/Master/texmf/doc/asymptote/examples/diatom.asy index 905b432c90d..2ded75bf0ea 100644 --- a/Master/texmf/doc/asymptote/examples/diatom.asy +++ b/Master/texmf/doc/asymptote/examples/diatom.asy @@ -8,9 +8,9 @@ string data="diatom.csv"; string[] group; int[] begin,end; -defaultpen(fontsize(8)+overwrite(MoveQuiet)); +defaultpen(fontsize(8pt)+overwrite(MoveQuiet)); -file in=line(csv(input(data))); +file in=input(data).line().csv(); string depthlabel=in; string yearlabel=in; diff --git a/Master/texmf/doc/asymptote/examples/filegraph.asy b/Master/texmf/doc/asymptote/examples/filegraph.asy index c56dd0234f3..4b05c5bcbd7 100644 --- a/Master/texmf/doc/asymptote/examples/filegraph.asy +++ b/Master/texmf/doc/asymptote/examples/filegraph.asy @@ -2,8 +2,8 @@ import graph; size(200,150,IgnoreAspect); -file in=line(input("filegraph.dat")); -real[][] a=dimension(in,0,0); +file in=input("filegraph.dat").line(); +real[][] a=in.dimension(0,0); a=transpose(a); real[] x=a[0]; diff --git a/Master/texmf/doc/asymptote/examples/filesurface.asy b/Master/texmf/doc/asymptote/examples/filesurface.asy index 42275715a0b..702b503fc28 100644 --- a/Master/texmf/doc/asymptote/examples/filesurface.asy +++ b/Master/texmf/doc/asymptote/examples/filesurface.asy @@ -3,11 +3,11 @@ import palette; size3(200,IgnoreAspect); -file in=line(input("filesurface.dat")); +file in=input("filesurface.dat").line(); real[] x=in; real[] y=in; -real[][] f=dimension(in,0,0); +real[][] f=in.dimension(0,0); triple f(pair t) { int i=round(t.x); @@ -29,6 +29,6 @@ triple target=0.5*(m+M); currentprojection=perspective(camera=target+realmult(dir(68,225),M-m), target=target); -xaxis3("$x$",Bounds(),InTicks); -yaxis3("$y$",Bounds(),InTicks(Step=1,step=0.1)); -zaxis3("$z$",Bounds(),InTicks); +xaxis3("$x$",Bounds,InTicks); +yaxis3("$y$",Bounds,InTicks(Step=1,step=0.1)); +zaxis3("$z$",Bounds,InTicks); diff --git a/Master/texmf/doc/asymptote/examples/galleon.asy b/Master/texmf/doc/asymptote/examples/galleon.asy index 6cd0f4545df..1221fd5c862 100644 --- a/Master/texmf/doc/asymptote/examples/galleon.asy +++ b/Master/texmf/doc/asymptote/examples/galleon.asy @@ -9,6 +9,6 @@ currentprojection=orthographic(0,2,5,up=Y); pen[] surfacepen={darkred,brown,darkred+orange,heavyred,heavyred,darkred+orange, palegreen+blue+lightgrey,darkred,darkred,yellow,darkred,white, white,white,white,white,white}; -surfacepen.cyclic(true); +surfacepen.cyclic=true; draw(obj("galleon.obj",verbose=false,surfacepen)); diff --git a/Master/texmf/doc/asymptote/examples/helix.asy b/Master/texmf/doc/asymptote/examples/helix.asy index 768add3481a..0925e0821b1 100644 --- a/Master/texmf/doc/asymptote/examples/helix.asy +++ b/Master/texmf/doc/asymptote/examples/helix.asy @@ -15,6 +15,6 @@ draw(p,Arrow3); scale(true); -xaxis3(XZ()*"$x$",Bounds(),red,InTicks(Label,2,2)); -yaxis3(YZ()*"$y$",Bounds(),red,InTicks(beginlabel=false,Label,2,2)); -zaxis3(XZ()*"$z$",Bounds(),red,InTicks); +xaxis3(XZ()*"$x$",Bounds,red,InTicks(Label,2,2)); +yaxis3(YZ()*"$y$",Bounds,red,InTicks(beginlabel=false,Label,2,2)); +zaxis3(XZ()*"$z$",Bounds,red,InTicks); diff --git a/Master/texmf/doc/asymptote/examples/label3.asy b/Master/texmf/doc/asymptote/examples/label3.asy index 5c966b0d9a5..fdf8d512e39 100644 --- a/Master/texmf/doc/asymptote/examples/label3.asy +++ b/Master/texmf/doc/asymptote/examples/label3.asy @@ -2,6 +2,6 @@ import three; currentprojection=perspective(1,1,1,up=Y); -label("$\displaystyle\int_{-\infty}^{+\infty} e^{-\alpha x^2}\,dx= +label(scale(4)*"$\displaystyle\int_{-\infty}^{+\infty} e^{-\alpha x^2}\,dx= \sqrt{\frac{\pi}{\alpha}}$",O,blue); diff --git a/Master/texmf/doc/asymptote/examples/label3ribbon.asy b/Master/texmf/doc/asymptote/examples/label3ribbon.asy index d974b2fb748..59ccbc9237c 100644 --- a/Master/texmf/doc/asymptote/examples/label3ribbon.asy +++ b/Master/texmf/doc/asymptote/examples/label3ribbon.asy @@ -2,5 +2,5 @@ import three; currentprojection=perspective(100,100,200,up=Y); -draw(extrude(texpath("$\displaystyle\int_{-\infty}^{+\infty}e^{-\alpha x^2}\,dx= -\sqrt{\frac{\pi}{\alpha}}$"),2Z),blue); +draw(scale3(4)*extrude(texpath("$\displaystyle\int_{-\infty}^{+\infty} +e^{-\alpha x^2}\,dx=\sqrt{\frac{\pi}{\alpha}}$"),2Z),blue); diff --git a/Master/texmf/doc/asymptote/examples/label3solid.asy b/Master/texmf/doc/asymptote/examples/label3solid.asy index 5eb955ff482..476d41fdbc3 100644 --- a/Master/texmf/doc/asymptote/examples/label3solid.asy +++ b/Master/texmf/doc/asymptote/examples/label3solid.asy @@ -2,5 +2,5 @@ import three; currentprojection=perspective(100,100,200,up=Y); -draw(extrude("$\displaystyle\int_{-\infty}^{+\infty}e^{-\alpha x^2}\,dx= -\sqrt{\frac{\pi}{\alpha}}$",2Z),blue); +draw(scale3(4)*extrude("$\displaystyle\int_{-\infty}^{+\infty} +e^{-\alpha x^2}\,dx=\sqrt{\frac{\pi}{\alpha}}$",2Z),blue); diff --git a/Master/texmf/doc/asymptote/examples/latexusage.tex b/Master/texmf/doc/asymptote/examples/latexusage.tex index 6cbd1cb2a75..f073f80258f 100644 --- a/Master/texmf/doc/asymptote/examples/latexusage.tex +++ b/Master/texmf/doc/asymptote/examples/latexusage.tex @@ -83,7 +83,7 @@ the \verb+{attach=true}+ option: import three; currentprojection=orthographic(5,4,2); draw(unitcube,blue); -label("$V-E+F=2$",(0,1,0.5),3Y,blue+fontsize(17)); +label("$V-E+F=2$",(0,1,0.5),3Y,blue+fontsize(17pt)); \end{asy} \end{center} @@ -100,7 +100,7 @@ dot(z1,red+0.15cm); dot(z2,darkgreen+0.3cm); label("$m$",z1,1.2N,red); label("$M$",z2,1.5N,darkgreen); -label("$\hat{\ }$",zf,0.2*S,fontsize(24)+blue); +label("$\hat{\ }$",zf,0.2*S,fontsize(24pt)+blue); pair s=-0.2*I; draw("$x$",z0+s--z1+s,N,red,Arrows,Bars,PenMargins); diff --git a/Master/texmf/doc/asymptote/examples/layers.asy b/Master/texmf/doc/asymptote/examples/layers.asy new file mode 100644 index 00000000000..4fe745f6a3c --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/layers.asy @@ -0,0 +1,44 @@ +usepackage("ocg"); +settings.tex="pdflatex"; + +size(0,150); + +pen colour1=red; +pen colour2=green; + +pair z0=(0,0); +pair z1=(-1,0); +pair z2=(1,0); +real r=1.5; +path c1=circle(z1,r); +path c2=circle(z2,r); + +begin("A"); +fill(c1,colour1); +end(); + +fill(c2,colour2); + +picture intersection; +fill(intersection,c1,colour1+colour2); +clip(intersection,c2); + +add(intersection); + +draw(c1); +draw(c2); + +label("$A$",z1); + +begin("B"); +label("$B$",z2); +end(); + +pair z=(0,-2); +real m=3; +margin BigMargin=Margin(0,m*dot(unit(z1-z),unit(z0-z))); + +draw(Label("$A\cap B$",0),conj(z)--z0,Arrow,BigMargin); +draw(Label("$A\cup B$",0),z--z0,Arrow,BigMargin); +draw(z--z1,Arrow,Margin(0,m)); +draw(z--z2,Arrow,Margin(0,m)); diff --git a/Master/texmf/doc/asymptote/examples/leastsquares.asy b/Master/texmf/doc/asymptote/examples/leastsquares.asy index c2f3e027aae..cb2b8f3a42b 100644 --- a/Master/texmf/doc/asymptote/examples/leastsquares.asy +++ b/Master/texmf/doc/asymptote/examples/leastsquares.asy @@ -3,9 +3,9 @@ size(400,200,IgnoreAspect); import graph; import stats; -file fin=line(input("leastsquares.dat")); +file fin=input("leastsquares.dat").line(); -real[][] a=dimension(fin,0,0); +real[][] a=fin.dimension(0,0); a=transpose(a); real[] t=a[0], rho=a[1]; diff --git a/Master/texmf/doc/asymptote/examples/lever.asy b/Master/texmf/doc/asymptote/examples/lever.asy index e30de87540f..a0c81f5a47a 100644 --- a/Master/texmf/doc/asymptote/examples/lever.asy +++ b/Master/texmf/doc/asymptote/examples/lever.asy @@ -10,7 +10,7 @@ dot(z1,red+0.15cm); dot(z2,darkgreen+0.3cm); label("$m$",z1,1.2N,red); label("$M$",z2,1.5N,darkgreen); -label("$\hat{\ }$",zf,0.2*S,fontsize(24)+blue); +label("$\hat{\ }$",zf,0.2*S,fontsize(24pt)+blue); pair s=-0.2*I; draw("$x$",z0+s--z1+s,N,red,Arrows,Bars,PenMargins); diff --git a/Master/texmf/doc/asymptote/examples/lmfit1.asy b/Master/texmf/doc/asymptote/examples/lmfit1.asy new file mode 100644 index 00000000000..c25a7c4b4be --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/lmfit1.asy @@ -0,0 +1,37 @@ +import lmfit; +import graph; + +size(10cm, 7cm, IgnoreAspect); + +real[] date = { 1790, 1800, 1810, 1820, 1830, 1840, 1850, 1860, 1870, 1880, +1890, 1900, 1910, 1920, 1930, 1940, 1950, 1960, 1970, 1980, 1990 }; +real[] population = { 3.929, 5.308, 7.240, 9.638, 12.866, 17.069, 23.192, 31.443, +38.558, 50.156, 62.948, 75.996, 91.972, 105.711, 122.775, 131.669, 150.697, +179.323, 203.185, 226.546, 248.710 }; + +real t0 = 1776; + +real P(real[] params, real t) { + real P0 = params[0]; + real K = params[1]; + real r = params[2]; + return (K * P0) / (P0 + (K - P0) * exp(-r * (t - t0))); +} + +real[] params = { 10, 500, 0.1 }; + +real res = lmfit.fit(date, population, P, params).norm; + +write("P_0 = ", params[0]); +write("K = ", params[1]); +write("r = ", params[2]); +write("error = ", res); + +real P(real t) { + return P(params, t); +} + +draw(graph(date, population), blue); +draw(graph(P, t0, 2000), red); +xaxis("Year", BottomTop, LeftTicks); +yaxis("Population in millions", LeftRight, RightTicks); diff --git a/Master/texmf/doc/asymptote/examples/loggraph.asy b/Master/texmf/doc/asymptote/examples/loggraph.asy index 9dee2ffbbff..edd9d3e0a67 100644 --- a/Master/texmf/doc/asymptote/examples/loggraph.asy +++ b/Master/texmf/doc/asymptote/examples/loggraph.asy @@ -8,8 +8,8 @@ scale(Log,Log); draw(graph(f,0.1,10)); -//xlimits(1,10); -//ylimits(0.1,1); +//xlimits(1,10,Crop); +//ylimits(0.1,1,Crop); dot(Label("(3,5)",align=S),Scale((3,5))); diff --git a/Master/texmf/doc/asymptote/examples/logo.asy b/Master/texmf/doc/asymptote/examples/logo.asy index 3cd20a573f4..d180558ad34 100644 --- a/Master/texmf/doc/asymptote/examples/logo.asy +++ b/Master/texmf/doc/asymptote/examples/logo.asy @@ -3,7 +3,7 @@ size(140,80,IgnoreAspect); picture logo(pair s=0, pen q) { picture pic; - pen p=linewidth(2)+fontsize(24)+q; + pen p=linewidth(2)+fontsize(24pt)+q; real a=-0.4; real b=0.95; real y1=-5; diff --git a/Master/texmf/doc/asymptote/examples/logo3.asy b/Master/texmf/doc/asymptote/examples/logo3.asy index 6fc73dc9470..932efaca410 100644 --- a/Master/texmf/doc/asymptote/examples/logo3.asy +++ b/Master/texmf/doc/asymptote/examples/logo3.asy @@ -3,7 +3,7 @@ import three; size(560,320,IgnoreAspect); size3(140,80,15); currentprojection=perspective(-3,20,10,up=Y); -currentlight=adobe; +currentlight=White; path[] outline; @@ -17,7 +17,7 @@ outline.push((0,y1){dir(88.3)}::{dir(20)}(b,0)); real c=0.5*a; pair z=(0,2.5); path[] text = shift(0,2)*scale(0.01,0.15)* - texpath(Label("{\it symptote}",z,0.25*E+0.169S,fontsize(24))); + texpath(Label("{\it symptote}",z,0.25*E+0.169S,fontsize(24pt))); outline.append(text); pair w=(0,1.7); outline.push(intersectionpoint(A,w-1--w)--w); diff --git a/Master/texmf/doc/asymptote/examples/mosquito.asy b/Master/texmf/doc/asymptote/examples/mosquito.asy index 288e253bfca..7e299d264d3 100644 --- a/Master/texmf/doc/asymptote/examples/mosquito.asy +++ b/Master/texmf/doc/asymptote/examples/mosquito.asy @@ -3,7 +3,7 @@ size(9cm,10cm,IgnoreAspect); pair d=(1,0.25); real s=1.6d.x; real y=0.6; -defaultpen(fontsize(8)); +defaultpen(fontsize(8pt)); picture box(string s, pair z=(0,0)) { picture pic; diff --git a/Master/texmf/doc/asymptote/examples/multicontour.asy b/Master/texmf/doc/asymptote/examples/multicontour.asy index 5e4ea0c06f6..0e8476de922 100644 --- a/Master/texmf/doc/asymptote/examples/multicontour.asy +++ b/Master/texmf/doc/asymptote/examples/multicontour.asy @@ -8,7 +8,7 @@ real[] c=new real[n]; for(int i=0; i < n; ++i) c[i]=(i-n/2)/n; pen[] p=sequence(new pen(int i) { - return (c[i] >= 0 ? solid : dashed)+fontsize(6); + return (c[i] >= 0 ? solid : dashed)+fontsize(6pt); },c.length); Label[] Labels=sequence(new Label(int i) { diff --git a/Master/texmf/doc/asymptote/examples/odetest.asy b/Master/texmf/doc/asymptote/examples/odetest.asy new file mode 100644 index 00000000000..68a7a2eca67 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/odetest.asy @@ -0,0 +1,44 @@ +import ode; + +write("integration test"); +real f(real t, real x) {return cos(x);} +write(integrate(1,f,0,10,0.1,dynamic=true,0.0002,0.0004,RK3BS,verbose=true)); +write(); + +write("system integration test"); +real[] f(real t, real[] x) {return new real[] {x[1],1.5*x[0]^2};} +write(integrate(new real[] {4,-8},f,0,1,n=100,dynamic=true,tolmin=0.0002, + tolmax=0.0004,RK3BS,verbose=true)); +write(); + +write("simultaneous newton test"); +real[] function(real[] x) { + return new real[] {x[0]^2+x[1]^2-25,(x[0]-6)^2+x[1]^2-25}; +} +real[][] fJac(real[] x) { + return new real[][] {{2*x[0],2*x[1]},{2*(x[0]-6),2*x[1]}}; +} +write(newton(function,fJac,new real[] {0,-1})); +write(); + + +write("BVP solver test"); +write("Finding initial conditions that solve w''(t)=1.5*w(t), w(0)=4, w(1)=1"); +real[] initial(real[] x) { + return new real[] {4,x[0]}; +} + +real[] discrepancy(real[] x) { + write("Error: ",x[0]-1); + return new real[] {x[0]-1}; +} + +write(solveBVP(f,0,1,n=10,initial,discrepancy,guess=new real[] {-30},RK4, + iterations=10)); +write(); +write(solveBVP(f,0,1,n=100,initial,discrepancy,guess=new real[] {-30},RK4, + iterations=10)); +write(); +write(solveBVP(f,0,1,n=10000,initial,discrepancy,guess=new real[] {-30},RK4, + iterations=10)); +write(); diff --git a/Master/texmf/doc/asymptote/examples/p-orbital.asy b/Master/texmf/doc/asymptote/examples/p-orbital.asy new file mode 100644 index 00000000000..570d3f86b57 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/p-orbital.asy @@ -0,0 +1,28 @@ +import graph3; +import palette; +size(200); +currentprojection=orthographic(6,8,2); + +real c0=0.1; + +real f(real r) {return r*(1-r/6)*exp(-r/3);} + +triple f(pair t) { + real r=t.x; + real phi=t.y; + real f=f(r); + real s=max(min(c0/f,1),-1); + real R=r*sqrt(1-s^2); + return (R*cos(phi),R*sin(phi),r*s); +} + +bool cond(pair t) {return f(t.x) != 0;} + +real R=abs((20,20,20)); +surface s=surface(f,(0,0),(R,2pi),100,8,Spline,cond); + +s.colors(palette(s.map(abs),Gradient(palegreen,heavyblue))); +draw(s); +draw(zscale3(-1)*s); + +axes3("$x$","$y$","$z$",Arrow3); diff --git a/Master/texmf/doc/asymptote/examples/parametricelevation.asy b/Master/texmf/doc/asymptote/examples/parametricelevation.asy index 0c800f3f4ac..52cec8728a5 100644 --- a/Master/texmf/doc/asymptote/examples/parametricelevation.asy +++ b/Master/texmf/doc/asymptote/examples/parametricelevation.asy @@ -6,5 +6,5 @@ currentprojection=orthographic(4,2,4); triple f(pair z) {return expi(z.x,z.y);} -surface s=surface(f,(0,0),(pi,2pi),30); +surface s=surface(f,(0,0),(pi,2pi),10,Spline); draw(s,mean(palette(s.map(zpart),BWRainbow())),black,nolight); diff --git a/Master/texmf/doc/asymptote/examples/parametricsurface.asy b/Master/texmf/doc/asymptote/examples/parametricsurface.asy index d020bbe6e7f..f78e8470658 100644 --- a/Master/texmf/doc/asymptote/examples/parametricsurface.asy +++ b/Master/texmf/doc/asymptote/examples/parametricsurface.asy @@ -11,12 +11,13 @@ triple f(pair t) { } pen p=rgb(0.2,0.5,0.7); +surface s=surface(f,(0,0),(2pi,2pi),8,8,Spline); // surface only -//draw(surface(f,(0,0),(2pi,2pi),30,15)); +draw(s,lightgray); // mesh only -//draw(surface(f,(0,0),(2pi,2pi),30,15),nullpen,meshpen=p); +// draw(s,nullpen,meshpen=p); // surface & mesh -draw(surface(f,(0,0),(2pi,2pi),30,15),lightgray,meshpen=p); +// draw(s,lightgray,meshpen=p); diff --git a/Master/texmf/doc/asymptote/examples/pathintersectsurface.asy b/Master/texmf/doc/asymptote/examples/pathintersectsurface.asy index 5e9f4e54905..b69b0b859a5 100644 --- a/Master/texmf/doc/asymptote/examples/pathintersectsurface.asy +++ b/Master/texmf/doc/asymptote/examples/pathintersectsurface.asy @@ -1,6 +1,8 @@ size(500); import graph3; +currentprojection=perspective(-5,-4,2); + path3 g=randompath3(10); draw(g,red+thin()); diff --git a/Master/texmf/doc/asymptote/examples/pdb.asy b/Master/texmf/doc/asymptote/examples/pdb.asy index bef21dc2277..e06b1241bce 100644 --- a/Master/texmf/doc/asymptote/examples/pdb.asy +++ b/Master/texmf/doc/asymptote/examples/pdb.asy @@ -6,7 +6,7 @@ import cpkcolors; bool getviews=true; -currentlight=adobe; +currentlight=White; //currentlight=nolight; size(200); diff --git a/Master/texmf/doc/asymptote/examples/pipeintersection.asy b/Master/texmf/doc/asymptote/examples/pipeintersection.asy index b22574c13c2..d65b8b562ea 100644 --- a/Master/texmf/doc/asymptote/examples/pipeintersection.asy +++ b/Master/texmf/doc/asymptote/examples/pipeintersection.asy @@ -1,7 +1,6 @@ import graph3; currentprojection=orthographic(5,4,2); -currentlight=adobe; size(12cm,0); diff --git a/Master/texmf/doc/asymptote/examples/polararea.asy b/Master/texmf/doc/asymptote/examples/polararea.asy index 42d3729914c..15d42ffd00e 100644 --- a/Master/texmf/doc/asymptote/examples/polararea.asy +++ b/Master/texmf/doc/asymptote/examples/polararea.asy @@ -28,9 +28,9 @@ pair zmax=polar(f(thetamax),thetamax); draw((0,0)--zmin,dotted+red); draw((0,0)--zmax,dotted+blue); -draw("$\theta_*$",arc((0,0),0.5*rmin,0,degrees(thetamin)),red+fontsize(10), +draw("$\theta_*$",arc((0,0),0.5*rmin,0,degrees(thetamin)),red+fontsize(10pt), PenMargins); -draw("$\theta^*$",arc((0,0),0.5*rmax,0,degrees(thetamax)),blue+fontsize(10), +draw("$\theta^*$",arc((0,0),0.5*rmax,0,degrees(thetamax)),blue+fontsize(10pt), PenMargins); draw(arc((0,0),rmin,degrees(theta1),degrees(theta2)),red,PenMargins); diff --git a/Master/texmf/doc/asymptote/examples/polarcircle.asy b/Master/texmf/doc/asymptote/examples/polarcircle.asy index c08160cde69..ce7ed948199 100644 --- a/Master/texmf/doc/asymptote/examples/polarcircle.asy +++ b/Master/texmf/doc/asymptote/examples/polarcircle.asy @@ -7,7 +7,7 @@ pair F(real x) {return (x,f(x));} draw(polargraph(f,0,pi,operator ..)); -defaultpen(fontsize(10)); +defaultpen(fontsize(10pt)); xaxis("$x$"); yaxis("$y$"); diff --git a/Master/texmf/doc/asymptote/examples/poster.asy b/Master/texmf/doc/asymptote/examples/poster.asy index d476dd079de..cfe4ad855e3 100644 --- a/Master/texmf/doc/asymptote/examples/poster.asy +++ b/Master/texmf/doc/asymptote/examples/poster.asy @@ -11,22 +11,22 @@ xaxis(background,grey); yaxis(background,-0.25,0.25,grey); real a=1.2/pi; draw(background,graph(background,f,-a,a,10000),grey); -label(background,"$x\sin\frac{1}{x}$",F(0.92/pi),3SE,grey+fontsize(14)); +label(background,"$x\sin\frac{1}{x}$",F(0.92/pi),3SE,grey+fontsize(14pt)); frame f=background.fit(); box(f,RadialShade(yellow,0.6*yellow+red),above=false); background.erase(); add(background,f); -title("Young Researchers' Conference",align=3S,fontsize(48)); +title("Young Researchers' Conference",align=3S,fontsize(48pt)); center("University of Alberta, Edmonton, April 1--2, 2006"); skip(4); center("A general conference for\\ the mathematical and statistical sciences\\ -for graduate students, by graduate students.",fontsize(32)); +for graduate students, by graduate students.",fontsize(32pt)); label("Registration and abstract submission online.",(0,-0.5)); label("\tt http://www.pims.math.ca/science/2006/06yrc/",point(SW),NE, - black+fontsize(18)); + black+fontsize(18pt)); diff --git a/Master/texmf/doc/asymptote/examples/projectelevation.asy b/Master/texmf/doc/asymptote/examples/projectelevation.asy index 19918c241c9..6ffe5126633 100644 --- a/Master/texmf/doc/asymptote/examples/projectelevation.asy +++ b/Master/texmf/doc/asymptote/examples/projectelevation.asy @@ -3,7 +3,6 @@ import grid3; import palette; currentprojection=orthographic(0.8,1,2); - size(400,300,IgnoreAspect); real f(pair z) {return cos(2*pi*z.x)*sin(2*pi*z.y);} diff --git a/Master/texmf/doc/asymptote/examples/randompath3.asy b/Master/texmf/doc/asymptote/examples/randompath3.asy index 56382d19b89..755c3a29128 100644 --- a/Master/texmf/doc/asymptote/examples/randompath3.asy +++ b/Master/texmf/doc/asymptote/examples/randompath3.asy @@ -1,3 +1,4 @@ import three; + size(300); draw(randompath3(100),red,currentlight); diff --git a/Master/texmf/doc/asymptote/examples/roll.asy b/Master/texmf/doc/asymptote/examples/roll.asy new file mode 100644 index 00000000000..088da3177f4 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/roll.asy @@ -0,0 +1,10 @@ +import graph3; + +size(200,0); + +triple f(pair t) { +return(t.x+t.y/4+sin(t.y),cos(t.y),sin(t.y)); +} + +surface s=surface(f,(0,0),(2pi,2pi),7,20,Spline); +draw(s,olive); diff --git a/Master/texmf/doc/asymptote/examples/secondaryaxis.asy b/Master/texmf/doc/asymptote/examples/secondaryaxis.asy index 527675f2f51..39f802f935d 100644 --- a/Master/texmf/doc/asymptote/examples/secondaryaxis.asy +++ b/Master/texmf/doc/asymptote/examples/secondaryaxis.asy @@ -3,12 +3,12 @@ import graph; size(9cm,6cm,IgnoreAspect); string data="secondaryaxis.csv"; -file in=line(csv(input(data))); +file in=input(data).line().csv(); string[] titlelabel=in; string[] columnlabel=in; -real[][] a=dimension(in,0,0); +real[][] a=in.dimension(0,0); a=transpose(a); real[] t=a[0], susceptible=a[1], infectious=a[2], dead=a[3], larvae=a[4]; real[] susceptibleM=a[5], exposed=a[6],infectiousM=a[7]; diff --git a/Master/texmf/doc/asymptote/examples/slidedemo.asy b/Master/texmf/doc/asymptote/examples/slidedemo.asy index cd1f05b4124..1668ade5fde 100644 --- a/Master/texmf/doc/asymptote/examples/slidedemo.asy +++ b/Master/texmf/doc/asymptote/examples/slidedemo.asy @@ -7,6 +7,7 @@ orientation=Landscape; import slide; import three; +settings.toolbar=false; viewportsize=pagewidth-2pagemargin; usersetting(); @@ -20,6 +21,7 @@ bibliographystyle("alpha"); // Generated needed files if they don't already exist. asy(nativeformat(),"Pythagoras","log","PythagoreanTree"); +usepackage("mflogo"); // Optional background color or header: // import x11colors; @@ -61,7 +63,7 @@ draw(pic,unitcircle); add(pic.fit(15cm)); step(); fill(pic2,unitcircle,paleblue); -label(pic2,"$\pi$",(0,0),fontsize(500)); +label(pic2,"$\pi$",(0,0),fontsize(500pt)); add(pic2.fit(15cm)); newslide(); @@ -108,10 +110,8 @@ draw(pic,"$r$",(x,0,0)--(x,f(r),0),X+0.2Z,red,Arrow3); draw(pic,arc(1.1X,0.4,90,90,3,-90),Arrow3); add(pic.fit(8.5cm)); -viewportsize=viewportmargin=0; title("\mbox{Asymptote: 2D \& 3D Vector Graphics Language}"); asyinclude("logo3"); -skip(); center("\tt http://asymptote.sf.net"); center("(freely available under the GNU public license)"); diff --git a/Master/texmf/doc/asymptote/examples/smoothelevation.asy b/Master/texmf/doc/asymptote/examples/smoothelevation.asy index 29ee84ba688..a7995b7079a 100644 --- a/Master/texmf/doc/asymptote/examples/smoothelevation.asy +++ b/Master/texmf/doc/asymptote/examples/smoothelevation.asy @@ -2,6 +2,8 @@ import graph3; import grid3; import palette; +currentlight=Viewport; + if(settings.render <= 0) settings.prc=false; currentprojection=orthographic(1,2,13); diff --git a/Master/texmf/doc/asymptote/examples/soccerball.asy b/Master/texmf/doc/asymptote/examples/soccerball.asy new file mode 100644 index 00000000000..f481ef1b7ff --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/soccerball.asy @@ -0,0 +1,85 @@ +import graph3; +size(400); +currentlight.background=palegreen; + +real c=(1+sqrt(5))/2; + +triple[] z={(c,1,0),(-c,1,0),(-c,-1,0),(c,-1,0)}; +triple[] x={(0,c,1),(0,-c,1),(0,-c,-1),(0,c,-1)}; +triple[] y={(1,0,c),(1,0,-c),(-1,0,-c),(-1,0,c)}; + +triple[][] Q={ + {z[0],y[1],x[3],x[0],y[0],z[3]}, + {z[1],x[0],x[3],y[2],z[2],y[3]}, + {z[2],z[1],y[2],x[2],x[1],y[3]}, + {z[3],z[0],y[0],x[1],x[2],y[1]}, + {x[0],x[3],z[1],y[3],y[0],z[0]}, + {x[1],x[2],z[2],y[3],y[0],z[3]}, + {x[2],x[1],z[3],y[1],y[2],z[2]}, + {x[3],x[0],z[0],y[1],y[2],z[1]}, + {y[0],y[3],x[1],z[3],z[0],x[0]}, + {y[1],y[2],x[2],z[3],z[0],x[3]}, + {y[2],y[1],x[3],z[1],z[2],x[2]}, + {y[3],y[0],x[0],z[1],z[2],x[1]} +}; + +path3 p=arc(O,Q[0][0],Q[0][1]); +real R=abs(point(p,reltime(p,1/3))); + +triple[][] P; +for(int i=0; i < Q.length; ++i){ + P[i]=new triple[] ; + for(int j=0; j < Q[i].length; ++j){ + P[i][j]=Q[i][j]/R; + } +} + +surface sphericaltriangle(triple center, triple A, triple B, triple C, + int nu=3, int nv=nu) { + path3 tri1=arc(center,A,B); + path3 tri2=arc(center,A,C); + path3 tri3=arc(center,B,C); + triple tri(pair p) { + path3 cr=arc(O,relpoint(tri2,p.x),relpoint(tri3,p.x)); + return relpoint(cr,p.y); + }; + + return surface(tri,(0,0),(1-sqrtEpsilon,1),nu,nv,Spline); +} + +for(int i=0; i < P.length; ++i){ + triple[] pentagon=sequence(new triple(int k) { + path3 p=arc(O,P[i][0],P[i][k+1]); + return point(p,reltime(p,1/3)); + },5); + pentagon.cyclic=true; + draw(sequence(new path3(int k) { + return arc(O,pentagon[k],pentagon[k+1]);},5),linewidth(2pt)); + triple M=unit(sum(pentagon)/5); + for(int i=0; i < 5; ++i){ + surface sf=sphericaltriangle(O,pentagon[i],M,pentagon[i+1]); + draw(sf,black); + } +} + +for(int i=0; i < P.length; ++i){ + for(int j=1; j <= 5; ++j){ + triple K=P[i][0]; + triple A=P[i][j]; + triple B=P[i][(j % 5)+1]; + path3[] p={arc(O,K,A),arc(O,A,B),arc(O,B,K)}; + draw(subpath(p[0],reltime(p[0],1/3),reltime(p[0],2/3)),linewidth(4pt)); + triple[] hexagon={point(p[0],reltime(p[0],1/3)), + point(p[0],reltime(p[0],2/3)), + point(p[1],reltime(p[1],1/3)), + point(p[1],reltime(p[1],2/3)), + point(p[2],reltime(p[2],1/3)), + point(p[2],reltime(p[2],2/3))}; + hexagon.cyclic=true; + triple M=unit(sum(hexagon)/6); + for(int i=0; i < 6; ++i){ + surface sf=sphericaltriangle(O,hexagon[i],M,hexagon[i+1]); + draw(sf,white); + } + } +} diff --git a/Master/texmf/doc/asymptote/examples/spectrum.asy b/Master/texmf/doc/asymptote/examples/spectrum.asy new file mode 100644 index 00000000000..a5d576921cf --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/spectrum.asy @@ -0,0 +1,79 @@ +import graph; +usepackage("ocg"); +settings.tex="pdflatex"; + +// Dan Bruton algorithm +pen nm2rgb(real wl, real gamma=0.8, bool intensity=true) { + triple rgb; + if(wl >= 380 && wl <= 440) {rgb=((440-wl)/60,0,1);} + if(wl > 440 && wl <= 490) {rgb=(0,(wl-440)/50,1);} + if(wl > 490 && wl <= 510) {rgb=(0,1,(510-wl)/20);} + if(wl > 510 && wl <= 580) {rgb=((wl-510)/70,1,0);} + if(wl > 580 && wl <= 645) {rgb=(1,(645-wl)/65,0);} + if(wl > 645 && wl <= 780) {rgb=(1,0,0);} + + real Intensity=1; + if(intensity) { + if(wl >= 700) {Intensity=0.3+0.7*(780-wl)/80;} + else if(wl <= 420) {Intensity=0.3+0.7*(wl-380)/40;} + } + + return rgb((Intensity*rgb.x)**gamma,(Intensity*rgb.y)**gamma, + (Intensity*rgb.z)**gamma); +} + +real width=1; +real height=50; + +begin("spectrum"); +for(real i=380 ; i <= 780 ; i += width) { + draw((i,0)--(i,height),width+nm2rgb(wl=i,false)+squarecap); +} +begin("Extinction",false); // nested +for(real i=380 ; i <= 780 ; i += width) { + draw((i,0)--(i,height),width+nm2rgb(wl=i,true)+squarecap); +} +end(); +end(); + +begin("Wavelength"); +xaxis(scale(0.5)*"$\lambda$(nm)",BottomTop,380,780, + RightTicks(scale(0.5)*rotate(90)*Label(),step=2,Step=10),above=true); +end(); + +// From Astronomical Data Center(NASA) +// Neutral only +real[] Na={423.899, 424.208, 427.364, 427.679, 428.784, 429.101, + 432.14, 432.462, 434.149, 434.474, 439.003, 439.334, 441.989, 442.325, + 449.418, 449.766, 454.163, 454.519, 568.2633, 568.8204, 588.995, + 589.5924}; +begin("Na absorption"); +for(int i=0; i < Na.length; ++i) { + draw((Na[i],0)--(Na[i],height),0.1*width+squarecap); +} +end(); + +begin("Na emission"); +for(int i=0; i < Na.length; ++i) { + draw((Na[i],0)--(Na[i],-height),0.1*width+nm2rgb(Na[i],false)+squarecap); +} +end(); + +// Neutral only +real[] Zn={388.334, 396.543, 411.321, 429.288, 429.833, 462.981, + 468.014, 472.215, 481.053 , 506.866, 506.958, 518.198, 530.865, + 531.024, 531.102, 577.21, 577.55, 577.711, 623.79, 623.917, 636.234, + 647.918, 692.832, 693.847, 694.32, 779.936}; +begin("Zn absorption",false); +for(int i=0; i < Zn.length; ++i) { + draw((Zn[i],0)--(Zn[i],height),width+squarecap); +} +end(); + +begin("Zn emission",false); +for(int i=0; i < Zn.length; ++i) { + draw((Zn[i],0)--(Zn[i],-height),width+nm2rgb(Zn[i],false)+squarecap); +} +end(); + +shipout(bbox(2mm,Fill(white))); diff --git a/Master/texmf/doc/asymptote/examples/sphericalharmonic.asy b/Master/texmf/doc/asymptote/examples/sphericalharmonic.asy index 471bcaae9cd..d89d81aee86 100644 --- a/Master/texmf/doc/asymptote/examples/sphericalharmonic.asy +++ b/Master/texmf/doc/asymptote/examples/sphericalharmonic.asy @@ -3,10 +3,12 @@ import palette; size(200); currentprojection=orthographic(4,2,4); +currentlight=Viewport; real r(real theta, real phi) {return 1+0.5*(sin(2*theta)*sin(2*phi))^2;} triple f(pair z) {return r(z.x,z.y)*expi(z.x,z.y);} -surface s=surface(f,(0,0),(pi,2pi),50); -draw(s,mean(palette(s.map(abs),Gradient(yellow,red))),nolight); +surface s=surface(f,(0,0),(pi,2pi),50,Spline); +s.colors(palette(s.map(abs),Gradient(yellow,red))); +draw(s); diff --git a/Master/texmf/doc/asymptote/examples/spiral3.asy b/Master/texmf/doc/asymptote/examples/spiral3.asy new file mode 100644 index 00000000000..cea9665a951 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/spiral3.asy @@ -0,0 +1,19 @@ +import graph3; +import palette; + +size3(10cm); + +currentprojection=orthographic(5,4,2); + +real r(real t) {return 3exp(-0.1*t);} +real x(real t) {return r(t)*cos(t);} +real y(real t) {return r(t)*sin(t);} +real z(real t) {return t;} + +path3 p=graph(x,y,z,0,6*pi,50,operator ..); + +tube T=tube(p,2); +surface s=T.s; +s.colors(palette(s.map(zpart),BWRainbow())); +draw(s); +draw(T.center,thin()); diff --git a/Master/texmf/doc/asymptote/examples/splitpatch.asy b/Master/texmf/doc/asymptote/examples/splitpatch.asy new file mode 100644 index 00000000000..cfd5c9a4c93 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/splitpatch.asy @@ -0,0 +1,24 @@ +import three; + +currentprojection=orthographic(0,0,1); + +triple[][] A={ + {(0,0,0),(1,0,0),(1,0,0),(2,0,0)}, + {(0,4/3,0),(2/3,4/3,2),(4/3,4/3,2),(2,4/3,0)}, + {(0,2/3,0),(2/3,2/3,0),(4/3,2/3,0),(2,2/3,0)}, + {(0,2,0),(2/3,2,0),(4/3,2,0),(2,2,0)} +}; + +triple[][] B={ + {(0.5,0,-1),(0.5,1,-1),(0.5,2,-1),(0.5,3,-1)}, + {(0.5,0,0),(0.5,1,0),(0.5,2,0),(0.5,3,0)}, + {(0.5,0,1),(0.5,1,1),(0.5,2,1),(0.5,3,1)}, + {(0.5,0,2),(0.5,1,2),(0.5,2,2),(0.5,3,2)} +}; + +split S=split(A,B,10); +//write(S.T.length); + +for(int i=0; i < S.T.length; ++i) + draw(surface(patch(S.T[i])),Pen(i)); +draw(surface(patch(B)),blue); diff --git a/Master/texmf/doc/asymptote/examples/teapot.asy b/Master/texmf/doc/asymptote/examples/teapot.asy index e0ef51eb552..9ec5b0cb370 100644 --- a/Master/texmf/doc/asymptote/examples/teapot.asy +++ b/Master/texmf/doc/asymptote/examples/teapot.asy @@ -3,199 +3,169 @@ import three; size(20cm); currentprojection=perspective(250,-250,250); +currentlight=Viewport; triple[][][] Q={ { - {(39.68504,0.0,68.03150),(39.68504,-22.22362,68.03150),(22.22362,-39.68504,68.03150),(0.0,-39.68504,68.03150)}, - {(37.91339,0.0,71.75197),(37.91339,-21.23150,71.75197),(21.23150,-37.91339,71.75197),(0.0,-37.91339,71.75197)}, - {(40.74803,0.0,71.75197),(40.74803,-22.81890,71.75197),(22.81890,-40.74803,71.75197),(0.0,-40.74803,71.75197)}, - {(42.51969,0.0,68.03150),(42.51969,-23.81102,68.03150),(23.81102,-42.51969,68.03150),(0.0,-42.51969,68.03150)}, - }, - { - {(0.0,-39.68504,68.03150),(-22.22362,-39.68504,68.03150),(-39.68504,-22.22362,68.03150),(-39.68504,0.0,68.03150)}, - {(0.0,-37.91339,71.75197),(-21.23150,-37.91339,71.75197),(-37.91339,-21.23150,71.75197),(-37.91339,0.0,71.75197)}, - {(0.0,-40.74803,71.75197),(-22.81890,-40.74803,71.75197),(-40.74803,-22.81890,71.75197),(-40.74803,0.0,71.75197)}, - {(0.0,-42.51969,68.03150),(-23.81102,-42.51969,68.03150),(-42.51969,-23.81102,68.03150),(-42.51969,0.0,68.03150)}, - }, - { - {(-39.68504,0.0,68.03150),(-39.68504,22.22362,68.03150),(-22.22362,39.68504,68.03150),(0.0,39.68504,68.03150)}, - {(-37.91339,0.0,71.75197),(-37.91339,21.23150,71.75197),(-21.23150,37.91339,71.75197),(0.0,37.91339,71.75197)}, - {(-40.74803,0.0,71.75197),(-40.74803,22.81890,71.75197),(-22.81890,40.74803,71.75197),(0.0,40.74803,71.75197)}, - {(-42.51969,0.0,68.03150),(-42.51969,23.81102,68.03150),(-23.81102,42.51969,68.03150),(0.0,42.51969,68.03150)}, - }, - { - {(0.0,39.68504,68.03150),(22.22362,39.68504,68.03150),(39.68504,22.22362,68.03150),(39.68504,0.0,68.03150)}, - {(0.0,37.91339,71.75197),(21.23150,37.91339,71.75197),(37.91339,21.23150,71.75197),(37.91339,0.0,71.75197)}, - {(0.0,40.74803,71.75197),(22.81890,40.74803,71.75197),(40.74803,22.81890,71.75197),(40.74803,0.0,71.75197)}, - {(0.0,42.51969,68.03150),(23.81102,42.51969,68.03150),(42.51969,23.81102,68.03150),(42.51969,0.0,68.03150)}, - }, - { - {(42.51969,0.0,68.03150),(42.51969,-23.81102,68.03150),(23.81102,-42.51969,68.03150),(0.0,-42.51969,68.03150)}, - {(49.60629,0.0,53.14960),(49.60629,-27.77952,53.14960),(27.77952,-49.60629,53.14960),(0.0,-49.60629,53.14960)}, - {(56.69291,0.0,38.26771),(56.69291,-31.74803,38.26771),(31.74803,-56.69291,38.26771),(0.0,-56.69291,38.26771)}, - {(56.69291,0.0,25.51181),(56.69291,-31.74803,25.51181),(31.74803,-56.69291,25.51181),(0.0,-56.69291,25.51181)}, - }, - { - {(0.0,-42.51969,68.03150),(-23.81102,-42.51969,68.03150),(-42.51969,-23.81102,68.03150),(-42.51969,0.0,68.03150)}, - {(0.0,-49.60629,53.14960),(-27.77952,-49.60629,53.14960),(-49.60629,-27.77952,53.14960),(-49.60629,0.0,53.14960)}, - {(0.0,-56.69291,38.26771),(-31.74803,-56.69291,38.26771),(-56.69291,-31.74803,38.26771),(-56.69291,0.0,38.26771)}, - {(0.0,-56.69291,25.51181),(-31.74803,-56.69291,25.51181),(-56.69291,-31.74803,25.51181),(-56.69291,0.0,25.51181)}, - }, - { - {(-42.51969,0.0,68.03150),(-42.51969,23.81102,68.03150),(-23.81102,42.51969,68.03150),(0.0,42.51969,68.03150)}, - {(-49.60629,0.0,53.14960),(-49.60629,27.77952,53.14960),(-27.77952,49.60629,53.14960),(0.0,49.60629,53.14960)}, - {(-56.69291,0.0,38.26771),(-56.69291,31.74803,38.26771),(-31.74803,56.69291,38.26771),(0.0,56.69291,38.26771)}, - {(-56.69291,0.0,25.51181),(-56.69291,31.74803,25.51181),(-31.74803,56.69291,25.51181),(0.0,56.69291,25.51181)}, - }, - { - {(0.0,42.51969,68.03150),(23.81102,42.51969,68.03150),(42.51969,23.81102,68.03150),(42.51969,0.0,68.03150)}, - {(0.0,49.60629,53.14960),(27.77952,49.60629,53.14960),(49.60629,27.77952,53.14960),(49.60629,0.0,53.14960)}, - {(0.0,56.69291,38.26771),(31.74803,56.69291,38.26771),(56.69291,31.74803,38.26771),(56.69291,0.0,38.26771)}, - {(0.0,56.69291,25.51181),(31.74803,56.69291,25.51181),(56.69291,31.74803,25.51181),(56.69291,0.0,25.51181)}, - }, - { - {(56.69291,0.0,25.51181),(56.69291,-31.74803,25.51181),(31.74803,-56.69291,25.51181),(0.0,-56.69291,25.51181)}, - {(56.69291,0.0,12.75590),(56.69291,-31.74803,12.75590),(31.74803,-56.69291,12.75590),(0.0,-56.69291,12.75590)}, - {(42.51969,0.0,6.377957),(42.51969,-23.81102,6.377957),(23.81102,-42.51969,6.377957),(0.0,-42.51969,6.377957)}, - {(42.51969,0.0,4.251961),(42.51969,-23.81102,4.251961),(23.81102,-42.51969,4.251961),(0.0,-42.51969,4.251961)}, - }, - { - {(0.0,-56.69291,25.51181),(-31.74803,-56.69291,25.51181),(-56.69291,-31.74803,25.51181),(-56.69291,0.0,25.51181)}, - {(0.0,-56.69291,12.75590),(-31.74803,-56.69291,12.75590),(-56.69291,-31.74803,12.75590),(-56.69291,0.0,12.75590)}, - {(0.0,-42.51969,6.377957),(-23.81102,-42.51969,6.377957),(-42.51969,-23.81102,6.377957),(-42.51969,0.0,6.377957)}, - {(0.0,-42.51969,4.251961),(-23.81102,-42.51969,4.251961),(-42.51969,-23.81102,4.251961),(-42.51969,0.0,4.251961)}, - }, - { - {(-56.69291,0.0,25.51181),(-56.69291,31.74803,25.51181),(-31.74803,56.69291,25.51181),(0.0,56.69291,25.51181)}, - {(-56.69291,0.0,12.75590),(-56.69291,31.74803,12.75590),(-31.74803,56.69291,12.75590),(0.0,56.69291,12.75590)}, - {(-42.51969,0.0,6.377957),(-42.51969,23.81102,6.377957),(-23.81102,42.51969,6.377957),(0.0,42.51969,6.377957)}, - {(-42.51969,0.0,4.251961),(-42.51969,23.81102,4.251961),(-23.81102,42.51969,4.251961),(0.0,42.51969,4.251961)}, - }, - { - {(0.0,56.69291,25.51181),(31.74803,56.69291,25.51181),(56.69291,31.74803,25.51181),(56.69291,0.0,25.51181)}, - {(0.0,56.69291,12.75590),(31.74803,56.69291,12.75590),(56.69291,31.74803,12.75590),(56.69291,0.0,12.75590)}, - {(0.0,42.51969,6.377957),(23.81102,42.51969,6.377957),(42.51969,23.81102,6.377957),(42.51969,0.0,6.377957)}, - {(0.0,42.51969,4.251961),(23.81102,42.51969,4.251961),(42.51969,23.81102,4.251961),(42.51969,0.0,4.251961)}, - }, - { - {(-45.35433,0.0,57.40157),(-45.35433,-8.503932,57.40157),(-42.51969,-8.503932,63.77952),(-42.51969,0.0,63.77952)}, - {(-65.19685,0.0,57.40157),(-65.19685,-8.503932,57.40157),(-70.86614,-8.503932,63.77952),(-70.86614,0.0,63.77952)}, - {(-76.53543,0.0,57.40157),(-76.53543,-8.503932,57.40157),(-85.03937,-8.503932,63.77952),(-85.03937,0.0,63.77952)}, - {(-76.53543,0.0,51.02362),(-76.53543,-8.503932,51.02362),(-85.03937,-8.503932,51.02362),(-85.03937,0.0,51.02362)}, - }, - { - {(-42.51969,0.0,63.77952),(-42.51969,8.503932,63.77952),(-45.35433,8.503932,57.40157),(-45.35433,0.0,57.40157)}, - {(-70.86614,0.0,63.77952),(-70.86614,8.503932,63.77952),(-65.19685,8.503932,57.40157),(-65.19685,0.0,57.40157)}, - {(-85.03937,0.0,63.77952),(-85.03937,8.503932,63.77952),(-76.53543,8.503932,57.40157),(-76.53543,0.0,57.40157)}, - {(-85.03937,0.0,51.02362),(-85.03937,8.503932,51.02362),(-76.53543,8.503932,51.02362),(-76.53543,0.0,51.02362)}, - }, - { - {(-76.53543,0.0,51.02362),(-76.53543,-8.503932,51.02362),(-85.03937,-8.503932,51.02362),(-85.03937,0.0,51.02362)}, - {(-76.53543,0.0,44.64566),(-76.53543,-8.503932,44.64566),(-85.03937,-8.503932,38.26771),(-85.03937,0.0,38.26771)}, - {(-70.86614,0.0,31.88976),(-70.86614,-8.503932,31.88976),(-75.11811,-8.503932,26.57480),(-75.11811,0.0,26.57480)}, - {(-56.69291,0.0,25.51181),(-56.69291,-8.503932,25.51181),(-53.85826,-8.503932,17.00787),(-53.85826,0.0,17.00787)}, - }, - { - {(-85.03937,0.0,51.02362),(-85.03937,8.503932,51.02362),(-76.53543,8.503932,51.02362),(-76.53543,0.0,51.02362)}, - {(-85.03937,0.0,38.26771),(-85.03937,8.503932,38.26771),(-76.53543,8.503932,44.64566),(-76.53543,0.0,44.64566)}, - {(-75.11811,0.0,26.57480),(-75.11811,8.503932,26.57480),(-70.86614,8.503932,31.88976),(-70.86614,0.0,31.88976)}, - {(-53.85826,0.0,17.00787),(-53.85826,8.503932,17.00787),(-56.69291,8.503932,25.51181),(-56.69291,0.0,25.51181)}, - }, - { - {(48.18897,0.0,40.39370),(48.18897,-18.70866,40.39370),(48.18897,-18.70866,17.00787),(48.18897,0.0,17.00787)}, - {(73.70078,0.0,40.39370),(73.70078,-18.70866,40.39370),(87.87401,-18.70866,23.38582),(87.87401,0.0,23.38582)}, - {(65.19685,0.0,59.52755),(65.19685,-7.086619,59.52755),(68.03150,-7.086619,57.40157),(68.03150,0.0,57.40157)}, - {(76.53543,0.0,68.03150),(76.53543,-7.086619,68.03150),(93.54330,-7.086619,68.03150),(93.54330,0.0,68.03150)}, - }, - { - {(48.18897,0.0,17.00787),(48.18897,18.70866,17.00787),(48.18897,18.70866,40.39370),(48.18897,0.0,40.39370)}, - {(87.87401,0.0,23.38582),(87.87401,18.70866,23.38582),(73.70078,18.70866,40.39370),(73.70078,0.0,40.39370)}, - {(68.03150,0.0,57.40157),(68.03150,7.086619,57.40157),(65.19685,7.086619,59.52755),(65.19685,0.0,59.52755)}, - {(93.54330,0.0,68.03150),(93.54330,7.086619,68.03150),(76.53543,7.086619,68.03150),(76.53543,0.0,68.03150)}, - }, - { - {(76.53543,0.0,68.03150),(76.53543,-7.086619,68.03150),(93.54330,-7.086619,68.03150),(93.54330,0.0,68.03150)}, - {(79.37007,0.0,70.15748),(79.37007,-7.086619,70.15748),(99.92125,-7.086619,70.68897),(99.92125,0.0,70.68897)}, - {(82.20472,0.0,70.15748),(82.20472,-4.251961,70.15748),(97.79527,-4.251961,71.22047),(97.79527,0.0,71.22047)}, - {(79.37007,0.0,68.03150),(79.37007,-4.251961,68.03150),(90.70866,-4.251961,68.03150),(90.70866,0.0,68.03150)}, - }, - { - {(93.54330,0.0,68.03150),(93.54330,7.086619,68.03150),(76.53543,7.086619,68.03150),(76.53543,0.0,68.03150)}, - {(99.92125,0.0,70.68897),(99.92125,7.086619,70.68897),(79.37007,7.086619,70.15748),(79.37007,0.0,70.15748)}, - {(97.79527,0.0,71.22047),(97.79527,4.251961,71.22047),(82.20472,4.251961,70.15748),(82.20472,0.0,70.15748)}, - {(90.70866,0.0,68.03150),(90.70866,4.251961,68.03150),(79.37007,4.251961,68.03150),(79.37007,0.0,68.03150)}, - }, - { - {(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133)}, - {(22.67716,0.0,89.29133),(22.67716,-12.75590,89.29133),(12.75590,-22.67716,89.29133),(0.0,-22.67716,89.29133)}, - {(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740)}, - {(5.669294,0.0,76.53543),(5.669294,-3.174809,76.53543),(3.174809,-5.669294,76.53543),(0.0,-5.669294,76.53543)}, - }, - { - {(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133)}, - {(0.0,-22.67716,89.29133),(-12.75590,-22.67716,89.29133),(-22.67716,-12.75590,89.29133),(-22.67716,0.0,89.29133)}, - {(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740)}, - {(0.0,-5.669294,76.53543),(-3.174809,-5.669294,76.53543),(-5.669294,-3.174809,76.53543),(-5.669294,0.0,76.53543)}, - }, - { - {(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133)}, - {(-22.67716,0.0,89.29133),(-22.67716,12.75590,89.29133),(-12.75590,22.67716,89.29133),(0.0,22.67716,89.29133)}, - {(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740)}, - {(-5.669294,0.0,76.53543),(-5.669294,3.174809,76.53543),(-3.174809,5.669294,76.53543),(0.0,5.669294,76.53543)}, - }, - { - {(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133),(0.0,0.0,89.29133)}, - {(0.0,22.67716,89.29133),(12.75590,22.67716,89.29133),(22.67716,12.75590,89.29133),(22.67716,0.0,89.29133)}, - {(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740),(0.0,0.0,80.78740)}, - {(0.0,5.669294,76.53543),(3.174809,5.669294,76.53543),(5.669294,3.174809,76.53543),(5.669294,0.0,76.53543)}, - }, - { - {(5.669294,0.0,76.53543),(5.669294,-3.174809,76.53543),(3.174809,-5.669294,76.53543),(0.0,-5.669294,76.53543)}, - {(11.33858,0.0,72.28346),(11.33858,-6.349609,72.28346),(6.349609,-11.33858,72.28346),(0.0,-11.33858,72.28346)}, - {(36.85039,0.0,72.28346),(36.85039,-20.63622,72.28346),(20.63622,-36.85039,72.28346),(0.0,-36.85039,72.28346)}, - {(36.85039,0.0,68.03150),(36.85039,-20.63622,68.03150),(20.63622,-36.85039,68.03150),(0.0,-36.85039,68.03150)}, - }, - { - {(0.0,-5.669294,76.53543),(-3.174809,-5.669294,76.53543),(-5.669294,-3.174809,76.53543),(-5.669294,0.0,76.53543)}, - {(0.0,-11.33858,72.28346),(-6.349609,-11.33858,72.28346),(-11.33858,-6.349609,72.28346),(-11.33858,0.0,72.28346)}, - {(0.0,-36.85039,72.28346),(-20.63622,-36.85039,72.28346),(-36.85039,-20.63622,72.28346),(-36.85039,0.0,72.28346)}, - {(0.0,-36.85039,68.03150),(-20.63622,-36.85039,68.03150),(-36.85039,-20.63622,68.03150),(-36.85039,0.0,68.03150)}, - }, - { - {(-5.669294,0.0,76.53543),(-5.669294,3.174809,76.53543),(-3.174809,5.669294,76.53543),(0.0,5.669294,76.53543)}, - {(-11.33858,0.0,72.28346),(-11.33858,6.349609,72.28346),(-6.349609,11.33858,72.28346),(0.0,11.33858,72.28346)}, - {(-36.85039,0.0,72.28346),(-36.85039,20.63622,72.28346),(-20.63622,36.85039,72.28346),(0.0,36.85039,72.28346)}, - {(-36.85039,0.0,68.03150),(-36.85039,20.63622,68.03150),(-20.63622,36.85039,68.03150),(0.0,36.85039,68.03150)}, - }, - { - {(0.0,5.669294,76.53543),(3.174809,5.669294,76.53543),(5.669294,3.174809,76.53543),(5.669294,0.0,76.53543)}, - {(0.0,11.33858,72.28346),(6.349609,11.33858,72.28346),(11.33858,6.349609,72.28346),(11.33858,0.0,72.28346)}, - {(0.0,36.85039,72.28346),(20.63622,36.85039,72.28346),(36.85039,20.63622,72.28346),(36.85039,0.0,72.28346)}, - {(0.0,36.85039,68.03150),(20.63622,36.85039,68.03150),(36.85039,20.63622,68.03150),(36.85039,0.0,68.03150)}, - }, - { - {(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0)}, - {(40.39370,0.0,0.0),(40.39370,22.62047,0.0),(22.62047,40.39370,0.0),(0.0,40.39370,0.0)}, - {(42.51969,0.0,2.12598),(42.51969,23.81102,2.12598),(23.81102,42.51969,2.12598),(0.0,42.51969,2.12598)}, - {(42.51969,0.0,4.251961),(42.51969,23.81102,4.251961),(23.81102,42.51969,4.251961),(0.0,42.51969,4.251961)}, - }, - { - {(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0)}, - {(0.0,40.39370,0.0),(-22.62047,40.39370,0.0),(-40.39370,22.62047,0.0),(-40.39370,0.0,0.0)}, - {(0.0,42.51969,2.12598),(-23.81102,42.51969,2.12598),(-42.51969,23.81102,2.12598),(-42.51969,0.0,2.12598)}, - {(0.0,42.51969,4.251961),(-23.81102,42.51969,4.251961),(-42.51969,23.81102,4.251961),(-42.51969,0.0,4.251961)}, - }, - { - {(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0)}, - {(-40.39370,0.0,0.0),(-40.39370,-22.62047,0.0),(-22.62047,-40.39370,0.0),(0.0,-40.39370,0.0)}, - {(-42.51969,0.0,2.12598),(-42.51969,-23.81102,2.12598),(-23.81102,-42.51969,2.12598),(0.0,-42.51969,2.12598)}, - {(-42.51969,0.0,4.251961),(-42.51969,-23.81102,4.251961),(-23.81102,-42.51969,4.251961),(0.0,-42.51969,4.251961)}, - }, - { - {(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0),(0.0,0.0,0.0)}, - {(0.0,-40.39370,0.0),(22.62047,-40.39370,0.0),(40.39370,-22.62047,0.0),(40.39370,0.0,0.0)}, - {(0.0,-42.51969,2.12598),(23.81102,-42.51969,2.12598),(42.51969,-23.81102,2.12598),(42.51969,0.0,2.12598)}, - {(0.0,-42.51969,4.251961),(23.81102,-42.51969,4.251961),(42.51969,-23.81102,4.251961),(42.51969,0.0,4.251961)}, + {(39.68504,0,68.0315),(37.91339,0,71.75197),(40.74803,0,71.75197),(42.51969,0,68.0315)}, + {(39.68504,-22.22362,68.0315),(37.91339,-21.2315,71.75197),(40.74803,-22.8189,71.75197),(42.51969,-23.81102,68.0315)}, + {(22.22362,-39.68504,68.0315),(21.2315,-37.91339,71.75197),(22.8189,-40.74803,71.75197),(23.81102,-42.51969,68.0315)}, + {(0,-39.68504,68.0315),(0,-37.91339,71.75197),(0,-40.74803,71.75197),(0,-42.51969,68.0315)} + },{ + {(0,-39.68504,68.0315),(0,-37.91339,71.75197),(0,-40.74803,71.75197),(0,-42.51969,68.0315)}, + {(-22.22362,-39.68504,68.0315),(-21.2315,-37.91339,71.75197),(-22.8189,-40.74803,71.75197),(-23.81102,-42.51969,68.0315)}, + {(-39.68504,-22.22362,68.0315),(-37.91339,-21.2315,71.75197),(-40.74803,-22.8189,71.75197),(-42.51969,-23.81102,68.0315)}, + {(-39.68504,0,68.0315),(-37.91339,0,71.75197),(-40.74803,0,71.75197),(-42.51969,0,68.0315)} + },{ + {(-39.68504,0,68.0315),(-37.91339,0,71.75197),(-40.74803,0,71.75197),(-42.51969,0,68.0315)}, + {(-39.68504,22.22362,68.0315),(-37.91339,21.2315,71.75197),(-40.74803,22.8189,71.75197),(-42.51969,23.81102,68.0315)}, + {(-22.22362,39.68504,68.0315),(-21.2315,37.91339,71.75197),(-22.8189,40.74803,71.75197),(-23.81102,42.51969,68.0315)}, + {(0,39.68504,68.0315),(0,37.91339,71.75197),(0,40.74803,71.75197),(0,42.51969,68.0315)} + },{ + {(0,39.68504,68.0315),(0,37.91339,71.75197),(0,40.74803,71.75197),(0,42.51969,68.0315)}, + {(22.22362,39.68504,68.0315),(21.2315,37.91339,71.75197),(22.8189,40.74803,71.75197),(23.81102,42.51969,68.0315)}, + {(39.68504,22.22362,68.0315),(37.91339,21.2315,71.75197),(40.74803,22.8189,71.75197),(42.51969,23.81102,68.0315)}, + {(39.68504,0,68.0315),(37.91339,0,71.75197),(40.74803,0,71.75197),(42.51969,0,68.0315)} + },{ + {(42.51969,0,68.0315),(49.60629,0,53.1496),(56.69291,0,38.26771),(56.69291,0,25.51181)}, + {(42.51969,-23.81102,68.0315),(49.60629,-27.77952,53.1496),(56.69291,-31.74803,38.26771),(56.69291,-31.74803,25.51181)}, + {(23.81102,-42.51969,68.0315),(27.77952,-49.60629,53.1496),(31.74803,-56.69291,38.26771),(31.74803,-56.69291,25.51181)}, + {(0,-42.51969,68.0315),(0,-49.60629,53.1496),(0,-56.69291,38.26771),(0,-56.69291,25.51181)} + },{ + {(0,-42.51969,68.0315),(0,-49.60629,53.1496),(0,-56.69291,38.26771),(0,-56.69291,25.51181)}, + {(-23.81102,-42.51969,68.0315),(-27.77952,-49.60629,53.1496),(-31.74803,-56.69291,38.26771),(-31.74803,-56.69291,25.51181)}, + {(-42.51969,-23.81102,68.0315),(-49.60629,-27.77952,53.1496),(-56.69291,-31.74803,38.26771),(-56.69291,-31.74803,25.51181)}, + {(-42.51969,0,68.0315),(-49.60629,0,53.1496),(-56.69291,0,38.26771),(-56.69291,0,25.51181)} + },{ + {(-42.51969,0,68.0315),(-49.60629,0,53.1496),(-56.69291,0,38.26771),(-56.69291,0,25.51181)}, + {(-42.51969,23.81102,68.0315),(-49.60629,27.77952,53.1496),(-56.69291,31.74803,38.26771),(-56.69291,31.74803,25.51181)}, + {(-23.81102,42.51969,68.0315),(-27.77952,49.60629,53.1496),(-31.74803,56.69291,38.26771),(-31.74803,56.69291,25.51181)}, + {(0,42.51969,68.0315),(0,49.60629,53.1496),(0,56.69291,38.26771),(0,56.69291,25.51181)} + },{ + {(0,42.51969,68.0315),(0,49.60629,53.1496),(0,56.69291,38.26771),(0,56.69291,25.51181)}, + {(23.81102,42.51969,68.0315),(27.77952,49.60629,53.1496),(31.74803,56.69291,38.26771),(31.74803,56.69291,25.51181)}, + {(42.51969,23.81102,68.0315),(49.60629,27.77952,53.1496),(56.69291,31.74803,38.26771),(56.69291,31.74803,25.51181)}, + {(42.51969,0,68.0315),(49.60629,0,53.1496),(56.69291,0,38.26771),(56.69291,0,25.51181)} + },{ + {(56.69291,0,25.51181),(56.69291,0,12.7559),(42.51969,0,6.377957),(42.51969,0,4.251961)}, + {(56.69291,-31.74803,25.51181),(56.69291,-31.74803,12.7559),(42.51969,-23.81102,6.377957),(42.51969,-23.81102,4.251961)}, + {(31.74803,-56.69291,25.51181),(31.74803,-56.69291,12.7559),(23.81102,-42.51969,6.377957),(23.81102,-42.51969,4.251961)}, + {(0,-56.69291,25.51181),(0,-56.69291,12.7559),(0,-42.51969,6.377957),(0,-42.51969,4.251961)} + },{ + {(0,-56.69291,25.51181),(0,-56.69291,12.7559),(0,-42.51969,6.377957),(0,-42.51969,4.251961)}, + {(-31.74803,-56.69291,25.51181),(-31.74803,-56.69291,12.7559),(-23.81102,-42.51969,6.377957),(-23.81102,-42.51969,4.251961)}, + {(-56.69291,-31.74803,25.51181),(-56.69291,-31.74803,12.7559),(-42.51969,-23.81102,6.377957),(-42.51969,-23.81102,4.251961)}, + {(-56.69291,0,25.51181),(-56.69291,0,12.7559),(-42.51969,0,6.377957),(-42.51969,0,4.251961)} + },{ + {(-56.69291,0,25.51181),(-56.69291,0,12.7559),(-42.51969,0,6.377957),(-42.51969,0,4.251961)}, + {(-56.69291,31.74803,25.51181),(-56.69291,31.74803,12.7559),(-42.51969,23.81102,6.377957),(-42.51969,23.81102,4.251961)}, + {(-31.74803,56.69291,25.51181),(-31.74803,56.69291,12.7559),(-23.81102,42.51969,6.377957),(-23.81102,42.51969,4.251961)}, + {(0,56.69291,25.51181),(0,56.69291,12.7559),(0,42.51969,6.377957),(0,42.51969,4.251961)} + },{ + {(0,56.69291,25.51181),(0,56.69291,12.7559),(0,42.51969,6.377957),(0,42.51969,4.251961)}, + {(31.74803,56.69291,25.51181),(31.74803,56.69291,12.7559),(23.81102,42.51969,6.377957),(23.81102,42.51969,4.251961)}, + {(56.69291,31.74803,25.51181),(56.69291,31.74803,12.7559),(42.51969,23.81102,6.377957),(42.51969,23.81102,4.251961)}, + {(56.69291,0,25.51181),(56.69291,0,12.7559),(42.51969,0,6.377957),(42.51969,0,4.251961)} + },{ + {(-45.35433,0,57.40157),(-65.19685,0,57.40157),(-76.53543,0,57.40157),(-76.53543,0,51.02362)}, + {(-45.35433,-8.503932,57.40157),(-65.19685,-8.503932,57.40157),(-76.53543,-8.503932,57.40157),(-76.53543,-8.503932,51.02362)}, + {(-42.51969,-8.503932,63.77952),(-70.86614,-8.503932,63.77952),(-85.03937,-8.503932,63.77952),(-85.03937,-8.503932,51.02362)}, + {(-42.51969,0,63.77952),(-70.86614,0,63.77952),(-85.03937,0,63.77952),(-85.03937,0,51.02362)} + },{ + {(-42.51969,0,63.77952),(-70.86614,0,63.77952),(-85.03937,0,63.77952),(-85.03937,0,51.02362)}, + {(-42.51969,8.503932,63.77952),(-70.86614,8.503932,63.77952),(-85.03937,8.503932,63.77952),(-85.03937,8.503932,51.02362)}, + {(-45.35433,8.503932,57.40157),(-65.19685,8.503932,57.40157),(-76.53543,8.503932,57.40157),(-76.53543,8.503932,51.02362)}, + {(-45.35433,0,57.40157),(-65.19685,0,57.40157),(-76.53543,0,57.40157),(-76.53543,0,51.02362)} + },{ + {(-76.53543,0,51.02362),(-76.53543,0,44.64566),(-70.86614,0,31.88976),(-56.69291,0,25.51181)}, + {(-76.53543,-8.503932,51.02362),(-76.53543,-8.503932,44.64566),(-70.86614,-8.503932,31.88976),(-56.69291,-8.503932,25.51181)}, + {(-85.03937,-8.503932,51.02362),(-85.03937,-8.503932,38.26771),(-75.11811,-8.503932,26.5748),(-53.85826,-8.503932,17.00787)}, + {(-85.03937,0,51.02362),(-85.03937,0,38.26771),(-75.11811,0,26.5748),(-53.85826,0,17.00787)} + },{ + {(-85.03937,0,51.02362),(-85.03937,0,38.26771),(-75.11811,0,26.5748),(-53.85826,0,17.00787)}, + {(-85.03937,8.503932,51.02362),(-85.03937,8.503932,38.26771),(-75.11811,8.503932,26.5748),(-53.85826,8.503932,17.00787)}, + {(-76.53543,8.503932,51.02362),(-76.53543,8.503932,44.64566),(-70.86614,8.503932,31.88976),(-56.69291,8.503932,25.51181)}, + {(-76.53543,0,51.02362),(-76.53543,0,44.64566),(-70.86614,0,31.88976),(-56.69291,0,25.51181)} + },{ + {(48.18897,0,40.3937),(73.70078,0,40.3937),(65.19685,0,59.52755),(76.53543,0,68.0315)}, + {(48.18897,-18.70866,40.3937),(73.70078,-18.70866,40.3937),(65.19685,-7.086619,59.52755),(76.53543,-7.086619,68.0315)}, + {(48.18897,-18.70866,17.00787),(87.87401,-18.70866,23.38582),(68.0315,-7.086619,57.40157),(93.5433,-7.086619,68.0315)}, + {(48.18897,0,17.00787),(87.87401,0,23.38582),(68.0315,0,57.40157),(93.5433,0,68.0315)} + },{ + {(48.18897,0,17.00787),(87.87401,0,23.38582),(68.0315,0,57.40157),(93.5433,0,68.0315)}, + {(48.18897,18.70866,17.00787),(87.87401,18.70866,23.38582),(68.0315,7.086619,57.40157),(93.5433,7.086619,68.0315)}, + {(48.18897,18.70866,40.3937),(73.70078,18.70866,40.3937),(65.19685,7.086619,59.52755),(76.53543,7.086619,68.0315)}, + {(48.18897,0,40.3937),(73.70078,0,40.3937),(65.19685,0,59.52755),(76.53543,0,68.0315)} + },{ + {(76.53543,0,68.0315),(79.37007,0,70.15748),(82.20472,0,70.15748),(79.37007,0,68.0315)}, + {(76.53543,-7.086619,68.0315),(79.37007,-7.086619,70.15748),(82.20472,-4.251961,70.15748),(79.37007,-4.251961,68.0315)}, + {(93.5433,-7.086619,68.0315),(99.92125,-7.086619,70.68897),(97.79527,-4.251961,71.22047),(90.70866,-4.251961,68.0315)}, + {(93.5433,0,68.0315),(99.92125,0,70.68897),(97.79527,0,71.22047),(90.70866,0,68.0315)} + },{ + {(93.5433,0,68.0315),(99.92125,0,70.68897),(97.79527,0,71.22047),(90.70866,0,68.0315)}, + {(93.5433,7.086619,68.0315),(99.92125,7.086619,70.68897),(97.79527,4.251961,71.22047),(90.70866,4.251961,68.0315)}, + {(76.53543,7.086619,68.0315),(79.37007,7.086619,70.15748),(82.20472,4.251961,70.15748),(79.37007,4.251961,68.0315)}, + {(76.53543,0,68.0315),(79.37007,0,70.15748),(82.20472,0,70.15748),(79.37007,0,68.0315)} + },{ + {(0,0,89.29133),(22.67716,0,89.29133),(0,0,80.7874),(5.669294,0,76.53543)}, + {(0,0,89.29133),(22.67716,-12.7559,89.29133),(0,0,80.7874),(5.669294,-3.174809,76.53543)}, + {(0,0,89.29133),(12.7559,-22.67716,89.29133),(0,0,80.7874),(3.174809,-5.669294,76.53543)}, + {(0,0,89.29133),(0,-22.67716,89.29133),(0,0,80.7874),(0,-5.669294,76.53543)} + },{ + {(0,0,89.29133),(0,-22.67716,89.29133),(0,0,80.7874),(0,-5.669294,76.53543)}, + {(0,0,89.29133),(-12.7559,-22.67716,89.29133),(0,0,80.7874),(-3.174809,-5.669294,76.53543)}, + {(0,0,89.29133),(-22.67716,-12.7559,89.29133),(0,0,80.7874),(-5.669294,-3.174809,76.53543)}, + {(0,0,89.29133),(-22.67716,0,89.29133),(0,0,80.7874),(-5.669294,0,76.53543)} + },{ + {(0,0,89.29133),(-22.67716,0,89.29133),(0,0,80.7874),(-5.669294,0,76.53543)}, + {(0,0,89.29133),(-22.67716,12.7559,89.29133),(0,0,80.7874),(-5.669294,3.174809,76.53543)}, + {(0,0,89.29133),(-12.7559,22.67716,89.29133),(0,0,80.7874),(-3.174809,5.669294,76.53543)}, + {(0,0,89.29133),(0,22.67716,89.29133),(0,0,80.7874),(0,5.669294,76.53543)} + },{ + {(0,0,89.29133),(0,22.67716,89.29133),(0,0,80.7874),(0,5.669294,76.53543)}, + {(0,0,89.29133),(12.7559,22.67716,89.29133),(0,0,80.7874),(3.174809,5.669294,76.53543)}, + {(0,0,89.29133),(22.67716,12.7559,89.29133),(0,0,80.7874),(5.669294,3.174809,76.53543)}, + {(0,0,89.29133),(22.67716,0,89.29133),(0,0,80.7874),(5.669294,0,76.53543)} + },{ + {(5.669294,0,76.53543),(11.33858,0,72.28346),(36.85039,0,72.28346),(36.85039,0,68.0315)}, + {(5.669294,-3.174809,76.53543),(11.33858,-6.349609,72.28346),(36.85039,-20.63622,72.28346),(36.85039,-20.63622,68.0315)}, + {(3.174809,-5.669294,76.53543),(6.349609,-11.33858,72.28346),(20.63622,-36.85039,72.28346),(20.63622,-36.85039,68.0315)}, + {(0,-5.669294,76.53543),(0,-11.33858,72.28346),(0,-36.85039,72.28346),(0,-36.85039,68.0315)} + },{ + {(0,-5.669294,76.53543),(0,-11.33858,72.28346),(0,-36.85039,72.28346),(0,-36.85039,68.0315)}, + {(-3.174809,-5.669294,76.53543),(-6.349609,-11.33858,72.28346),(-20.63622,-36.85039,72.28346),(-20.63622,-36.85039,68.0315)}, + {(-5.669294,-3.174809,76.53543),(-11.33858,-6.349609,72.28346),(-36.85039,-20.63622,72.28346),(-36.85039,-20.63622,68.0315)}, + {(-5.669294,0,76.53543),(-11.33858,0,72.28346),(-36.85039,0,72.28346),(-36.85039,0,68.0315)}, + },{ + {(-5.669294,0,76.53543),(-11.33858,0,72.28346),(-36.85039,0,72.28346),(-36.85039,0,68.0315)}, + {(-5.669294,3.174809,76.53543),(-11.33858,6.349609,72.28346),(-36.85039,20.63622,72.28346),(-36.85039,20.63622,68.0315)}, + {(-3.174809,5.669294,76.53543),(-6.349609,11.33858,72.28346),(-20.63622,36.85039,72.28346),(-20.63622,36.85039,68.0315)}, + {(0,5.669294,76.53543),(0,11.33858,72.28346),(0,36.85039,72.28346),(0,36.85039,68.0315)} + },{ + {(0,5.669294,76.53543),(0,11.33858,72.28346),(0,36.85039,72.28346),(0,36.85039,68.0315)}, + {(3.174809,5.669294,76.53543),(6.349609,11.33858,72.28346),(20.63622,36.85039,72.28346),(20.63622,36.85039,68.0315)}, + {(5.669294,3.174809,76.53543),(11.33858,6.349609,72.28346),(36.85039,20.63622,72.28346),(36.85039,20.63622,68.0315)}, + {(5.669294,0,76.53543),(11.33858,0,72.28346),(36.85039,0,72.28346),(36.85039,0,68.0315)}, + },{ + {(0,0,0),(40.3937,0,0),(42.51969,0,2.12598),(42.51969,0,4.251961)}, + {(0,0,0),(40.3937,22.62047,0),(42.51969,23.81102,2.12598),(42.51969,23.81102,4.251961)}, + {(0,0,0),(22.62047,40.3937,0),(23.81102,42.51969,2.12598),(23.81102,42.51969,4.251961)}, + {(0,0,0),(0,40.3937,0),(0,42.51969,2.12598),(0,42.51969,4.251961)} + },{ + {(0,0,0),(0,40.3937,0),(0,42.51969,2.12598),(0,42.51969,4.251961)}, + {(0,0,0),(-22.62047,40.3937,0),(-23.81102,42.51969,2.12598),(-23.81102,42.51969,4.251961)}, + {(0,0,0),(-40.3937,22.62047,0),(-42.51969,23.81102,2.12598),(-42.51969,23.81102,4.251961)}, + {(0,0,0),(-40.3937,0,0),(-42.51969,0,2.12598),(-42.51969,0,4.251961)} + },{ + {(0,0,0),(-40.3937,0,0),(-42.51969,0,2.12598),(-42.51969,0,4.251961)}, + {(0,0,0),(-40.3937,-22.62047,0),(-42.51969,-23.81102,2.12598),(-42.51969,-23.81102,4.251961)}, + {(0,0,0),(-22.62047,-40.3937,0),(-23.81102,-42.51969,2.12598),(-23.81102,-42.51969,4.251961)}, + {(0,0,0),(0,-40.3937,0),(0,-42.51969,2.12598),(0,-42.51969,4.251961)} + },{ + {(0,0,0),(0,-40.3937,0),(0,-42.51969,2.12598),(0,-42.51969,4.251961)}, + {(0,0,0),(22.62047,-40.3937,0),(23.81102,-42.51969,2.12598),(23.81102,-42.51969,4.251961)}, + {(0,0,0),(40.3937,-22.62047,0),(42.51969,-23.81102,2.12598),(42.51969,-23.81102,4.251961)}, + {(0,0,0),(40.3937,0,0),(42.51969,0,2.12598),(42.51969,0,4.251961)} } }; diff --git a/Master/texmf/doc/asymptote/examples/tensor.asy b/Master/texmf/doc/asymptote/examples/tensor.asy index 3791b032b92..aa633c4087b 100644 --- a/Master/texmf/doc/asymptote/examples/tensor.asy +++ b/Master/texmf/doc/asymptote/examples/tensor.asy @@ -1,8 +1,10 @@ size(200); -pen[][] p={{red,green,blue,cyan},{green,blue,rgb(black),magenta}}; +//pen[][] p={{red,green,blue,cyan},{green,blue,rgb(black),magenta}}; +pen[][] p={{red,green,blue,cyan},{blue,green,magenta,rgb(black)}}; path G=(0,0){dir(-120)}..(1,0)..(1,1)..(0,1)..cycle; -path[] g={G,subpath(G,1,2)..(2,1)..(2,0)..cycle}; +path[] g={G,subpath(G,2,1)..(2,0)..(2,1)..cycle}; pair[][] z={{(0.5,0.5),(0.5,0.5),(0.5,0.5),(0.5,0.5)},{(2,0.5),(2,0.5),(1.5,0.5),(2,0.5)}}; tensorshade(g,p,z); + dot(g); diff --git a/Master/texmf/doc/asymptote/examples/torus.asy b/Master/texmf/doc/asymptote/examples/torus.asy index 33d6e6ddb1a..c64c16701ad 100644 --- a/Master/texmf/doc/asymptote/examples/torus.asy +++ b/Master/texmf/doc/asymptote/examples/torus.asy @@ -1,7 +1,20 @@ size(200); -import solids; +import graph3; currentprojection=perspective(5,4,4); -revolution torus=revolution(shift(3X)*Circle(O,1,Y,32),Z,90,345); -draw(surface(torus),green); +real R=3; +real a=1; + +/* +import solids; +revolution torus=revolution(reverse(Circle(R*X,a,Y,32)),Z,90,345); +surface s=surface(torus); +*/ + +triple f(pair t) { + return ((R+a*cos(t.y))*cos(t.x),(R+a*cos(t.y))*sin(t.x),a*sin(t.y)); +} + +surface s=surface(f,(radians(90),0),(radians(345),2pi),8,8,Spline); +draw(s,green); diff --git a/Master/texmf/doc/asymptote/examples/trefoilknot.asy b/Master/texmf/doc/asymptote/examples/trefoilknot.asy index fb10e3def0e..3c5e4aecc5a 100644 --- a/Master/texmf/doc/asymptote/examples/trefoilknot.asy +++ b/Master/texmf/doc/asymptote/examples/trefoilknot.asy @@ -1,7 +1,7 @@ import tube; import graph3; import palette; -currentlight=adobe; +currentlight=White; size(0,8cm); currentprojection=perspective(1,1,1,up=-Y); diff --git a/Master/texmf/doc/asymptote/examples/trumpet.asy b/Master/texmf/doc/asymptote/examples/trumpet.asy new file mode 100644 index 00000000000..032f8a7ffd6 --- /dev/null +++ b/Master/texmf/doc/asymptote/examples/trumpet.asy @@ -0,0 +1,12 @@ +import graph3; +size(200,0); + +currentlight=Viewport; + +triple f(pair t) { + return(10*sin(t.y),cos(t.x)*(cos(t.y)+log(abs(tan(t.y/2)))), + sin(t.x)*(cos(t.y)+log(abs(tan(t.y/2))))); +} + +surface s=surface(f,(0,pi/2),(2pi,pi-0.1),7,15,Spline); +draw(s,olive); diff --git a/Master/texmf/doc/asymptote/examples/twistedtubes.asy b/Master/texmf/doc/asymptote/examples/twistedtubes.asy index 420e3898986..4d38d86f4df 100644 --- a/Master/texmf/doc/asymptote/examples/twistedtubes.asy +++ b/Master/texmf/doc/asymptote/examples/twistedtubes.asy @@ -11,10 +11,10 @@ triple f2(pair t) {return (cos(t.x)+2cos(w*t.y),sin(t.x)+2sin(w*t.y),t.y);} triple f3(pair t) {return (cos(t.x)+2sin(w*t.y),sin(t.x)-2cos(w*t.y),t.y);} triple f4(pair t) {return (cos(t.x)-2sin(w*t.y),sin(t.x)+2cos(w*t.y),t.y);} -surface s1=surface(f1,(0,0),(2pi,10),25,15); -surface s2=surface(f2,(0,0),(2pi,10),25,15); -surface s3=surface(f3,(0,0),(2pi,10),25,15); -surface s4=surface(f4,(0,0),(2pi,10),25,15); +surface s1=surface(f1,(0,0),(2pi,10),8,8,Spline); +surface s2=surface(f2,(0,0),(2pi,10),8,8,Spline); +surface s3=surface(f3,(0,0),(2pi,10),8,8,Spline); +surface s4=surface(f4,(0,0),(2pi,10),8,8,Spline); pen[] Rainbow=Rainbow(); s1.colors(palette(s1.map(f),Rainbow)); @@ -22,7 +22,7 @@ s2.colors(palette(s2.map(f),Rainbow)); s3.colors(palette(s3.map(f),Rainbow)); s4.colors(palette(s4.map(f),Rainbow)); -draw(s1,meshpen=black); -draw(s2,meshpen=black); -draw(s3,meshpen=black); -draw(s4,meshpen=black); +draw(s1); +draw(s2); +draw(s3); +draw(s4); diff --git a/Master/texmf/doc/asymptote/examples/wedge.asy b/Master/texmf/doc/asymptote/examples/wedge.asy index 9e0f8355308..6cf6a58975f 100644 --- a/Master/texmf/doc/asymptote/examples/wedge.asy +++ b/Master/texmf/doc/asymptote/examples/wedge.asy @@ -2,7 +2,7 @@ import graph3; import solids; size(0,150); currentprojection=perspective(8,10,2); -currentlight=adobe; +currentlight=White; draw(circle(O,4,Z)); draw(shift(-4Z)*scale(4,4,8)*unitcylinder,green+opacity(0.2)); diff --git a/Master/texmf/doc/asymptote/examples/westnile.asy b/Master/texmf/doc/asymptote/examples/westnile.asy index eaef31e1e87..7f63047983f 100644 --- a/Master/texmf/doc/asymptote/examples/westnile.asy +++ b/Master/texmf/doc/asymptote/examples/westnile.asy @@ -3,11 +3,11 @@ import graph; size(9cm,8cm,IgnoreAspect); string data="westnile.csv"; -file in=line(csv(input(data))); +file in=input(data).line().csv(); string[] columnlabel=in; -real[][] A=dimension(in,0,0); +real[][] A=in.dimension(0,0); A=transpose(A); real[] number=A[0], survival=A[1]; @@ -39,7 +39,7 @@ labelx("$M_2$",M2); draw((a,S2)--(M2,S2)--(M2,0),Dotted); draw((a,S1)--(M1,S1)--(M1,0),dashed); -pen p=fontsize(10); +pen p=fontsize(10pt); real y3=0.043; path reduction=(M1,y3)--(M2,y3); diff --git a/Master/texmf/doc/asymptote/examples/xsin1x.asy b/Master/texmf/doc/asymptote/examples/xsin1x.asy index f03714b79df..e419ba19a69 100644 --- a/Master/texmf/doc/asymptote/examples/xsin1x.asy +++ b/Master/texmf/doc/asymptote/examples/xsin1x.asy @@ -8,3 +8,11 @@ xaxis("$x$",red); yaxis(red); draw(graph(f,-1.2/pi,1.2/pi,1000)); label("$x\sin\frac{1}{x}$",F(1.1/pi),NW); + +picture pic; +size(pic,50,IgnoreAspect); +xaxis(pic,red); +yaxis(pic,red); +draw(pic,graph(pic,f,-0.1/pi,0.1/pi,1000)); +attach(bbox(pic,blue),point(N+0.85W),10SE); + diff --git a/Master/texmf/doc/asymptote/examples/xxsq01y.asy b/Master/texmf/doc/asymptote/examples/xxsq01y.asy index 14cf177256e..53f77d1f9bb 100644 --- a/Master/texmf/doc/asymptote/examples/xxsq01y.asy +++ b/Master/texmf/doc/asymptote/examples/xxsq01y.asy @@ -1,6 +1,6 @@ import solids; size(0,150); -currentprojection=perspective(0,0,10); +currentprojection=perspective(0,0,10,up=Y); pen color=green; real alpha=240; |