40 lines
2.0 KiB
OpenSCAD
40 lines
2.0 KiB
OpenSCAD
// Thermaltake Xaser III Feet Replacement for retro-computer
|
|
// by zeus - 2022-06-03 - CC-BY-NC-SA-4.0
|
|
// ###
|
|
// vars:
|
|
mt=6; //material thickness
|
|
base_w_outer=50; // overall base outer dimensions
|
|
base_l_outer=75;
|
|
base_w=15+mt; // size of the base-tab with screw-holes
|
|
base_l=10+mt;
|
|
hole_dia=5; // exactly 5.00 for M5 threaded inserts
|
|
hole_dia_recess=5.25;
|
|
recess_depth=0.5;
|
|
flange_h=50;
|
|
flange_angle=25; // in degrees
|
|
foot_percentage=0.4; // percentage of the flange-area which is not angled, but used as surface to stand on. 1=100%. rough extimate!, realisticly 0.05 is 0% and 0.95 is 100%
|
|
$fn=100;
|
|
// model:
|
|
|
|
module base(){
|
|
difference(){
|
|
union(){
|
|
translate([base_w_outer/2,base_l/2,mt/2])cube([base_w_outer,base_l,mt],center=true); //one base-wing
|
|
translate([mt/2,base_l_outer/2,flange_h/2])cube([mt,base_l_outer,flange_h],center=true); // one flange
|
|
translate([base_w/2,base_l_outer/2,mt/2])cube([base_w,base_l_outer,mt],center=true); //other base-wing
|
|
translate([base_w_outer/2,mt/2,flange_h/2])cube([base_w_outer,mt,flange_h],center=true); // other flange
|
|
}
|
|
translate([(base_w_outer+mt)*foot_percentage,mt/2,flange_h+(flange_h/2)])rotate([0,flange_angle,0])cube([(base_w_outer*2+mt)*2,mt+0.1,flange_h],center=true); // triangular cut, "w" side
|
|
translate([mt/2,(base_l_outer+mt)*foot_percentage,flange_h+(flange_h/2)])rotate([-flange_angle,0,0])cube([mt+0.1,(base_l_outer*2+mt)*2,flange_h],center=true); // triangular cut, "l" side
|
|
for(x=[base_w/2+hole_dia/2,base_w_outer-hole_dia/2-mt/2],y=[base_l/2+hole_dia/2,base_l_outer-hole_dia/2-mt/2]){
|
|
translate([x,y,mt/2]){
|
|
cylinder(h=mt+0.1,r=hole_dia/2,center=true); // insert-hole
|
|
translate([0,0,-mt/2+recess_depth/2-0.01])#cylinder(h=recess_depth,r1=hole_dia_recess/2,r2=hole_dia/2,center=true); // insertion-helper
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
|
|
base();
|
|
// translate([-mt,0,0]) mirror([1,0,0]) base(); |