summaryrefslogtreecommitdiff
path: root/trunk/users/metalab/models/scad/printed_lasercut_extruder/extruder2.scad
blob: ef4be4863ef53741147991175f96da1d97d86916 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
$fn=30;

module extruder()
{
	dxf_file = "rb_35_lasercut_extruder9.dxf";

	base_h = 4.5;
	screw_inset=3;
	inner_h = 4;
	convexity=4;
	
	peek_dist=dxf_dim(file = dxf_file, name = "peek_dist");
	peek_r = dxf_dim(file = dxf_file, name = "peek_r");
	peek_inner_r = dxf_dim(file = dxf_file, name = "peek_inner_r");
	peek_h = dxf_dim(file = dxf_file, name = "peek_h");


	
	filament_dist = dxf_dim(file = dxf_file, name = "filament_dist");

	module filament()
	{
		translate([-filament_dist, 100, base_h+inner_h/2]) rotate([90, 0,0]) cylinder(h=200, r=2);
	}
	
	module peek()
	{
		translate([-filament_dist, -peek_dist, base_h+inner_h/2]) rotate([90,0,0]) 
		{
			translate([-peek_inner_r,0*peek_inner_r,peek_h/2]) cube([peek_inner_r*2,peek_inner_r*2,100]);
			#cylinder(h=peek_h, r=peek_r);
			#cylinder(h=30, r=peek_inner_r);
		}
	}
	
	difference() {
		dxf_linear_extrude(file =dxf_file, layer = "frame", height = base_h+inner_h, convexity = convexity);
		
			translate([0,0,-10]) dxf_linear_extrude(file =dxf_file, layer = "base", height = 100, convexity = convexity);
			translate([0,0,base_h]) dxf_linear_extrude(file =dxf_file, layer = "inner", height = base_h+inner_h, convexity = convexity);

		translate([0,0,base_h-screw_inset]) dxf_linear_extrude(file =dxf_file, layer = "holes_insets", height = 100, convexity = convexity);
		translate([0,0,-10]) dxf_linear_extrude(file =dxf_file, layer = "holes", height = 100, convexity = convexity);

		filament();

		
		peek();
//translate([-filament_dist, -peek_dist, base_h+inner_h/2]) rotate([90,0,0]) 
//		{
//			translate([-peek_inner_r,0*peek_inner_r,peek_h/2]) cube([peek_inner_r*2,peek_inner_r*2,100]);
//			%cylinder(h=peek_h, r=peek_r);
//			%cylinder(h=30, r=peek_inner_r);
//		}
	%  translate([0,0,base_h+inner_h]) 
			dxf_linear_extrude(file =dxf_file, layer = "top", height = 3, convexity = convexity);
		}

}

extruder();