Drehschalter(3d printed)

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Version vom 6. Oktober 2016, 21:55 Uhr von Ripper (Diskussion | Beiträge) (Ripper verschob die Seite Drehchalter(3d printed) nach Drehschalter(3d printed), ohne dabei eine Weiterleitung anzulegen: Typo)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Drehschalter (3D Printed)

Einige der Drehschalter für die Wandbeleuchtung sind kaputt geworden und wurden mit einen 3D Druck ersetzt.

Drehschalter

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();
}