Extracted common code out
This commit is contained in:
parent
659c75c628
commit
58fc149bbe
11
src/common.scad
Normal file
11
src/common.scad
Normal file
@ -0,0 +1,11 @@
|
||||
use <BOSL/shapes.scad>
|
||||
include <BOSL/constants.scad>
|
||||
|
||||
module cubi(s, fillet=0, edges=EDGES_ALL) {
|
||||
if ($preview) {
|
||||
cube(s, center=true);
|
||||
} else {
|
||||
cuboid(s, fillet=fillet, edges=edges);
|
||||
}
|
||||
}
|
||||
|
@ -22,13 +22,7 @@ function use_slideout_backplane() = is_model_strict(MODEL_HARNESS_BOTTOM_PIP) ||
|
||||
|
||||
backplane_pip_slideout=10;
|
||||
|
||||
module cubi(s, fillet=0, edges=EDGES_ALL) {
|
||||
if ($preview) {
|
||||
cube(s, center=true);
|
||||
} else {
|
||||
cuboid(s, fillet=fillet, edges=edges);
|
||||
}
|
||||
}
|
||||
use <common.scad>
|
||||
|
||||
module dotted_grill_cutout(vents_area, vents_x=10, vents_y=10, mesh=1.5, cut_corners=false) {
|
||||
function is_corner(x, y, xm, ym) = (x == 0 || x == xm) && (y == 0 || y == ym);
|
||||
|
@ -3,4 +3,4 @@ include <export.scad>
|
||||
|
||||
include <harness.scad>
|
||||
include <platform.scad>
|
||||
//include <strap.scad>
|
||||
include <strap.scad>
|
||||
|
@ -11,6 +11,7 @@ use <specs_platform.scad>
|
||||
use <specs_strap.scad>
|
||||
|
||||
use <strap_common.scad>
|
||||
use <platform_common.scad>
|
||||
|
||||
// DEBUG:
|
||||
//validation = 1;
|
||||
@ -40,13 +41,8 @@ module platform(base) {
|
||||
cube(size, center=true);
|
||||
|
||||
module strap_connectors() {
|
||||
offset=get_platform_strap_connector_offset();
|
||||
down(size.z/2) {
|
||||
for (i=[0:3]) {
|
||||
translate([((i%2*(-2)+1) * offset.x), -((round(i/2)%2*(-2)+1) * offset.y), offset.z])
|
||||
zrot(90 + (round(i/2)%2*180))
|
||||
link_connector_pin();
|
||||
}
|
||||
down(size.z/2) foreach_platform_strap_connector() {
|
||||
link_connector_pin();
|
||||
}
|
||||
}
|
||||
|
||||
|
21
src/platform_common.scad
Normal file
21
src/platform_common.scad
Normal file
@ -0,0 +1,21 @@
|
||||
// dependency: https://github.com/revarbat/BOSL
|
||||
include <BOSL/constants.scad>
|
||||
use <BOSL/transforms.scad>
|
||||
use <BOSL/shapes.scad>
|
||||
use <BOSL/masks.scad>
|
||||
use <BOSL/sliders.scad>
|
||||
|
||||
use <specs_platform.scad>
|
||||
use <specs_strap.scad>
|
||||
|
||||
use <strap_common.scad>
|
||||
|
||||
module foreach_platform_strap_connector() {
|
||||
offset=get_platform_strap_connector_offset();
|
||||
for (i=[0:3]) {
|
||||
translate([((i%2*(-2)+1) * offset.x), -((round(i/2)%2*(-2)+1) * offset.y), offset.z])
|
||||
zrot(90 + (round(i/2)%2*180))
|
||||
children();
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,8 @@ use <BOSL/transforms.scad>
|
||||
use <BOSL/shapes.scad>
|
||||
include <BOSL/constants.scad>
|
||||
|
||||
use <specs_platform.scad>
|
||||
|
||||
use <strap_common.scad>
|
||||
|
||||
if (is_model_strict(MODEL_LINKS)) {
|
||||
@ -249,11 +251,13 @@ module clip_ratcheting(ratchet_length=28) {
|
||||
|
||||
// === Export ===
|
||||
if (is_model(MODEL_DEMO)) {
|
||||
translate([-20, -40, -10]) zrot(-90) {
|
||||
link_chain(links_count, include_terminal=include_terminal);
|
||||
right(links_count * get_link_segment_size().x + get_link_clip_size().x) {
|
||||
clip();
|
||||
right(get_link_clip_size().x) clip_ratcheting();
|
||||
foreach_platform_strap_connector() {
|
||||
zrot(180) down(get_link_segment_size().z/2) {
|
||||
link_chain(links_count, include_terminal=include_terminal);
|
||||
/*right(links_count * get_link_segment_size().x + get_link_clip_size().x) {
|
||||
clip();
|
||||
right(get_link_clip_size().x) clip_ratcheting();
|
||||
}*/
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -6,6 +6,8 @@ include <BOSL/constants.scad>
|
||||
|
||||
use <specs_strap.scad>
|
||||
|
||||
use <common.scad>
|
||||
|
||||
module pin() {
|
||||
segment_size=get_link_segment_size();
|
||||
h=segment_size.y;
|
||||
@ -33,7 +35,7 @@ module pin_socket() {
|
||||
module arm() {
|
||||
segment_size=get_link_segment_size();
|
||||
arm_size=get_link_joiner_arm_size();
|
||||
fwd(segment_size.y/2 + arm_size.y/2 - 1) right(arm_size.x/2 - 1) cuboid(arm_size, fillet=1, edges=EDGES_FRONT + EDGES_Y_ALL);
|
||||
fwd(segment_size.y/2 + arm_size.y/2 - 1) right(arm_size.x/2 - 1) cubi(arm_size, fillet=1, edges=EDGES_FRONT + EDGES_Y_ALL);
|
||||
}
|
||||
module armFront() {
|
||||
arm();
|
||||
@ -46,9 +48,10 @@ module armJoiner() {
|
||||
arm_size=get_link_joiner_arm_size();
|
||||
segment_size=get_link_segment_size();
|
||||
joiner_size=[arm_size.x-get_link_socket_size().x, segment_size.y, segment_size.z];
|
||||
right(joiner_size.x/2 + get_link_socket_size().x/2 + gap) cuboid(joiner_size, fillet=1, edges=EDGES_Z_ALL + EDGES_BOTTOM);
|
||||
right(joiner_size.x/2 + get_link_socket_size().x/2 + gap) cubi(joiner_size, fillet=1, edges=EDGES_Z_ALL + EDGES_BOTTOM);
|
||||
}
|
||||
module link_arms() {
|
||||
$fn=$preview?4:20;
|
||||
armFront();
|
||||
armBack();
|
||||
armJoiner();
|
||||
|
Loading…
Reference in New Issue
Block a user