3
1
Back

{ for(i=[0:fn-1]) assign(lf0=lf*i, lf1=lf*(i+1/2), lf2=lf*(i+1)) { polyhedron( points=[ [ 0,0,h0], [ ord*cos(lf0), ord*sin(lf0), h0], [ ird*cos(lf1), ird*sin(lf1), h0], [ ord*cos(lf2), ord*sin(lf2), h2] ], triangles=[ [0,1,2],[2,3,0], [1,0,4],[4,0,7],[7,8,4], [8,7,9],[10,9,7], [10,7,6],[6,7,0],[3,6,0], [2,1,4],[3,2,6],[10,6,9],[8,9,4], [4,5,2],[2,5,6],[6,5,9],[9,5,4] ], convexity=5); } } module rail(height) { difference() { difference() { union() { cube([board_width, board_height, thickness]); cylinder(thickness+standoff_height, r=standoff_radius, $fn=360); cylinder(h=thickness+standoff_height, r=standoff_radius, $fn=360); cylinder(h=thickness+standoff_height, r=standoff_radius, $fn=360); cylinder(h=thickness+standoff_height, r=standoff_radius, $fn=360); cylinder(h=thickness+standoff_height, r=standoff_radius, $fn=360); cube([cutout_width, cutout_height, thickness+3]); cylinder(h=thickness+standoff_height+3, r=hole_radius, $fn=360); vertex 0 10.1139 2.58057 vertex -9.81063 -2.33215 2.58057 facet normal -0.561108 -0.299919 0.771496 facet normal -0.815355 -0.435833 0.38111 facet normal -0.422844 -0.331516 0.843386 facet normal -0.828696 0.081619 0.553716 facet normal -4.078850e-02 -3.939388e-03 -9.991600e-01 vertex -1.066064e+02 9.725134e+01 1.291646e+01 facet normal -0.714663 -0.538413 0.446506 facet normal -0.55213 0.109736 -0.826505 vertex -2.90049 -0.00317369 18.9333 facet normal 9.978252e-001 -6.591540e-002 0.000000e+000 vertex 6.573270e+000 -2.717840e+000 1.747200e+001 facet normal -8.287950e-02 -2.558130e-03 9.965563e-01 facet normal 0.0546198 0.55473 0.830236 vertex 0 -6.2584 7.81508 facet normal 2.497929e-01 -9.682992e-01 -3.514337e-04 vertex -9.937538e+01 9.198972e+01 1.055000e+01 facet normal -0.00125241 -0.115499 0.993307 vertex -5.77925 4.28385 7.9151 facet normal 0.260574 -0.962887 0.0703596 facet normal -0.000825124 -0.1132 0.993572 vertex 0.948559 7.30706 6.90985 facet normal 0.807217 -0.0635208 0.586827 vertex 1.95005 -0.326085 19.9 vertex 2.94487 -2.00281 19.9 facet normal -7.266487e-01 -6.870092e-01 0.000000e+00 vertex -9.617936e+01 9.181029e+01 3.455000e+01 vertex -1.015464e+02 9.303519e+01 1.055000e+01 facet normal -4.233350e-13 -1.000000e+00 1.282173e-14 facet normal -0.0815293 0.0819688 0.993295 facet normal 3.574161e-001 -6.101281e-001 7.071050e-001 vertex -4.339132e+000 3.358283e+000 2.488700e+001 facet normal 0.471406 0.881916 0 facet normal 6.870092e-01 -7.266486e-01 3.386491e-04 facet normal 9.094768e-001 4.157546e-001 -0.000000e+000 vertex 4.344010e+000 3.615769e+000 1.747200e+001 facet normal 0.734388 -0.325732 0.595461 vertex 7.02194 0.878851 7.39225 facet normal 0.0623609 -0.633162 0.771503 vertex -8.39715 1.6703 5.56266 facet normal -0.133707 -0.0819149 0.98763 vertex 5.13783 0.11686 18.8084 vertex 3.19049 -0.191567 18.9636 facet normal 4.856502e-001 -8.349584e-001 2.588211e-001 vertex -7.384906e-001 5.335009e+000 2.470218e+001 facet normal 0.365095 -0.683044 0.63258 facet normal 6.013306e-01 -7.990003e-01 -3.390242e-04 vertex -9.322199e+01 9.303533e+01 1.855000e+01 vertex -1.036795e+02 9.542199e+01 2.655000e+01 facet normal 6.204278e-01 0.000000e+00 7.842636e-01 facet normal -0.0819033 0.0819011 -0.993269 facet.

New Pull Request