Compare commits

...

2 Commits

Author SHA1 Message Date
c4bae182c6 Split in quad 2022-11-15 15:24:52 -03:00
9f295d921e Split in quad 2022-11-15 15:24:45 -03:00
7 changed files with 42715 additions and 42239 deletions

View File

@ -1,37 +0,0 @@
import cadquery2 as cq
from cadquery2 import exporters
# The hole for the "peg" where this goes
peg_front = 9.5
peg_side = 9
peg_height = 12
# General size of the handle
width = 20
length = 70
height = 16
# General shape of the handle seen from above
handle_shape_top = cq.Sketch().trapezoid(width, length, 85).vertices().fillet(3)
hole_shape = cq.Sketch().trapezoid(peg_front, peg_side, 90)
bottom_cutout = cq.Sketch().trapezoid(width, length - width, 90)
handle = (
cq.Workplane("XY")
.placeSketch(handle_shape_top)
.extrude(height)
.faces("<Z")
.workplane(centerOption="CenterOfBoundBox")
.center(0, length/2 - width/2)
.placeSketch(hole_shape)
.cutBlind(-peg_height)
.faces("<Z")
.workplane(centerOption="CenterOfBoundBox")
.center(0, -width/2)
.placeSketch(bottom_cutout)
.cutBlind(-height/2)
)
exporters.export(handle, "guardacosas.stl")

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -36,36 +36,67 @@ pillars = (
)
model = (
cq.Workplane("XY")
.workplane(offset=thickness / 2)
.tag("mid_height")
# Hollow box
.box(width, height, thickness)
.edges("|Z")
.fillet(2)
.faces(">Z")
.shell(-shell_t)
# Make the lower part solid to mount the kbd
# .faces("<Z")
# .workplane(centerOption="CenterOfBoundBox", offset=-thickness / 2)
# .center(0, height * 0.5 - 20)
# .box(width, 40, thickness)
# # Mounting pillars on the kbd top
.faces(">Z")
.workplane(centerOption="CenterOfBoundBox")
.center(-width/2, 17)
.transformed(rotate=cq.Vector(kbd_angle, 0, 0))
.tag("sloped")
.placeSketch(pillars)
.extrude(-1000)
# Remove the excess extrusion
.workplaneFromTagged("mid_height")
.transformed(offset=cq.Vector(0, 0, -thickness / 2))
.split(keepTop=True)
# Slope for the beyboard
.workplaneFromTagged("sloped")
.split(keepBottom=True)
)
def model():
return (
cq.Workplane("XY")
.workplane(offset=thickness / 2)
.tag("mid_height")
# Hollow box
.box(width, height, thickness)
.edges("|Z")
.fillet(2)
.faces(">Z")
.shell(-shell_t)
# Slanted mounting pillars on the kbd top
.faces(">Z")
.workplane(centerOption="CenterOfBoundBox")
.center(-width / 2, 17)
.transformed(rotate=cq.Vector(kbd_angle, 0, 0))
.tag("sloped")
.placeSketch(pillars)
.extrude(-1000)
# Remove the excess extrusion
.workplaneFromTagged("mid_height")
.transformed(offset=cq.Vector(0, 0, -thickness / 2))
.split(keepTop=True)
# Slope for the beyboard
.workplaneFromTagged("sloped")
.split(keepBottom=True)
)
top_right = (
model()
.faces(">Y")
.workplane(offset = -120).split(keepTop=True)
.faces(">X")
.workplane(offset=-135).split(keepTop=True)
)
exporters.export(top_right, "top_right.stl")
top_left = (
model()
.faces(">Y")
.workplane(offset = -120).split(keepTop=True)
.faces(">X")
.workplane(offset=-135).split(keepBottom=True)
)
exporters.export(top_left, "top_left.stl")
bottom_right = (
model()
.faces(">Y")
.workplane(offset = -120).split(keepBottom=True)
.faces(">X")
.workplane(offset=-165).split(keepTop=True)
)
exporters.export(bottom_right, "bottom_right.stl")
bottom_left = (
model()
.faces(">Y")
.workplane(offset = -120).split(keepBottom=True)
.faces(">X")
.workplane(offset=-165).split(keepBottom=True)
)
exporters.export(bottom_left, "bottom_left.stl")
exporters.export(model, "model.stl")

13862
notebook_nueva/top_left.stl Normal file

File diff suppressed because it is too large Load Diff

7478
notebook_nueva/top_right.stl Normal file

File diff suppressed because it is too large Load Diff