summaryrefslogtreecommitdiff
path: root/Master/texmf/doc/asymptote/examples/logo3.asy
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf/doc/asymptote/examples/logo3.asy')
-rw-r--r--Master/texmf/doc/asymptote/examples/logo3.asy36
1 files changed, 22 insertions, 14 deletions
diff --git a/Master/texmf/doc/asymptote/examples/logo3.asy b/Master/texmf/doc/asymptote/examples/logo3.asy
index 932efaca410..93b5a331e9e 100644
--- a/Master/texmf/doc/asymptote/examples/logo3.asy
+++ b/Master/texmf/doc/asymptote/examples/logo3.asy
@@ -2,32 +2,40 @@ import three;
size(560,320,IgnoreAspect);
size3(140,80,15);
-currentprojection=perspective(-3,20,10,up=Y);
+currentprojection=perspective(-2,20,10,up=Y);
currentlight=White;
-path[] outline;
-
real a=-0.4;
real b=0.95;
real y1=-5;
real y2=-3y1/2;
path A=(a,0){dir(10)}::{dir(89.5)}(0,y2);
-outline.push(A);
-outline.push((0,y1){dir(88.3)}::{dir(20)}(b,0));
+path B=(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)*
+transform t=scale(1,15);
+transform T=inverse(scale(t.yy,t.xx));
+path[] g=shift(0,1.979)*scale(0.01)*t*
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);
-outline.push((0,y1)--(0,y2));
-outline.push((a,0)--(b,0));
+pair u=intersectionpoint(A,w-1--w);
+
+real h=0.25*linewidth();
+real hy=(T*(h,h)).x;
+g.push(t*((a,hy)--(b,hy)..(b+hy,0)..(b,-hy)--(a,-hy)..(a-hy,0)..cycle));
+g.push(T*((h,y1)--(h,y2)..(0,y2+h)..(-h,y2)--(-h,y1)..(0,y1-h)..cycle));
+g.push(shift(0,w.y)*t*((u.x,hy)--(w.x,hy)..(w.x+hy,0)..(w.x,-hy)--(u.x,-hy)..(u.x-hy,0)..cycle));
+real f=0.75;
+g.push(point(A,0)--shift(-f*hy,f*h)*A--point(A,1)--shift(f*hy,-f*h)*reverse(A)--cycle);
+g.push(point(B,0)--shift(f*hy,-f*h)*B--point(B,1)--shift(-f*hy,f*h)*reverse(B)--cycle);
-for(path p : outline)
- draw(extrude(p,-0.1Z),material(lightgray,shininess=1.0));
+triple H=-0.1Z;
+material m=material(lightgray,shininess=1.0);
-draw(path3(outline),red+linewidth(0));
+for(path p : g)
+ draw(extrude(p,H),m);
-draw(surface(text),red,nolight);
+surface s=surface(g);
+draw(s,red,nolight);
+draw(shift(H)*s,m);