include<dependencies.scad>
r=5;
n1=6;
n2=10;
a=circle(5,s=6);
b=q_rot(["z30"],a);
sec=[for(i=[0:3*r:3*n1*r]) trns([i,0,0],a)];
sec1=[for(i=[1.5*r:3*r:3*n1*r]) trns([i,r*sin(60),0],a)];
sec2=[for(i=[0:2*r*sin(60):r*sin(60)*(n2*2)]) trns([r*cos(60),i,0],sec)];
sec3=[for(i=[0:2*r*sin(60):r*sin(60)*(n2*2)]) trns([r*cos(60),i,0],sec1)];

sec4=cr(pts1([[0,0,4],[90,0,4],[0,90,4],[-90,0,4]]),10);
path=cr(pts1([[-10,0],[10,0,2],[0,4,2],[-10,0]]),10);
sol1=prism(sec4,path);



intersection(){
swp(sol1);
linear_extrude(4){
for(p=sec3)for(p1=p)p_line(p1,1);
for(p=sec2)for(p1=p)p_line(p1,1);
}
}
difference(){
swp(sol1);
translate([45,45,-.5])
linear_extrude(5)
circle(40);
}