// settings etc.
pin_stemwidth = 1.5;
-pin_stemlen = 1.5;
+pin_stemlen = 1.0;
pin_headwidth = 3.0;
-pin_headheight = 1.0;
+pin_headheight = 0.5;
pin_slot_xslop = 0.25;
-pin_yadj_range = [ -0.75, +0.5 ];
+pin_yadj_range = [ -0.50, +0.25 ];
pin_yslop = 0.25;
pin_pin_xslop = 0.00;
);
}
-module PlacePins(){
- for (i=[0,1]) {
+module PlacePins(pins=[0,1]){
+ for (i=pins) {
translate( moebius_pin_locns[i] * moebiuscore_nomsize ) {
multmatrix(moebius_pin_matrix[i])
children(0);
cube([1,4,9]);
}
-MainBody();
-%PinDemo();
+module Top(){ ////toplevel
+ difference(){
+ intersection(){
+ MoebiusCore();
+ TopSlice();
+ }
+ PlacePins(){
+ PinCutout();
+ }
+ }
+}
+
+module Bottom(){ ////toplevel
+ difference(){
+ MoebiusCore();
+ TopSlice();
+ PlacePins()
+ mirror([0,1,0]) PinCutout();
+ }
+}
+
+module Demo(){ ////toplevel
+ Bottom();
+ %Top();
+ color("blue") PlacePins([0]) Pin();
+}
+
+module Kit(){ ////toplevel
+ off = moebiuscore_nomsize*2.5;
+ translate([0,0,sliceat])
+ Top();
+ translate([ 0, -off, 0 ])
+ rotate([0,180,0])
+ translate([0,0,sliceat])
+ Bottom();
+ for (d = [0,1] * pin_height * 2)
+ translate([ off, d, 0 ])
+ rotate([90,0,0])
+ translate([ 0,0, pin_height/2 ])
+ Pin();
+}
+
+//MainBody();
+//%PinDemo();
//PinExtrude([-2,10]);
//PinCutout();
//Pin();
//%PinCutout();
+//Top();
+//Bottom();
+Kit();
+//Demo();