Large design change.
While not as pretty this should work much better mechanically based on the results from the last test print. * Added room for the plugs to slide from the middle outwards * Made back reinforcement much larger so it connects the piece that is split by that plug channel * Removed separate board cutout (not needed anymore) * Fix cable channel (was cutting through end caps) * Change shelling parameters so it keeps a cap on both ends * Adjusted segment breaks for new reality * TODO: adjust rear hinge design to be flat and not "envolving"
This commit is contained in:
parent
4a4d11bd95
commit
c2caea9039
@ -11,14 +11,15 @@ board_cutout = (
|
|||||||
cq.Sketch().trapezoid(55, 50, 90, mode="a").reset().vertices("<X").fillet(5)
|
cq.Sketch().trapezoid(55, 50, 90, mode="a").reset().vertices("<X").fillet(5)
|
||||||
)
|
)
|
||||||
|
|
||||||
plug_cutout = cq.Sketch().trapezoid(55, 11, 90, mode="a").reset().vertices("<X")
|
plug_channel_cutout = cq.Sketch().trapezoid(45, 6, 90, mode="a").reset().vertices("<X")
|
||||||
|
|
||||||
cable_relief = cq.Sketch().trapezoid(width, 30, 90)
|
cable_relief = cq.Sketch().trapezoid(width - 2 * shell_t, 30, 90)
|
||||||
|
|
||||||
|
break_depth = 20
|
||||||
segment_breaks_top = (
|
segment_breaks_top = (
|
||||||
cq.Sketch()
|
cq.Sketch()
|
||||||
.rarray(1, length, 1, 1)
|
.rarray(1, length, 1, 1)
|
||||||
.trapezoid(width / 3, 35, 110, mode="a")
|
.trapezoid(width / 3, break_depth, 110, mode="a")
|
||||||
.reset()
|
.reset()
|
||||||
.vertices()
|
.vertices()
|
||||||
.fillet(5)
|
.fillet(5)
|
||||||
@ -27,14 +28,14 @@ segment_breaks_top = (
|
|||||||
segment_breaks_bottom = (
|
segment_breaks_bottom = (
|
||||||
cq.Sketch()
|
cq.Sketch()
|
||||||
.rarray(1, length, 1, 1)
|
.rarray(1, length, 1, 1)
|
||||||
.trapezoid(width / 3, 35, 70, mode="a")
|
.trapezoid(width / 3, break_depth, 70, mode="a")
|
||||||
.reset()
|
.reset()
|
||||||
.vertices()
|
.vertices()
|
||||||
.fillet(5)
|
.fillet(5)
|
||||||
)
|
)
|
||||||
|
|
||||||
back_reinforcement = (
|
back_reinforcement = (
|
||||||
cq.Sketch().trapezoid(width / 2, 15, 90, mode="a").reset().vertices().fillet(2)
|
cq.Sketch().trapezoid(width / 2, length-break_depth, 90, mode="a").reset().vertices().fillet(2)
|
||||||
)
|
)
|
||||||
|
|
||||||
threaded_inserts = cq.Sketch().rarray(width / 8, 0, 4, 1).circle(ti_radius, mode="a")
|
threaded_inserts = cq.Sketch().rarray(width / 8, 0, 4, 1).circle(ti_radius, mode="a")
|
||||||
@ -50,16 +51,9 @@ def case():
|
|||||||
.lineTo(0, height)
|
.lineTo(0, height)
|
||||||
.close()
|
.close()
|
||||||
.extrude(length)
|
.extrude(length)
|
||||||
.faces(">X")
|
|
||||||
.shell(-shell_t)
|
.shell(-shell_t)
|
||||||
.edges("|X")
|
.edges("|X")
|
||||||
.fillet(fillet_s)
|
.fillet(fillet_s)
|
||||||
# Cutout room for plugs to slide in and be exposed
|
|
||||||
.faces(">X")
|
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
|
||||||
.center(0, -5)
|
|
||||||
.placeSketch(plug_cutout)
|
|
||||||
.cutBlind(-width / 2)
|
|
||||||
# Cutout visible screen area from top face
|
# Cutout visible screen area from top face
|
||||||
.faces(">Z")
|
.faces(">Z")
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
.workplane(centerOption="CenterOfBoundBox")
|
||||||
@ -75,12 +69,6 @@ def case():
|
|||||||
.center(0, -length)
|
.center(0, -length)
|
||||||
.placeSketch(segment_breaks_bottom)
|
.placeSketch(segment_breaks_bottom)
|
||||||
.cutBlind(-1000)
|
.cutBlind(-1000)
|
||||||
# Cutout for the circuit board
|
|
||||||
.faces("<Z")
|
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
|
||||||
.center(width / 2 - 27.5, 0)
|
|
||||||
.placeSketch(board_cutout)
|
|
||||||
.cutBlind(-shell_t)
|
|
||||||
# Make some room for the ribbon cable
|
# Make some room for the ribbon cable
|
||||||
.faces("<Z[-2]")
|
.faces("<Z[-2]")
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
.workplane(centerOption="CenterOfBoundBox")
|
||||||
@ -90,11 +78,17 @@ def case():
|
|||||||
.faces("<Z")
|
.faces("<Z")
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
.workplane(centerOption="CenterOfBoundBox")
|
||||||
.placeSketch(back_reinforcement)
|
.placeSketch(back_reinforcement)
|
||||||
.extrude(1 + 1 + ti_depth - shell_t)
|
.extrude(7 + ti_depth - shell_t)
|
||||||
.faces("<Z")
|
.faces("<Z")
|
||||||
.workplane(centerOption="CenterOfBoundBox")
|
.workplane(centerOption="CenterOfBoundBox")
|
||||||
.placeSketch(threaded_inserts)
|
.placeSketch(threaded_inserts)
|
||||||
.cutBlind(-ti_depth)
|
.cutBlind(-ti_depth)
|
||||||
|
# Cutout room for plugs to slide in and be exposed
|
||||||
|
.faces(">X")
|
||||||
|
.workplane(centerOption="CenterOfBoundBox")
|
||||||
|
.center(0, -5)
|
||||||
|
.placeSketch(plug_channel_cutout)
|
||||||
|
.cutBlind(-width / 2)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ screen_left_margin = 7 + shell_t # (7 is bezel width on that side)
|
|||||||
# width, length, height INCLUDING_BEZEL
|
# width, length, height INCLUDING_BEZEL
|
||||||
display_w = 233
|
display_w = 233
|
||||||
display_l = 65
|
display_l = 65
|
||||||
|
# This is the general height without the board, that's handled separately
|
||||||
display_h = 5
|
display_h = 5
|
||||||
|
|
||||||
width = 250
|
width = 250
|
||||||
|
Loading…
Reference in New Issue
Block a user