aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjoshreve <j.a.shreve@gmail.com>2021-10-24 11:20:57 -0400
committerjoshreve <j.a.shreve@gmail.com>2021-10-24 11:20:57 -0400
commit75da53f96e389d837055921bd2eb61b58b7787e2 (patch)
tree8e8621ef9b2bf362a8a2927ac17228a36eb881d1
parent37cd60e784f9ff9887b17eb7bdfdcd78578b5698 (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.yml2
-rw-r--r--src/dactyl_manuform.py143
-rw-r--r--src/generate_configuration.py4
-rw-r--r--src/run_config.json2
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": [