A Geometric Modelling Assignment from UBC Computer Science, this web app performs 3D mesh subdivision using a Butterfly scheme. Students were provided a code template, and were responsible for coding the Mesh Class (Mesh.js), the subdivision algo (subdivision.js), the Vector3D class (Vector3D.js), and the mesh object loading/display (main.js)
- Download Repo
- Run an HTTP server on localhost using the command
python -m SimpleHTTPServer
in the parent repo directory - Open
localhost:8000
in a web browser window - Navigate to
app.html
- Load an object file
- Increase or decrease the number of subdivision levels. Note that on larger meshes, higher degrees of subdivision will require some time to render inititally, however, the code does save the subdivided meshes after initial rendering.
This code is a modification of code provided to students for a class, it is for educational purposes only.