PinePhoneBoy/src/specs_platform.scad
2021-01-21 21:14:44 +01:00

36 lines
1.4 KiB
OpenSCAD

use <specs_phone.scad>
use <specs_strap.scad>
function get_platform_size() = [
get_phone_size().x - 30,
get_phone_size().y - 5,
get_platform_wall()*3
];
function get_platform_top_size() = [
get_platform_size().x - 2*get_platform_wall(),
get_platform_size().y - 2*get_platform_wall(),
get_platform_size().z - get_platform_wall()];
function get_platform_top_pos() = [0, 0, (get_platform_size().z-get_platform_top_size().z)/2];
function get_platform_wall() = 3;
function get_platform_strap_connector_offset() = [
(get_platform_size().x/2 - get_link_segment_size().y/2) - 3,
get_platform_size().y/2 + 4,
-get_link_segment_size().z/2 + 0.5
];
function get_platform_lock_pin_size() = [20, 4, 3];
function get_platform_lock_arm_size() = [46, 2, 3];
function get_platform_lock_pin_pos() = [-get_platform_lock_pin_size().x/2, -get_platform_top_size().y/2 + get_platform_wall()*4 + 1, get_platform_top_size().z/2];
function get_platform_lock_button_profile(groove) = groove ? [10, 5] : [7, 4.5];
function get_platform_lock_button_size(groove) = [
get_platform_lock_button_profile(groove).x,
get_platform_size().y * 0.25 + get_platform_lock_pin_size().y + 2,
get_platform_lock_button_profile(groove).y
];
function get_platform_lock_button_pos() = [
get_platform_lock_pin_size().x/2 + 5,
-get_platform_lock_button_size(false).y/2,
-get_platform_size().z/2
];