Refactor hex vents into helper function
This commit is contained in:
parent
d64654f7b1
commit
9904a412a3
@ -1,6 +1,6 @@
|
||||
import cadquery as cq
|
||||
|
||||
from utils import extrude_shape, punch_hole, punch_hole2
|
||||
from utils import extrude_shape, punch_hole2, hex_vents
|
||||
|
||||
stand_positions = [(3.5, 3.5), (61.5, 3.5), (61.5, 52.5), (3.5, 52.5)]
|
||||
stands = (
|
||||
@ -71,24 +71,7 @@ elements = [
|
||||
]
|
||||
|
||||
|
||||
hex_size = 6
|
||||
vent_positions = []
|
||||
for x in range(1, width // hex_size):
|
||||
for y in range(1, int(height // hex_size / 0.8)):
|
||||
vent_positions.append(
|
||||
(
|
||||
(x + (y % 2) / 2) * hex_size - hex_size * 0.2,
|
||||
y * hex_size * 0.8 + hex_size * 0.2,
|
||||
)
|
||||
)
|
||||
|
||||
vents = [
|
||||
{
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"shape": cq.Sketch().push(vent_positions).regularPolygon((hex_size) / 2, 6),
|
||||
}
|
||||
]
|
||||
vents = hex_vents(size=6, width=width, height=height)
|
||||
|
||||
|
||||
# Hole distances are relative to the rightmost pillar
|
||||
|
@ -33,4 +33,24 @@ def punch_hole2(*, model, face, w, h, x_offset, y_offset, hole, depth):
|
||||
.center(-w / 2 + x_offset + hole["x"], -h / 2 + y_offset + hole["y"])
|
||||
.placeSketch(hole["shape"])
|
||||
.cutBlind(-depth)
|
||||
)
|
||||
)
|
||||
|
||||
def hex_vents(*, size, width, height):
|
||||
vent_positions = []
|
||||
for x in range(1, width // size):
|
||||
for y in range(1, int(height // size / 0.8)):
|
||||
vent_positions.append(
|
||||
(
|
||||
(x + (y % 2) / 2) * size - size * 0.2,
|
||||
y * size * 0.8 + size * 0.2,
|
||||
)
|
||||
)
|
||||
vents = [
|
||||
{
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"shape": cq.Sketch().push(vent_positions).regularPolygon((size) / 2, 6),
|
||||
}
|
||||
]
|
||||
|
||||
return vents
|
@ -1,6 +1,6 @@
|
||||
import cadquery as cq
|
||||
|
||||
from utils import extrude_shape, punch_hole2
|
||||
from utils import extrude_shape, punch_hole2, hex_vents
|
||||
|
||||
width = 65
|
||||
height = 30
|
||||
@ -42,23 +42,7 @@ elements = [
|
||||
},
|
||||
]
|
||||
|
||||
hex_size = 6
|
||||
vent_positions = []
|
||||
for x in range(1, width // hex_size):
|
||||
for y in range(1, int(height // hex_size / 0.8)):
|
||||
vent_positions.append(
|
||||
(
|
||||
(x + (y % 2) / 2) * hex_size - hex_size * 0.2,
|
||||
y * hex_size * 0.8 + hex_size * 0.2,
|
||||
)
|
||||
)
|
||||
vents = [
|
||||
{
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"shape": cq.Sketch().push(vent_positions).regularPolygon((hex_size) / 2, 6),
|
||||
}
|
||||
]
|
||||
vents = hex_vents(size=6, width=width, height=height)
|
||||
|
||||
holes = [
|
||||
# One hole for everything TODO: improve
|
||||
|
Loading…
Reference in New Issue
Block a user