Initial commit lol
This commit is contained in:
parent
45bab3fdcb
commit
e38846b8c8
6 changed files with 104 additions and 0 deletions
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
[submodule "lib"]
|
||||
path = lib
|
||||
url = git@code.techinc.nl:grey/MattSCAD.git
|
|
@ -1,2 +1,6 @@
|
|||
# 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
Weighted_Companion_Cube.stl
Normal file
BIN
Weighted_Companion_Cube.stl
Normal file
Binary file not shown.
96
fondlecube.scad
Normal file
96
fondlecube.scad
Normal file
|
@ -0,0 +1,96 @@
|
|||
$fn = 120;
|
||||
fondleCubeDims = [45,45,45];
|
||||
companionCubeDims = [100,100,100];
|
||||
|
||||
use <lib/mirrorcopy.scad>
|
||||
use <lib/metric_bolts.scad>
|
||||
|
||||
//cube(fondleCubeDims,center=true);
|
||||
|
||||
//#cube(companionCubeDims, center=true);
|
||||
|
||||
module companionCube(){
|
||||
scale([10,10,10])
|
||||
scale([1/2.54,1/2.54,1/2.54])
|
||||
translate([-25.4/2,-25.4/2,-25.4/2])
|
||||
import("Weighted_Companion_Cube.stl");
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 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);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
module centerSlice(){
|
||||
cube([100,75,110], center=true);
|
||||
}
|
||||
module frontSlice(){
|
||||
cube([100,75,110], center=true);
|
||||
translate([0,75,0])cube([100,75,110], center=true);
|
||||
}
|
||||
module rearSlice(){
|
||||
cube([100,75,110], center=true);
|
||||
translate([0,-75,0])cube([100,75,110], center=true);
|
||||
}
|
||||
|
||||
// center part
|
||||
module center(){
|
||||
intersection(){
|
||||
difference(){
|
||||
body();
|
||||
cube(fondleCubeDims + [0,500,0], center=true);
|
||||
}
|
||||
centerSlice();
|
||||
}
|
||||
}
|
||||
module front(){
|
||||
difference(){
|
||||
body();
|
||||
frontSlice();
|
||||
}
|
||||
}
|
||||
module rear(){
|
||||
difference(){
|
||||
body();
|
||||
rearSlice();
|
||||
}
|
||||
}
|
||||
|
||||
if(!$preview){
|
||||
center();
|
||||
translate([0,-50,0])front();
|
||||
translate([0,+50,0])rear();
|
||||
}else{
|
||||
#body();
|
||||
}/**/
|
BIN
fondlecube.stl
Normal file
BIN
fondlecube.stl
Normal file
Binary file not shown.
1
lib
Submodule
1
lib
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit a407f8fc9f3b91593d2aefee4ae77c8d15e1f2d7
|
Loading…
Reference in a new issue