test_len = eclip_each_len + eclip_each_every*(test_eclips-1);
echo("test_len",test_len);
+num_eclips = 5;
+
// calculated
include <utils.scad>
module TestBase(){ ////toplevel
translate([0,0, eclip_base_offset]){
- for (i=[0 : 2: test_eclips-1]) {
+ for (i=[1 : 2: test_eclips-2]) {
translate([0, i*eclip_each_every])
rotate([90,0,0])
linear_extrude(height=eclip_each_len)
EclipLPlan(test_alpha);
}
- for (j=[1 : 2: test_eclips-2]) {
+ for (j=[0 : 2: test_eclips-1]) {
translate([0, j*eclip_each_every])
rotate([90,0,0])
linear_extrude(height=eclip_each_len)
thicks = [ 2, 2, 2 ];
module Joins(alpha, objnum, objnum_f, objnum_m) {
+ pitch = (front_width - eclip_each_len) / (num_eclips-1);
+
echo("Joins",objnum, objnum_f, objnum_m);
thm = thicks[objnum_m];
+ stride = (front_width - eclip_each_len) / (num_eclips-1);
+
if (objnum==objnum_f) {
- EclipLPlan(alpha);
- EclipRPlan(alpha, thm);
+ for (i=[ 0 : 2 : num_eclips-1 ]) {
+ translate([0, i*stride, 0]) {
+ rotate([90,0,0])
+ linear_extrude(height=eclip_each_len)
+ EclipLPlan(alpha);
+ }
+ }
+ for (i=[ 1 : 2 : num_eclips-1 ]) {
+ translate([0, i*stride, 0]) {
+ rotate([90,0,0])
+ linear_extrude(height=eclip_each_len)
+ EclipRPlan(alpha, thm);
+ }
+ }
}
- if (objnum==objnum_m)
- rotate(alpha)
- EclipPPlan(thm);
+// if (objnum==objnum_m)
+// rotate(alpha)
+// EclipPPlan(thm);
}
+function r3(pc) = [ pc[0], 0, pc[1] ];
+
module ObjectJoins(objnum){
echo("Object",objnum);
- translate(pp) Joins(beta, objnum, 0,1);
- translate(pr) mirror([1,0,0]) Joins(0, objnum, 0,2);
- translate(pq) rotate([0,0,-90]) Joins(beta, objnum, 2,1);
+ translate(r3(pp)) Joins(beta, objnum, 0,1);
+ translate(r3(pr)) mirror([1,0,0]) Joins(0, objnum, 0,2);
+ translate(r3(pq)) rotate([0,-90,0]) Joins(beta, objnum, 2,1);
}
module Base(){
//TestProtr();
//TestRAProtr();
//Sketch();
-//Demo();
+Demo();