add a goofy gif

This commit is contained in:
Greyscale 2024-06-20 04:31:34 +02:00
parent 314e943054
commit 595078d6fc
No known key found for this signature in database
GPG key ID: 74BAFF55434DA4B2
4 changed files with 49 additions and 29 deletions

2
.gitignore vendored Normal file
View file

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

View file

@ -1,5 +1,7 @@
# fondlecube
![](./fondlecube.gif)
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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

View file

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