summaryrefslogtreecommitdiff
path: root/graphics/asymptote/examples/BezierSurface.asy
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/asymptote/examples/BezierSurface.asy')
-rw-r--r--graphics/asymptote/examples/BezierSurface.asy42
1 files changed, 42 insertions, 0 deletions
diff --git a/graphics/asymptote/examples/BezierSurface.asy b/graphics/asymptote/examples/BezierSurface.asy
new file mode 100644
index 0000000000..62c01a5571
--- /dev/null
+++ b/graphics/asymptote/examples/BezierSurface.asy
@@ -0,0 +1,42 @@
+import three;
+
+string viewpoint="
+COO=-684.0787963867188 206.90650939941406 218.13809204101562
+C2C=0.8244762420654297 -0.563306450843811 0.0540805421769619
+ROO=1009.7407942621448
+ROLL=17.39344555165265
+";
+
+// viewpoint=getstring("viewpoint",viewpoint);
+currentprojection=perspective(viewpoint);
+
+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,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,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.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);
+size3(pic,10cm);
+draw(pic,surface(P),blue);
+
+add(embed("label",pic),(0,0),N);