-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathimpl_wall.scad
More file actions
executable file
·105 lines (98 loc) · 4.59 KB
/
impl_wall.scad
File metadata and controls
executable file
·105 lines (98 loc) · 4.59 KB
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
include <connectors.scad>
/*
* Connector Positive
*/
module connector_wall_positive_square(x,square_basis,edge_width) {
for ( i = [0 : x-1] ) {
translate([square_basis*(i+1)-square_basis/2,0,0]) rotate([0,0,-90]) center_connector_wall_positive(x);
}
}
/*
module connector_positive_square_notch(x,y,square_basis,edge_width,north=true,south=true,east=true,west=true) {
if(NOTCH == "true") {
connector_positive_square(x,y,square_basis,edge_width,north=north,south=false,east=east,west=false);
if(south) {
translate([square_basis*NOTCH_X,0,0]) connector_positive_square(x-NOTCH_X,y-NOTCH_Y,square_basis,edge_width,north=false,south=true,east=false,west=false);
translate([0,square_basis*NOTCH_Y,0]) connector_positive_square(NOTCH_X,NOTCH_Y,square_basis,edge_width,north=false,south=true,east=false,west=false);
}
if(west) {
translate([square_basis*NOTCH_X,0,0]) connector_positive_square(NOTCH_X,NOTCH_Y,square_basis,edge_width,north=false,south=false,east=false,west=true);
translate([0,square_basis*NOTCH_Y,0]) connector_positive_square(x-NOTCH_X,y-NOTCH_Y,square_basis,edge_width,north=false,south=false,east=false,west=true);
}
} else {
connector_positive_square(x,y,square_basis,edge_width,north,south,east,west);
}
}*/
/*
* Connector Negative
*/
module connector_wall_negative(x,half,square_basis,edge_width) {
h = half ? 0.5 : 0;
for ( i = [0 : x-1] ) {
translate([square_basis*(i+1)-square_basis/2,0,0]) rotate([0,0,90]) center_connector_wall_negative(x, PRIORITY, LOCK, MAGNETS, MAGNET_HOLE);
}
if (x > 1) {
for ( i = [1 : x-1] ) {
translate([square_basis*i,0,0]) rotate([0,0,90]) joint_connector_wall_negative(x);
}
}
if (half) {
translate([square_basis*(x+h)-square_basis/2,0,0]) rotate([0,0,90]) center_connector_wall_negative(x, PRIORITY, LOCK, MAGNETS, MAGNET_HOLE);
}
}
/*
module connector_negative_square_notch(x,y,square_basis,edge_width,north=true,south=true,east=true,west=true) {
if(NOTCH == "true") {
connector_negative_square(x,y,square_basis,edge_width,north=north,south=false,east=east,west=false);
if(south) {
translate([square_basis*NOTCH_X,0,0]) connector_negative_square(x-NOTCH_X,y-NOTCH_Y,square_basis,edge_width,north=false,south=true,east=false,west=false);
translate([0,square_basis*NOTCH_Y,0]) connector_negative_square(NOTCH_X,NOTCH_Y,square_basis,edge_width,north=false,south=true,east=false,west=false);
}
if(west) {
translate([square_basis*NOTCH_X,0,0]) connector_negative_square(NOTCH_X,NOTCH_Y,square_basis,edge_width,north=false,south=false,east=false,west=true);
translate([0,square_basis*NOTCH_Y,0]) connector_negative_square(x-NOTCH_X,y-NOTCH_Y,square_basis,edge_width,north=false,south=false,east=false,west=true);
}
} else {
connector_negative_square(x,y,square_basis,edge_width,north,south,east,west);
}
}
*/
/*
* Plain base exterior
*/
/*
module plain_square(x,y,square_basis,edge_width) {
difference() {
plain_square_positive(x,y,square_basis);
edge = LOCK == "dragonlock" ? square_basis/2 : edge_width;
plain_square_negative(x,y,square_basis,edge);
}
}
module plain_square_positive(x,y,square_basis) {
difference() {
hull() {
translate([0,0,0.4]) cube([square_basis*x, square_basis*y, 6-.39]);
translate([0.25,0.25,0]) cube([square_basis*x-.5, square_basis*y-.5, 1]);
}
if(NOTCH == "true") {
translate([-1,-1,-1]) cube([square_basis*NOTCH_X+1, square_basis*NOTCH_Y+1, 8]);
hull() {
translate([-1,-1,0]) cube([square_basis*NOTCH_X+1, square_basis*NOTCH_Y+1, .4]);
translate([-1,-1,-0.01]) cube([square_basis*NOTCH_X+1.25, square_basis*NOTCH_Y+1.25, 0.01]);
}
}
}
}
module plain_square_negative(x,y,square_basis,edge_width) {
intersection() {
translate([edge_width,edge_width,0]) translate([1,1,-1]) cube([square_basis*x-((edge_width+1)*2),square_basis*y-((edge_width+1)*2),8]);
difference() {
translate([edge_width,edge_width,0]) translate([1,1,-1]) cube([square_basis*x-((edge_width+1)*2),square_basis*y-((edge_width+1)*2),8]);
if(NOTCH == "true") {
translate([0,0,0.4]) cube([square_basis*NOTCH_X+edge_width+1, square_basis*NOTCH_Y+edge_width+1, 6]);
translate([0.25,.25,0]) cube([square_basis*NOTCH_X+edge_width+1-.5, square_basis*NOTCH_Y+edge_width+1-.5, .4]);
}
}
}
}
*/