Skip to content

MatteoVoges/extending-three.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Extending the Three.js-Framework - Implementing Superquadrics

This project is part of this project-seminar-lecture 3D Computer Graphics: Extending the Three.js Framework at the Hasso-Plattner-Institute (HPI). The goal of this project is introducing superquadrics as a new geometry type in three.js and take care of possible compability issues.

Visit the projects website at https://hpicgs.github.io/seminar-extending-threejs-2023/

What is a superquadric?

Superquadrics are versatile 3D geometric shapes that generalize ellipsoids.

Superquadrics find applications in computer graphics, computer vision, and robotics for modeling and analyzing a variety of 3D objects due to their adaptability in representing different shapes.

Examples for different parametrizations (the two parameters $\epsilon_1$ and $\epsilon_2$ determine the shape of the superquadric):

Their ability to model various shapes with few parameters makes them a natural choice for geometric primitives. Source: https://superquadrics.com/

Demo

Try out the demo locally:

git clone https://github.com/MatteoVoges/extending-three.js.git
cd extending-three.js
npm install http-server
http-server

or visit the Demo Page hosted by GitHub Pages (https://matteovoges.github.io/extending-three.js/).

Video

superquadrics.mp4

State of Integration

License

The Code is released under the MIT License. The License can be found in the LICENSE file.

Copyright (c) 2023-2024 Matteo Voges