Merge branch 'martinbudden-rail_carriage_coloring'
This commit is contained in:
commit
52729d012c
BIN
libtest.png
BIN
libtest.png
Binary file not shown.
Before Width: | Height: | Size: 758 KiB After Width: | Height: | Size: 759 KiB |
|
@ -2143,10 +2143,10 @@ Linear rails with carriages.
|
|||
### Modules
|
||||
| Module | Description |
|
||||
|:--- |:--- |
|
||||
| ```carriage(type, rail)``` | Draw the specified carriage |
|
||||
| ```carriage(type, rail, end_color = grey20, wiper_color = grey20)``` | Draw the specified carriage |
|
||||
| ```carriage_hole_positions(type)``` | Position children over screw holes |
|
||||
| ```rail(type, length)``` | Draw the specified rail |
|
||||
| ```rail_assembly(type, length, pos)``` | Rail and carriage assembly |
|
||||
| ```rail_assembly(type, length, pos, carriage_end_color = grey20, carriage_wiper_color = grey20)``` | Rail and carriage assembly |
|
||||
| ```rail_hole_positions(type, length, first = 0, screws = 100, both_ends = true)``` | Position children over screw holes |
|
||||
| ```rail_screws(type, length, thickness, screws = 100)``` | Place screws in the rail |
|
||||
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 111 KiB |
|
@ -34,7 +34,7 @@ module rails()
|
|||
nut = screw_nut(screw);
|
||||
washer = screw_washer(screw);
|
||||
|
||||
rail_assembly(rail, length, rail_travel(rail, length) / 2);
|
||||
rail_assembly(rail, length, rail_travel(rail, length) / 2, $i<2 ? grey20 : "green", $i<2 ? grey20 : "red");
|
||||
|
||||
rail_screws(rail, length, sheet + nut_thickness(nut, true) + washer_thickness(washer));
|
||||
|
||||
|
|
|
@ -65,7 +65,7 @@ module carriage_hole_positions(type) { //! Position children over screw holes
|
|||
children();
|
||||
}
|
||||
|
||||
module carriage(type, rail) { //! Draw the specified carriage
|
||||
module carriage(type, rail, end_color = grey20, wiper_color = grey20) { //! Draw the specified carriage
|
||||
total_l = carriage_length(type);
|
||||
block_l = carriage_block_length(type);
|
||||
block_w = carriage_width(type);
|
||||
|
@ -100,19 +100,30 @@ module carriage(type, rail) { //! Draw the specified carriage
|
|||
carriage_hole_positions(type)
|
||||
circle(screw_pilot_hole(screw));
|
||||
}
|
||||
|
||||
}
|
||||
color(grey20)
|
||||
for(end = [-1, 1])
|
||||
translate([end * (block_l / 2 + end_l / 2), 0])
|
||||
rotate([90, 0, 90])
|
||||
linear_extrude(height = end_l, center = true)
|
||||
difference() {
|
||||
translate([-end_w / 2, carriage_clearance(type)])
|
||||
square([end_w, end_h]);
|
||||
|
||||
cutout();
|
||||
}
|
||||
module carriage_end(type, end_w, end_h, end_l) {
|
||||
wiper_length = 0.5;
|
||||
color(wiper_color) translate_z(-end_l/2) linear_extrude(wiper_length)
|
||||
difference() {
|
||||
translate([-end_w/2, carriage_clearance(type)])
|
||||
square([end_w, end_h]);
|
||||
cutout();
|
||||
}
|
||||
color(end_color) translate_z(wiper_length-end_l/2) linear_extrude(end_l-wiper_length)
|
||||
difference() {
|
||||
translate([-end_w/2, carriage_clearance(type)])
|
||||
square([end_w, end_h]);
|
||||
cutout();
|
||||
}
|
||||
}
|
||||
|
||||
translate([-(block_l+end_l)/2,0,0])
|
||||
rotate([90, 0, 90])
|
||||
carriage_end(type, end_w, end_h, end_l);
|
||||
translate([(block_l+end_l)/2,0,0])
|
||||
rotate([90, 0, -90])
|
||||
carriage_end(type, end_w, end_h, end_l);
|
||||
}
|
||||
|
||||
module rail(type, length) { //! Draw the specified rail
|
||||
|
@ -139,11 +150,11 @@ module rail(type, length) { //! Draw the specified rail
|
|||
}
|
||||
}
|
||||
|
||||
module rail_assembly(type, length, pos) { //! Rail and carriage assembly
|
||||
module rail_assembly(type, length, pos, carriage_end_color = grey20, carriage_wiper_color = grey20) { //! Rail and carriage assembly
|
||||
rail(type, length);
|
||||
|
||||
translate([pos, 0])
|
||||
carriage(rail_carriage(type), type);
|
||||
carriage(rail_carriage(type), type, carriage_end_color, carriage_wiper_color);
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue