-
Notifications
You must be signed in to change notification settings - Fork 369
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: 3D preview #145
Comments
I doubt this is actually possible with the project right now. The parts are not really properly closed lines. This project was deliberately done aiming for 2D only. For a 3D preview it is probably easier to start a new box generator based on a different technology all together. |
I'm not sure we're too far off. I've played around a bit; the roadmap I envision is:
With those 3, I could already assemble some of the universal box in OpenSCAD: The edges that do fit fit well. The right part's edge does not fit – either I've failed to account for some more metadata (there is something in the code about inverting some parts), or this generator relies on parts to be symmetric, or I missed something else. As this was closed as out-of-scope, I'll try to motivate PRs that support this goal also from additional angles – and indeed there are nice properties obtained from the planned changes. For example, ensuring that edges match up would also enable irregular teeth patterns that prevent a box from being assembled the wrong way. |
It would be interesting if boxes.py could render a 3D preview. For complex boxes, this could help a lot to see what a box looks like, and during development to see if things are lining up correctly.
For this to work, you would need some kind of 3D rendering library that can import the 2D parts, extrude them to thickness and arrange them in a 3D view. Most of this is generic, except the arranging which has to be done by each generator individually.
Having a 3D preview might also help for #140 (though actual pictures of finished products are probably nicer).
The text was updated successfully, but these errors were encountered: