diff --git a/CurveTest.scad b/CurveTest.scad
new file mode 100644
index 0000000000000000000000000000000000000000..78001c759875b4453dbc9056fb7ab377460c6157
--- /dev/null
+++ b/CurveTest.scad
@@ -0,0 +1,58 @@
+
+$fs = 1;
+$fa = $fs;
+
+
+use </home/fxk8y/git/CyanLight/WebWeaver/scad/Piping.scad>;
+
+
+/* module pipe(outer=true) {
+  rotate([-90, 0, 0]) cornerPipe(10, 30, 10, 180, 5, 1.6, center=true, outer=outer);
+}
+
+
+
+
+pipe();
+
+difference() {
+  for (tx=[-12, 12]) translate([tx, 0, -15]) cylinder(d=5, h=15);
+  pipe(false);
+} */
+
+
+
+r = 5;
+w = 30;
+h = 10;
+_str = 1.6;
+
+ml = 20;  // mouth-piece
+
+d0 = 10;
+
+translate([-d0 -h, 0, 0]) rotate([90, 90, 0]) cornerPipe(h, w, d0, 90, r, _str, center=true);
+
+_wh = 10;
+l0 = 50;
+translate([-l0 -d0 -h -d0/2, 0, -d0]) rotate([0, 90, 0]) helixPipe(w, h, l0, 50, 270, _wh/2, _str);
+
+
+rotate([90, 0, 0]) cornerPipe(h, w, d0, 180, r, _str, center=true);
+translate([d0 + h, 0, 0]) rotate([-90, 0, 0]) cornerPipe(h, w, d0, 180, r, _str, center=true);
+
+translate([d0+h + d0+h, 0, 0]) rotate([90, -90, 0]) cornerPipe(h, w, d0, 90, r, _str, center=true);
+
+
+wh = 15;
+translate([d0+h + d0+h, 0, d0]) {
+  rotate([90, 0, 90]) adapterPipe(w, h, r, _str, wh, wh, wh/2, _str, ml);
+  translate([ml, 0, 0]) rotate([0, 90, 0]) straightPipe(wh, wh, 10, wh/2, _str);
+}
+
+
+translate([d0*2, 0, -d0 -h -d0/2]) rotate([0, 0, 90]) straightPipe(23, h, 10, r, 1);
+
+translate([d0*6.5, 0, -d0 -h -d0/2]) rotate([0, 0, 90]) straightPipe(5, 5, 28, 5/2, 1);
+
+for (tx=[-67, -60+25]) translate([tx, 0, -d0 -h -d0/2]) cylinder(d=10, h=1);