This project is an attempt to build the CAD system (computer-aided design) using the following technologies and libraries:
- OpenGL API
- C++20
- Dear ImGui
- entt
using the entity-component-system (ECS) architecture pattern.
- moving, rotating and scaling of the scene
- adding the folowing types of objects to the scene:
- points
- torus (with modifiable parameters)
- Bezier C0 curve (interactive changing of the curve)
- Bezier C2 curve (interactive changing of the curve) - both Bernstein and B-spline representations
- list of objects present on the scene
- selecting/unselecting the object (ctrl+click on the object on the scene or on the list)\
- renaming the objects
- transformations on the group of the objects