From 73802ad5c9faba5890ca4fd40f492dff83e6e2e3 Mon Sep 17 00:00:00 2001 From: Tobias Kurze Date: Thu, 18 Feb 2021 21:03:04 +0100 Subject: [PATCH] ap_attchment halve done --- hvst.py | 104 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 92 insertions(+), 12 deletions(-) diff --git a/hvst.py b/hvst.py index 2541cab..60c63f8 100644 --- a/hvst.py +++ b/hvst.py @@ -4,17 +4,41 @@ import logging logger = logging.getLogger() + tabletop_depth = 800 # currently, almost all parameters are derived from the table depth #tabletop_depth = 600 alpha_max = 70 +bearings_diam = 22 + tabletop_adjuster_assembly_spacing = 100 # symmetric distancing assumed +lower_foot_width = 80 +lower_foot_height = 50 + +upper_foot_width = 40 +upper_foot_height = 40 + +tabletop_length = 1500 +tabletop_thickness = 40 +tabletop_connector_height = upper_foot_height +tabletop_connector_width = upper_foot_height +tabletop_connector_length = upper_foot_height + # cube in adjuster assembly feet_adjuster_width = 60 # feet_adjuster is moving part inside adjuster assembly feet_adjuster_lenght = 60 feet_adjuster_height = 60 +feet_adjuster_upper_connector_height = upper_foot_height +feet_adjuster_upper_connector_width = upper_foot_height +feet_adjuster_upper_connector_length = upper_foot_height + +feet_adjuster_lower_connector_height = lower_foot_height +feet_adjuster_lower_connector_width = lower_foot_height +feet_adjuster_lower_connector_length = lower_foot_height + + adjuster_assembly_wall_thickness = 20 # might be different for front and back... adjuster_assembly_slider_width = 10 @@ -33,8 +57,8 @@ lower_feet_assambly_pivot_point_from_moving_end = ld - lower_feet_assambly_pivot logger.info(f"Lower h is: {lower_h} (between joins of leg only)") -lower_foot_width = 80 -lower_foot_height = 50 +upper_foot_length = math.sqrt(math.pow(ld,2)+math.pow((tabletop_connector_height/2+feet_adjuster_upper_connector_height/2),2)) + lower_foot_length = 2*ld/math.sqrt(2) lower_feet_assembly_base_plate_height = 20 lower_feet_assembly_side_wall_thickness = 25 @@ -51,6 +75,7 @@ lower_feet_assembly_bearing_hole_depth = 10 lower_feet_assembly_pin_diameter = 10 + ## parameter end! def get_adjuster_assembly_old(): @@ -74,25 +99,80 @@ def get_adjuster_assembly_front_back_plate(): def get_adjuster_assembly(): a = Assembly(None) - a.add(get_adjuster_assembly_left(), name="l") + l = get_adjuster_assembly_left() + l.vertices("Y and >Z").tag("upperCorner") + a.add(l, name="l") a.add(get_adjuster_assembly_right(), name="r", color=Color("red")) - a.add(get_adjuster_assembly_front_back_plate(), name="f", color=Color("orange")) + f = get_adjuster_assembly_front_back_plate() + f.vertices("Z").tag("upperInnerCorner") + a.add(f, name="f", color=Color("orange")) a.add(get_adjuster_assembly_front_back_plate(), name="b") + + return a + + +### das hier ist noch falsch... constraints chaos!!! +def test_constraints(a): a.constrain("l@faces@Y", "Plane") a.constrain("l@faces@>Y", "f@faces@Y", "Plane") a.constrain("r@faces@>Y", "f@faces@X", "f@faces@>X", "Axis") - a.constrain("l@faces@X", "b@faces@>X", "Axis") - a.constrain("l@faces@X", "f@faces@>X", "Axis") + #a.constrain("l@faces@X", "b@faces@>X", "Axis") + #a.constrain("l@faces@X").workplane().hole(6)\ + .faces(">X").workplane().hole(bearings_diam,8)\ + .faces("Z").workplane().center(tabletop_connector_length/2,0).rect(tabletop_connector_length-10, tabletop_connector_width-10, forConstruction=True)\ + .vertices().cskHole(4,5,45,15)\ + +def get_ap_attachment_rail(): + pass # TODO -> better one piece for ap attachment + +def get_ap_attachment_plate(): + return Workplane("XY").box(tabletop_connector_length+30,tabletop_connector_width,2)\ + .faces(">Z").workplane().rect(tabletop_connector_length-10, tabletop_connector_width-10, forConstruction=True)\ + .vertices().cskHole(4,5,45)\ + .faces("Z", "ap_a_p@faces@