//Lantern fairy light cap generator
//ADJUST THESE THREE VARIABLES TO SUIT
LED=5;          //LED HOLE diameter (3 or 5?)
diameter=30;    //Diameter of lantern 20-100
facets=9;       //Number of facets 3-360
//Don't touch variables below this line
cap=diameter/3;
base=cap*2;
difference(){
union(){
difference(){
union(){
//lantern base
translate([0,0,10])
cylinder(h=cap,d1=8,d2=diameter,$fn=facets);
//lantern core
translate([0,0,cap+10])
cylinder(h=base,d1=diameter,d2=diameter,$fn=facets);
//lantern cap
translate([0,0,diameter+10])
cylinder(h=cap,d1=diameter,d2=0,$fn=facets);
}
//base interior
translate([0,0,10])
cylinder(h=cap,d1=6,d2=diameter-2,$fn=facets);
//core interior
translate([0,0,cap+10])
cylinder(h=base,d1=diameter-2,d2=diameter-2,$fn=facets);
//cap interior
translate([0,0,diameter+10])
cylinder(h=cap-1,d1=diameter-2,d2=0,$fn=facets);
}

//LED INSERT

//LED base cylinder
translate([0,0,0])
cylinder(h=15,d1=10,d2=10,$fn=60);
//LED base dome
translate([0,0,15])
cylinder(h=3,d1=10,d2=LED+1,$fn=60);
}
//LED base interior
translate([0,0,-1])
cylinder(h=16,d1=8,d2=8,$fn=60);
//LED dome interior
translate([0,0,15])
cylinder(h=2,d1=8,d2=LED,$fn=60);
//LED hole
translate([0,0,15])
cylinder(h=5,d1=LED,d2=LED,$fn=60);

//x-ray cube
//translate([-50,-50,-1])
//cube([100,50,100]);
    }