Zum Inhalt springen

Drehschalter(3d printed): Unterschied zwischen den Versionen

BadPractice (Diskussion | Beiträge)
Erstellung
 
K Ripper verschob die Seite Drehchalter(3d printed) nach Drehschalter(3d printed), ohne dabei eine Weiterleitung anzulegen: Typo
 
(2 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
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|Drehschalter]]
 
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>