-
Notifications
You must be signed in to change notification settings - Fork 1
dds‐hexmeshing
Warning
The documentation is not ready yet.
Wait for my PhD to finish or dive into the code at your own risk.
Important
HexMeshWorkshop is just a set of wrappers, dependencies must be installed manually and the path to the executables must be given through settings.json.
| Dependency | Notes | Required for |
|---|---|---|
| automatic_polycube | labeling algorithm. not public yet | most of the things |
| Mayo | CAD viewer |
view called on a CAD data folder |
| Graphite | mesh processing platform |
view called on a tet_mesh data folder |
| Gmsh | mesh generation |
Gmsh script |
| fastbndpolycube | surface polycube generation from a labeling |
fastbndpolycube script or view --what fastbndpolycube called on a labeling data folder |
| preprocess_polycube | tet mesh preprocessing for a given labeling | not needed in the pipeline but called by the preprocess_polycube script |
| HexBox | interactive hex mesh creation/edition |
HexBox script |
| evocube | labeling algorithm |
evocube script |
| ovm.io | conversion tool for the OVM file format | to convert the output of AlgoHex (while calling view for ex.) |
| AlgoHex | hex mesh generation |
AlgoHex script |
| polycube_withHexEx | hex mesh extraction from polycube labelings |
polycube_withHexEx script |
| robustPolycube | hex mesh extraction from polycube labelings |
robustPolycube script |
| marchinghex | grid-based hex meshing |
marchinghex script |
For HexMeshWorkshop itself, I'm using Rye, the hassle-free Python experience. It's an all-in-one tool for environment management, Python version management, package building and management, code linting and formatting. See all commands you have access to in a single executable!
Installation should be just a matter of:
- Install Rye on your system
- Go to your copy of HexMeshWorkshop
-
rye syncto create/update the virtualenv based onpyproject.toml -
source .venv/bin/activateto activate the virtualenv
To interact with the data folder from the command line (like in the README), move to the from_cli/ subfolder. The from_python/ subfolder contains script showing how to interact directly with Python, for complex operations applied once.
Warning
The code, config and CLI will completely change soon (project renamed dds, see WIP yaml-based branch)
Store a CAD model in the STEP format
Store a tetrahedral mesh
Store a polycube labeling (+/-{X,Y,Z} association to each surface triangle)
Store an hexahedral mesh



