This commit is contained in:
Greyscale 2024-06-24 11:19:21 +02:00
parent 29d501e64e
commit 95eaaa28ce
No known key found for this signature in database
GPG key ID: 74BAFF55434DA4B2
6 changed files with 78 additions and 52 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
frame*.png

View file

@ -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)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View file

@ -3,43 +3,53 @@ radius=5;
use <lib/mirrorcopy.scad>; use <lib/mirrorcopy.scad>;
difference(){ module stand(){
union(){ render()
hull(){ difference(){
translate([0,0,20]) union(){
cylinder(h=1, d=45, center=true); hull(){
translate([0,0,20])
translate([0,0,0]) cylinder(h=1, d=45, center=true);
cylinder(h=1, d=45, center=true);
translate([0,0,0])
translate([0,0,30]) cylinder(h=1, d=45, center=true);
rotate([0,45,0])
translate([5,0,0]) translate([0,0,30])
mirrorCopy([1,0,0],[0,1,0]) rotate([0,45,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(){
translate([5,0,0]) translate([5,0,0])
mirrorCopy([1,0,0],[0,1,0]) mirrorCopy([1,0,0],[0,1,0])
translate([(35-radius)/2,(35-radius)/2,0.5]) translate([(35-radius)/2,(35-radius)/2,0.5])
cylinder(h=1,r=radius, center=true); 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]) translate([0,0,30]){
cylinder(h=1,r=radius, center=true); 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();
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 MiB

View file

@ -57,27 +57,36 @@ module pedistal(){
cylinder(d=3.2, h=24, center=true); cylinder(d=3.2, h=24, center=true);
} }
} }
difference(){ module column(){
union(){ render()
hull(){ base(); ring0(); } difference(){
hull(){ ring0(); ring1(); } union(){
hull(){ ring1(); ring2(); } hull(){ base(); ring0(); }
hull(){ ring2(); ring3(); } hull(){ ring0(); ring1(); }
hull(){ ring3(); ring4(); } hull(){ ring1(); ring2(); }
hull(){ ring4(); ring5(); } hull(){ ring2(); ring3(); }
hull(){ ring5(); ring6(); } hull(){ ring3(); ring4(); }
hull(){ ring6(); ring7(); } hull(){ ring4(); ring5(); }
pedistal(); 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();
}