anims
This commit is contained in:
parent
29d501e64e
commit
95eaaa28ce
6 changed files with 78 additions and 52 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
frame*.png
|
|
@ -1,2 +1,8 @@
|
|||
# Space-Light-Button-Stands
|
||||
Space Light Button Stands
|
||||
=========================
|
||||
|
||||
Little stands to hold the ikea zigbee buttons in the aux and main spaces
|
||||
|
||||
![](./main_space_light_button-stand.gif)
|
||||
![](./aux_space_light_button-stand.gif)
|
||||
|
||||
|
|
BIN
aux_space_light_button_stand.gif
Normal file
BIN
aux_space_light_button_stand.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 MiB |
|
@ -3,43 +3,53 @@ radius=5;
|
|||
|
||||
use <lib/mirrorcopy.scad>;
|
||||
|
||||
difference(){
|
||||
union(){
|
||||
hull(){
|
||||
translate([0,0,20])
|
||||
cylinder(h=1, d=45, center=true);
|
||||
|
||||
translate([0,0,0])
|
||||
cylinder(h=1, d=45, center=true);
|
||||
|
||||
translate([0,0,30])
|
||||
rotate([0,45,0])
|
||||
translate([5,0,0])
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([(35-radius)/2,(35-radius)/2,0.5])
|
||||
cylinder(h=1,r=radius, center=true);
|
||||
}
|
||||
|
||||
translate([0,0,30]){
|
||||
rotate([0,45,0]){
|
||||
difference(){
|
||||
hull(){
|
||||
module stand(){
|
||||
render()
|
||||
difference(){
|
||||
union(){
|
||||
hull(){
|
||||
translate([0,0,20])
|
||||
cylinder(h=1, d=45, center=true);
|
||||
|
||||
translate([0,0,0])
|
||||
cylinder(h=1, d=45, center=true);
|
||||
|
||||
translate([0,0,30])
|
||||
rotate([0,45,0])
|
||||
translate([5,0,0])
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([(35-radius)/2,(35-radius)/2,0.5])
|
||||
cylinder(h=1,r=radius, center=true);
|
||||
translate([0,0,0])
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([(45-radius)/2,(45-radius)/2,24.5])
|
||||
cylinder(h=1,r=radius, center=true);
|
||||
}
|
||||
|
||||
translate([0,0,30]){
|
||||
rotate([0,45,0]){
|
||||
difference(){
|
||||
hull(){
|
||||
translate([5,0,0])
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([(35-radius)/2,(35-radius)/2,0.5])
|
||||
cylinder(h=1,r=radius, center=true);
|
||||
translate([0,0,0])
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([(45-radius)/2,(45-radius)/2,24.5])
|
||||
cylinder(h=1,r=radius, center=true);
|
||||
}
|
||||
mirrorCopy([1,0,0])
|
||||
translate([25/2,0,25/2+0.5])
|
||||
cylinder(d=3.2, h=24, center=true);
|
||||
}
|
||||
mirrorCopy([1,0,0])
|
||||
translate([25/2,0,25/2+0.5])
|
||||
cylinder(d=3.2, h=24, center=true);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate([0,0,10-1])
|
||||
cylinder(h=30, d=35, center=true);
|
||||
}
|
||||
translate([0,0,10-1])
|
||||
cylinder(h=30, d=35, center=true);
|
||||
}
|
||||
|
||||
if($preview){
|
||||
rotate([0,0,360*$t])
|
||||
stand();
|
||||
}else{
|
||||
stand();
|
||||
}
|
BIN
main_space_light_button_stand.gif
Normal file
BIN
main_space_light_button_stand.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 MiB |
|
@ -57,27 +57,36 @@ module pedistal(){
|
|||
cylinder(d=3.2, h=24, center=true);
|
||||
}
|
||||
}
|
||||
difference(){
|
||||
union(){
|
||||
hull(){ base(); ring0(); }
|
||||
hull(){ ring0(); ring1(); }
|
||||
hull(){ ring1(); ring2(); }
|
||||
hull(){ ring2(); ring3(); }
|
||||
hull(){ ring3(); ring4(); }
|
||||
hull(){ ring4(); ring5(); }
|
||||
hull(){ ring5(); ring6(); }
|
||||
hull(){ ring6(); ring7(); }
|
||||
pedistal();
|
||||
module column(){
|
||||
render()
|
||||
difference(){
|
||||
union(){
|
||||
hull(){ base(); ring0(); }
|
||||
hull(){ ring0(); ring1(); }
|
||||
hull(){ ring1(); ring2(); }
|
||||
hull(){ ring2(); ring3(); }
|
||||
hull(){ ring3(); ring4(); }
|
||||
hull(){ ring4(); ring5(); }
|
||||
hull(){ ring5(); ring6(); }
|
||||
hull(){ ring6(); ring7(); }
|
||||
pedistal();
|
||||
}
|
||||
|
||||
pcd(360/12)groove();
|
||||
|
||||
mirrorCopy([1,0,0])
|
||||
translate([25/2,0,25/2+0.5+110])
|
||||
cylinder(d=3.2, h=24, center=true);
|
||||
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([17.5,17.5,-4])
|
||||
selfTappingScrew(mSize=5, length=20, recessCap=10);
|
||||
}
|
||||
|
||||
pcd(360/12)groove();
|
||||
|
||||
mirrorCopy([1,0,0])
|
||||
translate([25/2,0,25/2+0.5+110])
|
||||
cylinder(d=3.2, h=24, center=true);
|
||||
|
||||
mirrorCopy([1,0,0],[0,1,0])
|
||||
translate([17.5,17.5,-4])
|
||||
selfTappingScrew(mSize=5, length=20, recessCap=10);
|
||||
}
|
||||
|
||||
if($preview){
|
||||
rotate([0,0,360*$t])
|
||||
column();
|
||||
}else{
|
||||
column();
|
||||
}
|
Loading…
Reference in a new issue