+// for cross-section calculations:
+//
+// origin O is at intersection of straight line segments forming walls
+// C is centre of circle (wire x-section) (of radius r or radius 1)
+// which is tangent to lines
+// T is said tangent points
+// B is inner base point, which is extension of line from B by mu*r
+
+sina = sin(alpha);
+cosa = cos(alpha);
+tana = sina/cosa;
+
+// blah_r is blah where r=1
+// d_AB is distance AB
+// dy_AB is " " " vertical component
+
+d_OT_r = tana;
+d_OB_r = tana + mu;
+
+d_OC_r = 1/cosa;
+
+dy_OB_r = d_OB_r * sina;
+
+// *0 and *1 relate to smallest and largest wire
+// r[01] is radius
+// r10 is radius ratio
+
+r10 = d_OC_r / dy_OB_r;
+
+r0 = rnom / sqrt(r10);
+r1 = rnom * sqrt(r10);
+
+x_B_r = d_OB_r * cosa;
+y_B_r = -dy_OB_r;
+
+x_T_r = sina;
+y_T_r = -tana * sina;
+
+wall_x_r = wall_r / tan(90-alpha);
+
+top = wall_r * r1 - (d_OC_r - 1) * r0;
+basew = base_r * rnom;
+
+echo("dias", r0*2, r1*2, "ratio",r1/r0);
+
+module CrossSectionHalf(plus=0) {