Add ap_feet model

This is a model to create some space underneath my AX820-WRT wifi access
point.
This commit is contained in:
Martin Frost 2026-11-02 23:14:14 +01:00
parent d99a70442b
commit 595153e53a
2 changed files with 67 additions and 0 deletions

BIN
out/ap_feet.stl Normal file

Binary file not shown.

67
src/models/ap_feet.py Normal file
View File

@ -0,0 +1,67 @@
from pathlib import Path
from build123d import (
Align,
BuildPart,
BuildSketch,
GridLocations,
Kind,
Mode,
Rectangle,
export_stl,
extrude,
offset,
)
block_width = 8
block_height = 11
block_depth = 13
wall_thickness = 1.5
beam_thickness = 2
frame_height = block_height + 107
frame_width = block_width + 78.25
frame_depth = 1.5
OUTPUT_DIR = Path("out")
def block():
with BuildPart():
with BuildSketch() as frame_plan:
perimeter = Rectangle(width=frame_width, height=frame_height)
offset(
perimeter,
-wall_thickness,
kind=Kind.INTERSECTION,
mode=Mode.SUBTRACT,
)
with BuildSketch() as blocks_plan:
with GridLocations(
frame_width, frame_height, 2, 2, align=(Align.CENTER, Align.CENTER)
):
perimeter = Rectangle(width=block_width, height=block_height)
offset(
perimeter,
-wall_thickness,
kind=Kind.INTERSECTION,
mode=Mode.SUBTRACT,
)
blocks = extrude(blocks_plan, amount=block_depth)
frame = extrude(frame_plan, amount=frame_depth)
return blocks + frame
def main():
part = block()
export_stl(part, OUTPUT_DIR / "ap_feet.stl")
if __name__ == "__main__":
main()