Inspiration

We have always enjoyed 3D modeling and printing my models, but often have had to print multiple times, wasting a lot of time and filament, due to issues with the model. Now, with this AI model, we hope to reduce the time and plastic spent on testing and get straight to printing a final, functional model.

What it does

Our program takes in a .step file and modifies it to maximize printability while also giving suggestions on ways that the modeler can make it even more printable. The user can then view it on the clean website that we built with Streamlit.

How we built it

For the backend, we implemented OpenCASCADE imports to be able to modify the .step files, and an API to ChatGPT to get directions on how modify the model. OpenCASCADE is an open source C++ library that is used for 3D applications, such as CAD (Computer Aided Design). For the frontend, we used Streamlit, a simple and sleek Python UI Design library for prototypes. Through Streamlit we learned how to create real time visualizations, controls, and an intuitive interface to make the user experience straight forward and as simple as possible.

Challenges we ran into

One challenge we ran into was that the program wouldn't modify the .step file. Also, it would have issues with the chamfer and fillet features. For the frontend, we faced challenges centering UI elements, which we overcame by using Streamlit’s Markdown component to embed custom HTML.

Accomplishments that we're proud of

One accomplishment that we're proud of is getting the ChatGPT API to work with the code by having its response determine the modifications made to the 3D model.

What we learned

We learned how to integrate the ChatGPT API into our programs, as well as the fundamentals of the OpenCASCADE import.

What's next for Optimize3D

We plan on further improving the program until it won't require manual modifications to the 3D models, as well as monetizing the website.

Built With

Share this project:

Updates