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

|
||||
|
||||
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.
|
||||
|
|
|
|||
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];
|
||||
companionCubeDims = [100,100,100];
|
||||
|
||||
|
|
@ -17,36 +17,40 @@ module companionCube(){
|
|||
}
|
||||
|
||||
module body(){
|
||||
difference(){
|
||||
companionCube();
|
||||
mirrorCopy([1,0,0],[0,0,1],[0,1,0]){
|
||||
translate([35,-35.5,35])
|
||||
rotate([90,0,0])
|
||||
metricCapheadAndBolt(6, 20, chamfer=false,recessCap=1);
|
||||
// bolt finger holes
|
||||
hull(){
|
||||
translate([35,-22,35])
|
||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||
translate([35,0,35])
|
||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||
translate([0,-22,0])
|
||||
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);
|
||||
render(){
|
||||
union(){
|
||||
difference(){
|
||||
companionCube();
|
||||
mirrorCopy([1,0,0],[0,0,1],[0,1,0]){
|
||||
translate([35,-35.5,35])
|
||||
rotate([90,0,0])
|
||||
metricCapheadAndBolt(6, 20, chamfer=false,recessCap=1);
|
||||
// bolt finger holes
|
||||
hull(){
|
||||
translate([35,-22,35])
|
||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||
translate([35,0,35])
|
||||
rotate([90,0,0])cylinder(h=1,d=15, center=true);
|
||||
translate([0,-22,0])
|
||||
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);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -85,8 +89,20 @@ module rear(){
|
|||
body();
|
||||
rearSlice();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
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){
|
||||
center();
|
||||
translate([0,-50,0])front();
|
||||
|
|
|
|||
Loading…
Reference in a new issue