offsets
This commit is contained in:
@@ -3,13 +3,15 @@
|
|||||||
// 24mm width faces front when assembled
|
// 24mm width faces front when assembled
|
||||||
|
|
||||||
// RENDER MODE - Change this to switch between views
|
// RENDER MODE - Change this to switch between views
|
||||||
render_mode = "assembly"; // Options: "assembly" or "flat"
|
|
||||||
render_mode = "flat"; // Options: "assembly" or "flat"
|
render_mode = "flat"; // Options: "assembly" or "flat"
|
||||||
|
|
||||||
|
// ASSEMBLY ADJUSTMENT - Manual Z position offset for camera inserts
|
||||||
|
insert_z_offset = 15; // mm - adjust vertical position of camera inserts (positive = higher)
|
||||||
|
|
||||||
// Parameters - Camera hole spacing: rotated 90° CW
|
// Parameters - Camera hole spacing: rotated 90° CW
|
||||||
hole_spacing_x = 25; // mm (horizontal distance between hole centers)
|
hole_spacing_x = 25; // mm (horizontal distance between hole centers)
|
||||||
hole_spacing_y = 24; // mm (vertical distance between hole centers)
|
hole_spacing_y = 24; // mm (vertical distance between hole centers)
|
||||||
bottom_hole_clearance = 4; // mm (clearance from base plate to bottom hole center when standing)
|
bottom_hole_clearance = 3; // mm (clearance from base plate to bottom hole center when standing)
|
||||||
hole_edge_margin_x = 3; // mm (side margin)
|
hole_edge_margin_x = 3; // mm (side margin)
|
||||||
hole_edge_margin_y = bottom_hole_clearance; // mm (bottom margin = bottom clearance)
|
hole_edge_margin_y = bottom_hole_clearance; // mm (bottom margin = bottom clearance)
|
||||||
mount_width = hole_spacing_x + 2 * hole_edge_margin_x; // 31mm total width
|
mount_width = hole_spacing_x + 2 * hole_edge_margin_x; // 31mm total width
|
||||||
@@ -24,13 +26,14 @@ tripod_hole_diameter = 6.35; // mm (1/4" standard tripod screw, radius=3.175mm)
|
|||||||
|
|
||||||
// Notch parameters for joining - wider for better rigidity and alignment
|
// Notch parameters for joining - wider for better rigidity and alignment
|
||||||
notch_width = 12; // mm width of the notch/slot (wider for stability)
|
notch_width = 12; // mm width of the notch/slot (wider for stability)
|
||||||
notch_depth = 8; // mm depth of the slot in base plate
|
notch_depth = 3; // mm depth of the slot in base plate
|
||||||
tab_height = notch_depth; // Height of the tab on insert
|
tab_height = notch_depth; // Height of the tab on insert
|
||||||
|
|
||||||
// Total dimensions
|
// Total dimensions
|
||||||
mount_area_width = mount_width * 2 + spacing;
|
mount_area_width = mount_width * 2 + spacing;
|
||||||
total_width = mount_area_width + left_margin + padding; // Left margin + right padding
|
total_width = mount_area_width + left_margin + padding; // Left margin + right padding
|
||||||
total_height = mount_height + 2 * padding;
|
// Height should fit standing inserts (mount_width when rotated) with padding
|
||||||
|
total_height = mount_width + 2 * padding; // Standing insert is mount_width tall in Y direction
|
||||||
|
|
||||||
// Base plate module with tripod hole and slots for inserts
|
// Base plate module with tripod hole and slots for inserts
|
||||||
module base_plate() {
|
module base_plate() {
|
||||||
@@ -42,13 +45,13 @@ module base_plate() {
|
|||||||
translate([left_margin, total_height / 2, -0.5])
|
translate([left_margin, total_height / 2, -0.5])
|
||||||
cylinder(h = base_thickness + 1, d = tripod_hole_diameter, $fn = 30);
|
cylinder(h = base_thickness + 1, d = tripod_hole_diameter, $fn = 30);
|
||||||
|
|
||||||
// Slot for first insert (offset from left by left_margin)
|
// Slots for inserts - must match material_thickness when insert is rotated
|
||||||
translate([left_margin + mount_width/2 - notch_width/2, padding - notch_depth, -0.5])
|
// Centered on Y axis, sized to fit the 3mm thick insert tab perfectly
|
||||||
cube([notch_width, notch_depth + 0.1, base_thickness + 1]);
|
translate([left_margin + mount_width/2 - material_thickness/2, total_height/2 - notch_width/2, -0.5])
|
||||||
|
cube([material_thickness, notch_width, base_thickness + 1]);
|
||||||
|
|
||||||
// Slot for second insert (right position)
|
translate([left_margin + mount_width + spacing + mount_width/2 - material_thickness/2, total_height/2 - notch_width/2, -0.5])
|
||||||
translate([left_margin + mount_width + spacing + mount_width/2 - notch_width/2, padding - notch_depth, -0.5])
|
cube([material_thickness, notch_width, base_thickness + 1]);
|
||||||
cube([notch_width, notch_depth + 0.1, base_thickness + 1]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -88,14 +91,16 @@ module complete_assembly() {
|
|||||||
// Base plate
|
// Base plate
|
||||||
base_plate();
|
base_plate();
|
||||||
|
|
||||||
// First camera mount insert (left) - standing vertically, 24mm faces front
|
// First camera mount insert (left) - sits flush on base plate, centered on Y
|
||||||
translate([left_margin + mount_width/2 - material_thickness/2, padding, base_thickness])
|
translate([left_margin + mount_width/2, total_height/2, base_thickness + insert_z_offset])
|
||||||
rotate([90, 0, 90])
|
rotate([90, 0, 90])
|
||||||
|
translate([-mount_width/2, -mount_width/2, -material_thickness/2])
|
||||||
camera_mount_insert();
|
camera_mount_insert();
|
||||||
|
|
||||||
// Second camera mount insert (right) - standing vertically, 24mm faces front
|
// Second camera mount insert (right) - sits flush on base plate, centered on Y
|
||||||
translate([left_margin + mount_width + spacing + mount_width/2 - material_thickness/2, padding, base_thickness])
|
translate([left_margin + mount_width + spacing + mount_width/2, total_height/2, base_thickness + insert_z_offset])
|
||||||
rotate([90, 0, 90])
|
rotate([90, 0, 90])
|
||||||
|
translate([-mount_width/2, -mount_width/2, -material_thickness/2])
|
||||||
camera_mount_insert();
|
camera_mount_insert();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user