Note: This repository (hgen-sm-preview) is a restricted preview version of the full hgen-sm project.
This work was developed as part of my Master's Thesis at the IPEK - Institute of Product Engineering at KIT, under the supervision of Professor Matthiesen.
Certain core logic files related to automated geometry generation and strategy selection are currently withheld from public view as they are part of an active academic/technical publication. These files have been replaced with placeholders in this version.
If you are a reviewer, researcher, or collaborator and require the full source code for evaluation, please contact me directly:
- Contact: Maxim Möllhoff / maxim@moellhoff.eu / github.com/maxim-moellhoff/
- Alt. Contact: Christoph Wittig Adão / christoph.wittig@kit.edu / github.com/chriswitt77/
- Subject: Full Access Request: hgen-sm
I am happy to provide the complete repository to verified parties upon request.
The user gives two rectangles as an input, and the program tries to find different ways to connect those two rectangles in way, that is manufacturable. Solutions are generated in two ways. Either by finding the intersection of the two planes and connecting them, or by selecting 2 points from one rectangle and 1 point from the other, and creating an additional tab on that plane.
- Open the main folder in an IDE or in the console
- Create a virtual environment
python3.13 -m venv ./venv - Activate the virtual environment
source venv/bin/activate - Install dependencies (the . at the end is important)
pip install -e . - Run the program
python -m hgen_sm
In user_input.py you can provide the input values you want. In config.yaml you can configure what should get plotted.
-
BP = Bending Point
-
CP = Corner Point
-
FP = Flange Point
-
0,1,2,... = ID of Tab
-
A,B,C,D = Corner Points of user input rectangle
-
L = Left Side of Flange
-
R = Right Side of Flange
- Part generation
- Generate solutions for 1 bend
- Generate solutions for 2 bend
- Extend part generation to multiple rectangles
- Filter solutions that are unsuitable
- Improve flange visuals
- Introduce collision filter
- Improve angle filter
- Introduce more complex sequences
- Introduce mounts
- Introduce rule "Minimum distance mount from bend"
- Generate solutions by separating surfaces
- Export
- Create JSON Export
- Connect to Onshape API (Creates Onshape Featurescript)
- Check parts with TruTopsBoost
- README
- Extend installation guide
- Explain function more precisely





