Drehschalter(3d printed): Unterschied zwischen den Versionen
aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen (Erstellung) |
(Artikel erweitert) |
||
Zeile 1: | Zeile 1: | ||
− | Einige der Drehschalter für die Wandbeleuchtung sind kaputt geworden und wurden mit einen 3D Druck ersetzt. | + | = Drehschalter (3D Printed) = |
+ | Einige der Drehschalter für die Wandbeleuchtung sind kaputt geworden und wurden mit einen 3D Druck ersetzt.[[Datei:3d_printed_button.jpg|200px|thumb|right|Alternativer Text]] | ||
+ | |||
+ | Der 3D Druck wurde von BadPractice in Openscad designed und steht under der Creative Commons CC-BY-SA Lizenz | ||
+ | |||
+ | == Openscad File == | ||
+ | <pre>//Author: Philipp Hufnagl | ||
+ | //Licence: Creative Commons CC-BY-SA | ||
+ | |||
+ | $fn=50; | ||
+ | |||
+ | buttonWidth=42; | ||
+ | buttonHeight=15; | ||
+ | |||
+ | holeHeight= 14; | ||
+ | holeWidth = 6.5; | ||
+ | holeCut = 6; | ||
+ | |||
+ | gripLength= 25; | ||
+ | gripWidth= 8; | ||
+ | overlap = 0.05 ; | ||
+ | |||
+ | //makes button hollow | ||
+ | module ringCutout(){ | ||
+ | union() | ||
+ | { | ||
+ | translate([0,0,-overlap]) | ||
+ | linear_extrude(height= holeHeight - overlap){ | ||
+ | difference(){ | ||
+ | scale(buttonWidth-3) | ||
+ | circle(r=0.5); | ||
+ | |||
+ | scale(holeWidth+3) | ||
+ | circle(r=0.5); | ||
+ | } | ||
+ | } | ||
+ | translate([0,0,-overlap]) | ||
+ | linear_extrude(height= 1){ | ||
+ | scale(buttonWidth -5) | ||
+ | circle(r=0.5); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | //hole in the middle | ||
+ | module hole(){ | ||
+ | translate([0,0,-overlap]) | ||
+ | linear_extrude(height= holeHeight - overlap){ | ||
+ | |||
+ | difference() | ||
+ | { | ||
+ | scale(holeWidth) | ||
+ | circle(r=0.5); | ||
+ | translate([-holeWidth/2,-holeWidth/2 + holeCut]) | ||
+ | square([holeWidth,holeWidth]); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | //the main form of the button | ||
+ | module button(){ | ||
+ | translate([0.0,0.0,0.0]) | ||
+ | linear_extrude(height=buttonHeight){ | ||
+ | scale(buttonWidth) | ||
+ | circle(r=0.5); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | |||
+ | //a grip (not used for this button) | ||
+ | module grip() | ||
+ | { | ||
+ | translate([0,-gripWidth/2,buttonHeight]) | ||
+ | rotate([-90,0,0]) | ||
+ | linear_extrude(height=gripWidth) | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | scale(gripLength) | ||
+ | circle(r=0.5); | ||
+ | translate([-gripLength/2,overlap]) | ||
+ | square([gripLength,gripLength]); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | rotate([0,180,0]) | ||
+ | union() | ||
+ | { | ||
+ | difference() | ||
+ | { | ||
+ | button(); | ||
+ | hole(); | ||
+ | ringCutout(); | ||
+ | } | ||
+ | //grip(); | ||
+ | } | ||
+ | </pre> |
Version vom 6. Oktober 2016, 20:33 Uhr
Drehschalter (3D Printed)
Einige der Drehschalter für die Wandbeleuchtung sind kaputt geworden und wurden mit einen 3D Druck ersetzt.
Der 3D Druck wurde von BadPractice in Openscad designed und steht under der Creative Commons CC-BY-SA Lizenz
Openscad File
//Author: Philipp Hufnagl //Licence: Creative Commons CC-BY-SA $fn=50; buttonWidth=42; buttonHeight=15; holeHeight= 14; holeWidth = 6.5; holeCut = 6; gripLength= 25; gripWidth= 8; overlap = 0.05 ; //makes button hollow module ringCutout(){ union() { translate([0,0,-overlap]) linear_extrude(height= holeHeight - overlap){ difference(){ scale(buttonWidth-3) circle(r=0.5); scale(holeWidth+3) circle(r=0.5); } } translate([0,0,-overlap]) linear_extrude(height= 1){ scale(buttonWidth -5) circle(r=0.5); } } } //hole in the middle module hole(){ translate([0,0,-overlap]) linear_extrude(height= holeHeight - overlap){ difference() { scale(holeWidth) circle(r=0.5); translate([-holeWidth/2,-holeWidth/2 + holeCut]) square([holeWidth,holeWidth]); } } } //the main form of the button module button(){ translate([0.0,0.0,0.0]) linear_extrude(height=buttonHeight){ scale(buttonWidth) circle(r=0.5); } } //a grip (not used for this button) module grip() { translate([0,-gripWidth/2,buttonHeight]) rotate([-90,0,0]) linear_extrude(height=gripWidth) { difference() { scale(gripLength) circle(r=0.5); translate([-gripLength/2,overlap]) square([gripLength,gripLength]); } } } rotate([0,180,0]) union() { difference() { button(); hole(); ringCutout(); } //grip(); }