What is Nostr?
MrMik
npub14et…qwsa
2024-02-07 09:20:20
in reply to nevent1q…h3pq

MrMik on Nostr: Lets see how Nostr copes with a bit of code Paste the following into OpenSCAD to make ...

Lets see how Nostr copes with a bit of code
Paste the following into OpenSCAD to make a 3D printable Apollo to 200mm Noctua fan adapter:

$fn=100;
_min = 0.01; // translate([-_min,0,0])

//Standalone Apollo 200mm fan adapter
// to do:
// DONE: Hull from square with rounded corners to round
// DONE: make base plate thinner
// add cable tie loops
// DONE: make lip 2mm longer
// 88mm outer square
// 104.5mm diameter round


difference(){// sectioning 200mm Apollo standalone fan shroud assembly

union(){// 200mm Noctua stand-alone Fan Shroud

difference(){// Power Supply Fan Shroud Hull to be hollowed by 2nd hull

hull(){// Outer hull
// total height is supposed to be 50mm
translate([0,0,0])

difference(){// shape of Polli top opening inner dimensions; differencing a ring from a cube
cube([88, 88, 1], center=true);// square hole

translate([0,0,-50])
difference(){// making ring to be differenced
cylinder(r=120,h=200);

cylinder(r=52.25, h=200);
}
// End difference to make ring

}
// End difference

translate([0,0,-50])
cylinder(r=98.5, h=1);



}
// End outer hull


hull(){// Inner hull
// total height is supposed to be 50mm

translate([0,0,-0.5])
difference(){// shape of Polli top opening inner dimensions; differencing a ring from a cube
cube([86.4, 86.4, 1], center=true);// square hole

translate([0,0,-50])
difference(){// making ring to be differenced
cylinder(r=120,h=200);

cylinder(r=51.25, h=200);
}
// End difference to make ring

}
// End difference

translate([0,0,-50])
cylinder(r=97.5, h=1);// opening for 200mm Noctua fan

}
// End inner hull

difference(){// opening the bottom hole again: shape of Polli top opening inner dimensions; differencing a ring from a cube
cube([86.4, 86.4, 10.5], center=true);// square hole

translate([0,0,-50])
difference(){// making ring to be differenced
cylinder(r=120,h=200);

cylinder(r=51.25, h=200);
}
// End difference to make ring

}
// End difference

}
// End difference of hull to be hollowed

translate([0,0,3.5])
difference(){// part that enters Polli opening for 1.5mm ADD 5mm

difference(){// shape of Polli top opening dimensions; differencing a ring from a cube
cube([88, 88, 6.5], center=true);// square hole

translate([0,0,-55])
difference(){// making ring to be differenced
cylinder(r=120,h=200);

cylinder(r=52.25, h=200);
}
// End difference to make ring

}
// End difference

difference(){// shape of Polli top opening inner dimensions; differencing a ring from a cube
cube([86.4, 86.4, 6.5], center=true);// square hole

translate([0,0,-50])
difference(){// making ring to be differenced
cylinder(r=120,h=200);

cylinder(r=51.25, h=200);
}
// End difference to make ring

}
// End difference

}
// End of part that enters Polli opening for 1.5mm

translate([0,0,0.5])
difference(){// Fan attachment level top plate
// holes distance: 170mm ; 4.5mm diameter But it seems to shrink after printing,
// width 140mm
// thickness 32mm

translate([0,0,-50])
cube([200,200,1.0], center=true);// top plate


union(){// 4 x Quarter rings for corner rounding of the top late

// rounding corners by differencing 1/4th rings in each corner
translate([89,89,-100])// moving the quarter ring where it needs to be
difference(){// a quarter ring
cylinder (r=25, h=200);

cylinder (r=11, h=200);

rotate([0,0,45])
cube([15,1500,400],center=true);

translate([-18,0,0])
rotate([0,0,45])
cube([25,1500,400],center=true);




}
// End difference of a quarter ring

rotate([0,0,90])
translate([89,89,-100])// moving the quarter ring where it needs to be
difference(){// a quarter ring
cylinder (r=25, h=200);

cylinder (r=11, h=200);

rotate([0,0,45])
cube([15,1500,400],center=true);

translate([-18,0,0])
rotate([0,0,45])
cube([25,1500,400],center=true);




}
// End difference of a quarter ring

rotate([0,0,180])
translate([89,89,-100])// moving the quarter ring where it needs to be
difference(){// a quarter ring
cylinder (r=25, h=200);

cylinder (r=11, h=200);

rotate([0,0,45])
cube([15,1500,400],center=true);

translate([-18,0,0])
rotate([0,0,45])
cube([25,1500,400],center=true);




}
// End difference of a quarter ring

rotate([0,0,270])
translate([89,89,-100])// moving the quarter ring where it needs to be
difference(){// a quarter ring
cylinder (r=25, h=200);

cylinder (r=11, h=200);

rotate([0,0,45])
cube([15,1500,400],center=true);

translate([-18,0,0])
rotate([0,0,45])
cube([25,1500,400],center=true);




}
// End difference of a quarter ring

}
// End union 4 x quarter rings for corner rounding


translate([0,0,-55])
cylinder(h=100.02, r=97.5);// Auxiliary fan sized hole 192.5mm diameter

translate([-85,-85,-55])
union(){// Fan screw holes group of 4

translate([0,0,0])
cylinder(h=1000, r=2.35);// increased from r=2.25 in v20221030c

translate([170,0,0])
cylinder(h=1000, r=2.35);

translate([0,170,0])
cylinder(h=1000, r=2.35);

translate([170,170,0])
cylinder(h=1000, r=2.35);

}
// End union fan screw holes group of 4

}
// End difference fan attachment level top

rotate([0,0,0])
union(){// Cable tie loops set of 2 A

translate([-40.25,-32.25,3.0])
rotate([90,0,-142])
difference(){// hollowing cable tie loop 1
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

translate([-31.25,-41.0,3.0])
rotate([90,0,-127.5])
difference(){// hollowing cable tie loop 2
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

}
// End union cable tie loops

rotate([0,0,90])
union(){// Cable tie loops set of 2 B

translate([-40.25,-32.25,3.0])
rotate([90,0,-142])
difference(){// hollowing cable tie loop 1
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

translate([-31.25,-41.0,3.0])
rotate([90,0,-127.5])
difference(){// hollowing cable tie loop 2
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

}
// End union cable tie loops

rotate([0,0,180])
union(){// Cable tie loops set of 2 C

translate([-40.25,-32.25,3.0])
rotate([90,0,-142])
difference(){// hollowing cable tie loop 1
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

translate([-31.25,-41.0,3.0])
rotate([90,0,-127.5])
difference(){// hollowing cable tie loop 2
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

}
// End union cable tie loops

rotate([0,0,270])
union(){// Cable tie loops set of 2 D

translate([-40.25,-32.25,3.0])
rotate([90,0,-142])
difference(){// hollowing cable tie loop 1
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

translate([-31.25,-41.0,3.0])
rotate([90,0,-127.5])
difference(){// hollowing cable tie loop 2
cylinder(h=3.5,r=3);

cube([3,3,10], center=true);

translate([0,-5,0])
cube([13,13,10], center=false);

}
// End difference hollowing cable tie loop

}
// End union cable tie loops

}
// End 200mm Noctua stand-alone Fan Shroud union


*union(){// sectioning

translate([0,0,-55])
cube([200,200,100],center=true);// sectioning for partial print test

*rotate([0,0,45])
translate([50,50,-50])
cube([100,100,200],center=true);// to section the whole thing

*translate([50,50,-50])
cube([100,100,200],center=true);// to section the whole thing
}
// End union for sectioning

}
// End difference of entire fan shroud assembly for sectioning
Author Public Key
npub14etu9dk64ld2jz2857n4msstejeqhylmprnwhs5k7nq9230ck6ys7rqwsa