https://bblodget.github.io/Tessellation/
The Tessellation project is a visual and interactive application developed in C++ using the OneLoneCoder's Pixel Game Engine. It demonstrates the concepts of geometric tessellations, allowing users to create and manipulate various shapes on a 2D canvas. This project showcases the ability to dynamically generate tessellations, interact with individual shapes, and observe the beauty of geometric patterns.
- Dynamic Shape Creation: Users can create various shapes, including triangles, squares, hexagons, and custom shapes like darts, by interacting with the application.
- Interactive Tessellation: Shapes can be tessellated across the 2D canvas, demonstrating the principles of tessellation in geometry.
- Zoom and Pan: The view can be zoomed in and out and panned across, offering a detailed examination of the tessellations.
- Shape Manipulation: Users can move, rotate, and snap shapes together to explore the geometric possibilities.
- ** Tool Selection:** Number Keys, 1=Place Tool, 2=Fill Tool, 3=Hide Tools
- Zoom In: Key Q
- Zoom Out: Key A
- Scroll: Arrow keys
- Place Shape: Left Mouse Click
- Rotate Shape: Mouse Scroll Wheel or Keys: < >
- Change Shape: Spacebar
- Undo Last Shape: Right Mouse Click
- Fill Shape: Left Mouse Click
- Change Fill Color: Mouse Scroll Wheel or Keys: < >
To get started with the Tessellation project, clone this repository and open the solution file in Visual Studio. Build the project and run the executable to launch the application. Interact with the application using the mouse and keyboard controls listed above to create and manipulate tessellations.
Contributions to the Tessellation project are welcome. Please feel free to fork the repository, make your changes, and submit a pull request.
This project is licensed under the BSD 3-Clause License, except where indicated otherwise in the source files. For example, the OneLoneCoder (OLC) header files included in this project are licensed under the OLC-3 License. Please see the LICENSE.txt file for the BSD 3-Clause License and the respective header files for the OLC-3 License details.