Drehschalter(3d printed): Unterschied zwischen den Versionen
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> |