top of page
box1.jpg
box2.jpg

Team Members
Zhou Shen

Programming
In collaboration with one teammate, I wrote a program that generates an SVG file based on the following input parameters: box height, hexagon side length, material thickness, and text engraving.

Timeframe
2 weeks

Fabrication
I laser-cut the required parts with a transparent acrylic sheet 1/4" thickness and then used screws and nuts to assemble the hexagonal box.

Idea 1: Generic Cube Box
The first sketch consists of a cube box with multiple compartments. The user can select the number of dividers and the height of each divider.

Idea 2: Hexagonal Box
The second sketch consists of a hexagonal box with engraved fractals text on the front of the box. This design requires a more complex program. 

Page1 4.png
Page2 4.png

After selecting the second idea, I designed the layout of the hexagonal box using Figma, including all the parts that would need to be laser cut.

Group 143.png
Group 173_edited.jpg

Users can customize the size of the hexagonal box by inputting the height, bottom hexagon edge length, and material thickness. The user can also input text to be engraved on the front of the box as a string. If the user input is outside the defined range, an error is detected and the user is asked to input a value within the correct range. The following steps are used to generate an SVG file from our Python programmed software:

  • Get user input (height, bottom hexagon edge length, and material thickness) in millimeters.

  • ​Generate critical points as a vertex.

  • Generate the teeth joints of each critical point based on the user input.

  • Generate the position of screw holes.

  • Convert mm to px.

  • Write SVG file

Formulas
Each edge has an odd number of teeth. Our algorithm automatically resizes the finger joints based on the length of the hexagonal base edge. For fractal engraving, we rotate the rectangle around its center by multiple times. For user-specified text, text is resized based on the size of fractal engraving. 

Conditions

  • Box height: within 50-150 mm

  • Bottom edge: within 50-150 mm

  • Thickness: within 2-5 mm

  • Maximum user-specified string: 25 characters

Once the user types in the reasonable input parameters, the hexagonal box is generated automatically.

Note Feb 10, 2022 4_05_21 PM.png

Input-Output 1
Height = 100 mm
Bottom-edge = 110 mm
Thickness = 4 mm
User-specified text = "Digital Manufacturing"

100-100-4.png

Input-Output 2
Height = 150 mm
Bottom-edge = 100 mm
Thickness = 3 mm
User-specified text = "Axel Ivan Ortega"

150-100-3.png
Screen Shot 2022-02-13 at 10.26.22 PM.png
bottom of page