diff options
author | joshreve <j.a.shreve@gmail.com> | 2021-10-24 11:20:57 -0400 |
---|---|---|
committer | joshreve <j.a.shreve@gmail.com> | 2021-10-24 11:20:57 -0400 |
commit | 75da53f96e389d837055921bd2eb61b58b7787e2 (patch) | |
tree | 8e8621ef9b2bf362a8a2927ac17228a36eb881d1 | |
parent | 37cd60e784f9ff9887b17eb7bdfdcd78578b5698 (diff) |
Fixed cadquery package requirement.
Reverted the geometry generation that was compensating for the wrong
cadquery version. Uncertain why the versions were dramatically
different, will have to watch carefully on new releases or considering
switching environment to a specific version of cadquery instead of
"master".
-rw-r--r-- | docker/environment.yml | 2 | ||||
-rw-r--r-- | src/dactyl_manuform.py | 143 | ||||
-rw-r--r-- | src/generate_configuration.py | 4 | ||||
-rw-r--r-- | src/run_config.json | 2 |
4 files changed, 82 insertions, 69 deletions
diff --git a/docker/environment.yml b/docker/environment.yml index 48beacd..1ea6035 100644 --- a/docker/environment.yml +++ b/docker/environment.yml @@ -25,6 +25,6 @@ dependencies: - pip - numpy=1 - scipy=1 - - cadquery + - cadquery=master - pip: - solidpython diff --git a/src/dactyl_manuform.py b/src/dactyl_manuform.py index 8dc44b5..3cdf362 100644 --- a/src/dactyl_manuform.py +++ b/src/dactyl_manuform.py @@ -647,8 +647,8 @@ def connectors(): hulls.append(triangle_hulls(places)) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) ############ @@ -938,10 +938,10 @@ def default_thumbcaps(): def default_thumb(side="right"): print('thumb()') shape = default_thumb_1x_layout(rotate(single_plate(side=side), (0, 0, -90))) - # shape = union([shape, default_thumb_15x_layout(rotate(single_plate(side=side), (0, 0, -90)))]) - # shape = union([shape, default_thumb_15x_layout(double_plate(), plate=False)]) - shape = add([shape, default_thumb_15x_layout(rotate(single_plate(side=side), (0, 0, -90)))]) - shape = add([shape, default_thumb_15x_layout(double_plate(), plate=False)]) + shape = union([shape, default_thumb_15x_layout(rotate(single_plate(side=side), (0, 0, -90)))]) + shape = union([shape, default_thumb_15x_layout(double_plate(), plate=False)]) + #shape = add([shape, default_thumb_15x_layout(rotate(single_plate(side=side), (0, 0, -90)))]) + #shape = add([shape, default_thumb_15x_layout(double_plate(), plate=False)]) shape = difference(shape, [default_thumb_pcb_plate_cutouts()]) return shape @@ -1130,8 +1130,8 @@ def default_thumb_connectors(): ) ) - return add(hulls) - # return union(hulls) + #return add(hulls) + return union(hulls) ############################ # MINI THUMB CLUSTER @@ -1174,8 +1174,8 @@ def mini_thumb_bl_place(shape): def mini_thumb_1x_layout(shape): - # return union([ - return add([ + return union([ + #return add([ mini_thumb_mr_place(rotate(shape, [0, 0, thumb_plate_mr_rotation])), mini_thumb_br_place(rotate(shape, [0, 0, thumb_plate_br_rotation])), mini_thumb_tl_place(rotate(shape, [0, 0, thumb_plate_tl_rotation])), @@ -1184,8 +1184,8 @@ def mini_thumb_1x_layout(shape): def mini_thumb_15x_layout(shape): - # return union([mini_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation]))]) - return add([mini_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation]))]) + return union([mini_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation]))]) + #return add([mini_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation]))]) def mini_thumbcaps(): @@ -1196,15 +1196,15 @@ def mini_thumbcaps(): def mini_thumb(side="right"): shape = mini_thumb_1x_layout(single_plate(side=side)) - # shape = union([shape, mini_thumb_15x_layout(single_plate(side=side))]) - shape = add([shape, mini_thumb_15x_layout(single_plate(side=side))]) + shape = union([shape, mini_thumb_15x_layout(single_plate(side=side))]) + #shape = add([shape, mini_thumb_15x_layout(single_plate(side=side))]) return shape def mini_thumb_pcb_plate_cutouts(side="right"): shape = mini_thumb_1x_layout(plate_pcb_cutout(side=side)) - # shape = union([shape, mini_thumb_15x_layout(plate_pcb_cutout(side=side))]) - shape = add([shape, mini_thumb_15x_layout(plate_pcb_cutout(side=side))]) + shape = union([shape, mini_thumb_15x_layout(plate_pcb_cutout(side=side))]) + #shape = add([shape, mini_thumb_15x_layout(plate_pcb_cutout(side=side))]) return shape @@ -1326,8 +1326,8 @@ def mini_thumb_connectors(): ) ) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) ############################ @@ -1374,8 +1374,8 @@ def minidox_thumb_br_place(shape): def minidox_thumb_1x_layout(shape): - # return union([ - return add([ + return union([ + #return add([ minidox_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation])), minidox_thumb_tl_place(rotate(shape, [0, 0, thumb_plate_tl_rotation])), minidox_thumb_ml_place(rotate(shape, [0, 0, thumb_plate_ml_rotation])), @@ -1383,8 +1383,8 @@ def minidox_thumb_1x_layout(shape): def minidox_thumb_fx_layout(shape): - # return union([ - return add([ + return union([ + #return add([ minidox_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation])), minidox_thumb_tl_place(rotate(shape, [0, 0, thumb_plate_tl_rotation])), minidox_thumb_ml_place(rotate(shape, [0, 0, thumb_plate_ml_rotation])), @@ -1399,15 +1399,15 @@ def minidox_thumbcaps(): def minidox_thumb(side="right"): shape = minidox_thumb_fx_layout(rotate(single_plate(side=side), [0.0, 0.0, -90])) - # shape = union([shape, minidox_thumb_fx_layout(adjustable_plate(minidox_Usize))]) - shape = add([shape, minidox_thumb_fx_layout(adjustable_plate(minidox_Usize))]) + shape = union([shape, minidox_thumb_fx_layout(adjustable_plate(minidox_Usize))]) + #shape = add([shape, minidox_thumb_fx_layout(adjustable_plate(minidox_Usize))]) # shape = minidox_thumb_1x_layout(single_plate(side=side)) return shape def minidox_thumb_pcb_plate_cutouts(side="right"): shape = minidox_thumb_fx_layout(plate_pcb_cutout(side=side)) - # shape = union([shape, minidox_thumb_fx_layout(plate_pcb_cutout())]) - shape = add([shape, minidox_thumb_fx_layout(plate_pcb_cutout())]) + shape = union([shape, minidox_thumb_fx_layout(plate_pcb_cutout())]) + #shape = add([shape, minidox_thumb_fx_layout(plate_pcb_cutout())]) return shape def minidox_thumb_post_tr(): @@ -1488,8 +1488,8 @@ def minidox_thumb_connectors(): ) ) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) ############################ @@ -1535,8 +1535,8 @@ def carbonfet_thumb_bl_place(shape): def carbonfet_thumb_1x_layout(shape): - # return union([ - return add([ + return union([ + #return add([ carbonfet_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation])), carbonfet_thumb_mr_place(rotate(shape, [0, 0, thumb_plate_mr_rotation])), carbonfet_thumb_br_place(rotate(shape, [0, 0, thumb_plate_br_rotation])), @@ -1546,14 +1546,14 @@ def carbonfet_thumb_1x_layout(shape): def carbonfet_thumb_15x_layout(shape, plate=True): if plate: - # return union([ - return add([ + return union([ + #return add([ carbonfet_thumb_bl_place(rotate(shape, [0, 0, thumb_plate_bl_rotation])), carbonfet_thumb_ml_place(rotate(shape, [0, 0, thumb_plate_ml_rotation])) ]) else: - # return union([ - return add([ + return union([ + #return add([ carbonfet_thumb_bl_place(shape), carbonfet_thumb_ml_place(shape) ]) @@ -1567,17 +1567,17 @@ def carbonfet_thumbcaps(): def carbonfet_thumb(side="right"): shape = carbonfet_thumb_1x_layout(single_plate(side=side)) - # shape = union([shape, carbonfet_thumb_15x_layout(double_plate_half(), plate=False)]) - # shape = union([shape, carbonfet_thumb_15x_layout(single_plate(side=side))]) - shape = add([shape, carbonfet_thumb_15x_layout(double_plate_half(), plate=False)]) - shape = add([shape, carbonfet_thumb_15x_layout(single_plate(side=side))]) + shape = union([shape, carbonfet_thumb_15x_layout(double_plate_half(), plate=False)]) + shape = union([shape, carbonfet_thumb_15x_layout(single_plate(side=side))]) + #shape = add([shape, carbonfet_thumb_15x_layout(double_plate_half(), plate=False)]) + #shape = add([shape, carbonfet_thumb_15x_layout(single_plate(side=side))]) return shape def carbonfet_thumb_pcb_plate_cutouts(side="right"): shape = carbonfet_thumb_1x_layout(plate_pcb_cutout(side=side)) - # shape = union([shape, carbonfet_thumb_15x_layout(plate_pcb_cutout())]) - shape = add([shape, carbonfet_thumb_15x_layout(plate_pcb_cutout())]) + shape = union([shape, carbonfet_thumb_15x_layout(plate_pcb_cutout())]) + #shape = add([shape, carbonfet_thumb_15x_layout(plate_pcb_cutout())]) return shape def carbonfet_thumb_post_tr(): @@ -1715,8 +1715,8 @@ def carbonfet_thumb_connectors(): ) ) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) ############################ @@ -1793,8 +1793,8 @@ def tbjs_thumb_bl_place(shape): def tbjs_thumb_1x_layout(shape): - # return union([ - return add([ + return union([ + #return add([ tbjs_thumb_tl_place(rotate(shape, [0, 0, thumb_plate_tr_rotation])), tbjs_thumb_mr_place(rotate(shape, [0, 0, thumb_plate_mr_rotation])), tbjs_thumb_bl_place(rotate(shape, [0, 0, thumb_plate_bl_rotation])), @@ -1814,8 +1814,8 @@ def tbjs_thumb_fx_layout(shape): ] def trackball_layout(shape): - # return union([ - return add([ + return union([ + #return add([ tbjs_place(shape), ]) @@ -1831,8 +1831,8 @@ def tbjs_thumb(side="right"): # shape = tbjs_thumb_fx_layout(rotate(single_plate(side=side), [0.0, 0.0, -90])) shape = tbjs_thumb_1x_layout(single_plate(side=side)) # shape = tbjs_thumb_fx_layout(adjustable_square_plate(Uwidth=tbjs_Uwidth, Uheight=tbjs_Uheight)) - # shape = union([shape, *tbjs_thumb_fx_layout(adjustable_square_plate(Uwidth=tbjs_Uwidth, Uheight=tbjs_Uheight))]) - shape = add([shape, *tbjs_thumb_fx_layout(adjustable_square_plate(Uwidth=tbjs_Uwidth, Uheight=tbjs_Uheight))]) + shape = union([shape, *tbjs_thumb_fx_layout(adjustable_square_plate(Uwidth=tbjs_Uwidth, Uheight=tbjs_Uheight))]) + #shape = add([shape, *tbjs_thumb_fx_layout(adjustable_square_plate(Uwidth=tbjs_Uwidth, Uheight=tbjs_Uheight))]) # shape = union([shape, trackball_layout(trackball_socket())]) # shape = tbjs_thumb_1x_layout(single_plate(side=side)) @@ -1981,8 +1981,8 @@ def tbjs_thumb_connectors(): ) ) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) @@ -2019,8 +2019,8 @@ def tbcj_thumb_bl_place(shape): return shape def tbcj_thumb_layout(shape): - # return union([ - return add([ + return union([ + #return add([ tbcj_thumb_tr_place(rotate(shape, [0, 0, thumb_plate_tr_rotation])), tbcj_thumb_tl_place(rotate(shape, [0, 0, thumb_plate_tl_rotation])), tbcj_thumb_ml_place(rotate(shape, [0, 0, thumb_plate_ml_rotation])), @@ -2094,8 +2094,8 @@ def tbcj_place(shape): def tbcj_thumb(side="right"): t = tbcj_thumb_layout(single_plate(side=side)) tb = tbcj_place(tbcj_holder()) - # return union([t, tb]) - return add([t, tb]) + return union([t, tb]) + #return add([t, tb]) def tbcj_thumb_pcb_plate_cutouts(side="right"): t = tbcj_thumb_layout(plate_pcb_cutout(side=side)) @@ -2241,8 +2241,8 @@ def tbcj_thumb_connectors(): ) ) - # return union(hulls) - return add(hulls) + return union(hulls) + #return add(hulls) @@ -2341,15 +2341,17 @@ def wall_brace(place1, dx1, dy1, post1, place2, dx2, dy2, post2, back=False, ske hulls = [] if not skeleton: hulls.append(place1(translate(post1, wall_locate2(dx1, dy1)))) - hulls.append(place2(translate(post2, wall_locate2(dx2, dy2)))) if not skeleton or skel_bottom: hulls.append(place1(translate(post1, wall_locate3(dx1, dy1, back)))) + if not skeleton: + hulls.append(place2(translate(post2, wall_locate2(dx2, dy2)))) + if not skeleton or skel_bottom: hulls.append(place2(translate(post2, wall_locate3(dx2, dy2, back)))) if len(hulls)>0: shape2 = bottom_hull(hulls) - # shape1 = union([shape1, shape2]) - shape1 = add([shape1, shape2]) + shape1 = union([shape1, shape2]) + #shape1 = add([shape1, shape2]) return shape1 @@ -3925,8 +3927,8 @@ def wire_posts(): def model_side(side="right"): print('model_right()') - shape = add([key_holes(side=side)]) - # shape = union([key_holes(side=side)]) + #shape = add([key_holes(side=side)]) + shape = union([key_holes(side=side)]) if debug_exports: export_file(shape=shape, fname=path.join(r"..", "things", r"debug_key_plates")) connector_shape = connectors() @@ -4087,16 +4089,25 @@ def model_side(side="right"): # NEEDS TO BE SPECIAL FOR CADQUERY +#def baseplate(main_shape, base_shape, wedge_angle=None, side='right'): def baseplate(wedge_angle=None, side='right'): if ENGINE == 'cadquery': # shape = mod_r + + + thumb_shape = thumb(side=side) + thumb_wall_shape = thumb_walls(side=side, skeleton=skeletal) + thumb_wall_shape = union([thumb_wall_shape, *thumb_screw_insert_outers(side=side)]) + thumb_connector_shape = thumb_connectors(side=side) + thumb_connection_shape = thumb_connection(side=side, skeleton=skeletal) + thumb_section = union([thumb_shape, thumb_connector_shape, thumb_wall_shape, thumb_connection_shape]) + thumb_section = difference(thumb_section, [union(thumb_screw_insert_holes(side=side))]) + shape = union([ case_walls(side=side), *screw_insert_outers(side=side), - thumb_walls(side=side), - *thumb_screw_insert_outers(side=side), + thumb_section ]) - # tool = translate(screw_insert_screw_holes(side=side), [0, 0, -10]) tool = screw_insert_all_shapes(screw_hole_diameter/2., screw_hole_diameter/2., 350, side=side) for item in tool: item = translate(item, [0, 0, -10]) @@ -4107,7 +4118,7 @@ def baseplate(wedge_angle=None, side='right'): item = translate(item, [0, 0, -10]) shape = difference(shape, [item]) - + #shape = union([main_shape, thumb_shape]) shape = translate(shape, (0, 0, -0.0001)) @@ -4191,6 +4202,7 @@ def run(): export_file(shape=mod_r, fname=path.join(save_path, config_name + r"_right")) export_file(shape=tmb_r, fname=path.join(save_path, config_name + r"_thumb_right")) + #base = baseplate(mod_r, tmb_r, side='right') base = baseplate(side='right') export_file(shape=base, fname=path.join(save_path, config_name + r"_right_plate")) export_dxf(shape=base, fname=path.join(save_path, config_name + r"_right_plate")) @@ -4200,6 +4212,7 @@ def run(): export_file(shape=mod_l, fname=path.join(save_path, config_name + r"_left")) export_file(shape=tmb_l, fname=path.join(save_path, config_name + r"_thumb_left")) + #base_l = mirror(baseplate(mod_l, tmb_l, side='left'), 'YZ') base_l = mirror(baseplate(side='left'), 'YZ') export_file(shape=base_l, fname=path.join(save_path, config_name + r"_left_plate")) export_dxf(shape=base_l, fname=path.join(save_path, config_name + r"_left_plate")) diff --git a/src/generate_configuration.py b/src/generate_configuration.py index d6a377d..d22e521 100644 --- a/src/generate_configuration.py +++ b/src/generate_configuration.py @@ -59,7 +59,7 @@ shape_config = { ############################## # 'DEFAULT' 6-key, 'MINI' 5-key, 'CARBONFET' 6-key, 'MINIDOX' 3-key, 'TRACKBALL_ORBYL', 'TRACKBALL_CJ' - 'thumb_style': 'TRACKBALL_ORBYL', + 'thumb_style': 'DEFAULT', 'default_1U_cluster': True, # only used with default, makes top right thumb cluster key 1U # Thumb key size. May need slight oversizing, check w/ caps. Additional spacing will be automatically added for larger keys. 'minidox_Usize': 1.6, @@ -501,4 +501,4 @@ if __name__ == '__main__': ## HERE FOR QUICK TESTING, SHOULD BE COMMENTED ON COMMIT # from dactyl_manuform import * - # run()
\ No newline at end of file + # run() diff --git a/src/run_config.json b/src/run_config.json index 153a75c..edbf230 100644 --- a/src/run_config.json +++ b/src/run_config.json @@ -25,7 +25,7 @@ "web_thickness": 5.1, "post_size": 0.1, "post_adj": 0, - "thumb_style": "TRACKBALL_ORBYL", + "thumb_style": "DEFAULT", "default_1U_cluster": true, "minidox_Usize": 1.6, "default_thumb_screw_xy_locations": [ |