add a goofy gif
This commit is contained in:
parent
314e943054
commit
595078d6fc
4 changed files with 49 additions and 29 deletions
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
*.png
|
||||||
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
# fondlecube
|
# fondlecube
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
A housing for an Aqara "magic cube" that makes it look like a companion cube that uses some M6 fasteners to bolt it together.
|
A housing for an Aqara "magic cube" that makes it look like a companion cube that uses some M6 fasteners to bolt it together.
|
||||||
|
|
||||||
Quickly hacked out by taking a companion cube stl and butchering it.
|
Quickly hacked out by taking a companion cube stl and butchering it.
|
||||||
|
|
|
||||||
BIN
fondlecube.gif
Normal file
BIN
fondlecube.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
|
|
@ -1,4 +1,4 @@
|
||||||
$fn = 120;
|
$fn = 30;
|
||||||
fondleCubeDims = [45,45,45];
|
fondleCubeDims = [45,45,45];
|
||||||
companionCubeDims = [100,100,100];
|
companionCubeDims = [100,100,100];
|
||||||
|
|
||||||
|
|
@ -17,36 +17,40 @@ module companionCube(){
|
||||||
}
|
}
|
||||||
|
|
||||||
module body(){
|
module body(){
|
||||||
difference(){
|
render(){
|
||||||
companionCube();
|
union(){
|
||||||
mirrorCopy([1,0,0],[0,0,1],[0,1,0]){
|
difference(){
|
||||||
translate([35,-35.5,35])
|
companionCube();
|
||||||
rotate([90,0,0])
|
mirrorCopy([1,0,0],[0,0,1],[0,1,0]){
|
||||||
metricCapheadAndBolt(6, 20, chamfer=false,recessCap=1);
|
translate([35,-35.5,35])
|
||||||
// bolt finger holes
|
rotate([90,0,0])
|
||||||
hull(){
|
metricCapheadAndBolt(6, 20, chamfer=false,recessCap=1);
|
||||||
translate([35,-22,35])
|
// bolt finger holes
|
||||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
hull(){
|
||||||
translate([35,0,35])
|
translate([35,-22,35])
|
||||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||||
translate([0,-22,0])
|
translate([35,0,35])
|
||||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||||
translate([0,0,0])
|
translate([0,-22,0])
|
||||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||||
|
translate([0,0,0])
|
||||||
|
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Heart-removers
|
||||||
|
rotate([0,0,0])
|
||||||
|
mirrorCopy([0,0,1])
|
||||||
|
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
||||||
|
rotate([90,0,0])
|
||||||
|
mirrorCopy([0,0,1])
|
||||||
|
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
||||||
|
rotate([0,90,0])
|
||||||
|
mirrorCopy([0,0,1])
|
||||||
|
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Heart-removers
|
|
||||||
rotate([0,0,0])
|
|
||||||
mirrorCopy([0,0,1])
|
|
||||||
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
|
||||||
rotate([90,0,0])
|
|
||||||
mirrorCopy([0,0,1])
|
|
||||||
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
|
||||||
rotate([0,90,0])
|
|
||||||
mirrorCopy([0,0,1])
|
|
||||||
translate([0,0,46.337-2])cylinder(h=5,d=30, center=true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -87,6 +91,18 @@ module rear(){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
y=($t*2);
|
||||||
|
u=y>1?1-(y-1):y;
|
||||||
|
|
||||||
|
echo("t=", str($t), "y=",str(y), "u=", str(u));
|
||||||
|
|
||||||
|
|
||||||
|
render()rotate([0,0,360*$t]){
|
||||||
|
center();
|
||||||
|
translate([0,-50*u,0])front();
|
||||||
|
translate([0,+50*u,0])rear();
|
||||||
|
}
|
||||||
|
/*
|
||||||
if(!$preview){
|
if(!$preview){
|
||||||
center();
|
center();
|
||||||
translate([0,-50,0])front();
|
translate([0,-50,0])front();
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue