A clean and minimal implementation of the ARAP deformation model (as introduced by Sorkine & Alexa, 2007).
- 🔧 Local Step — SVD-based rotation estimation for each cell
- 🔁 Global Step — Solve the Poisson linear system for vertex updates
- 🎯 Handle Constraints — Arbitrary vertex positions can be fixed
- 🔺 Triangular Mesh Support — Works on general triangle meshes
- 🐍 Pure Python Implementation — Using NumPy + SciPy
pip install -r requirements.txtThe deformation result is rendered with Open3D in a native window (requires a local GUI environment).
- Run
python arap_main.pyto perform the deformation. - An Open3D window opens for handle selection (Shift+LMB drag to box-select, C to clear, Q/Esc to finish).
- Another Open3D window shows the deformed mesh.