Skip to content

rskworld/cpp-shape-drawer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ Shape Drawer

Advanced shape drawing application using C++ and Raylib graphics library. Create circles, rectangles, triangles, and complex patterns with ease.

Project Details

  • Title: C++ Shape Drawer
  • Author: Molla Samser (Founder of RSK World)
  • Designer & Tester: Rima Khatun
  • Website: rskworld.in
  • Year: 2026

Features

  • Multiple Shape Types: Circle, Rectangle, Triangle, Star, and n-sided Polygons.
  • Transformation Tools: Rotate and Scale any shape on the canvas.
  • Project Persistence: Save (K) and Load (L) your entire drawing project.
  • Layer Management: Control the Z-order with Bring to Front and Send to Back.
  • Transparency Control: Adjust the Alpha channel of any shape for layering effects.
  • Drag & Drop: Select and move shapes with your mouse.
  • Color Customization: Multiple colors (Red, Green, Blue, Yellow, Purple).
  • Pattern Generation: Auto-generate spirals and grids.
  • Export Options: Save your canvas to a PNG file.
  • Interactive Controls: Intuitive keyboard and mouse controls.
  • Undo Functionality: Quickly remove the last drawn shape.

Controls

  • Left Click: Place current shape OR Drag an existing shape to move it.
  • Keys 1, 2, 3, 4, 5: Switch between Circle, Rectangle, Triangle, Star, and Polygon.
  • Keys Q / E: Rotate the hovered/selected shape.
  • Keys + / - OR Mouse Wheel: Scale the hovered/selected shape.
  • Key T + Arrows / Wheel: Adjust Transparency (Alpha) of selected shape.
  • PgUp / PgDn: Change layer order (Bring to Front / Send to Back).
  • Key K / L: Save / Load project state.
  • Up / Down (Polygon Mode): Change the number of sides.
  • Keys R, G, B, Y, P: Change current color.
  • Key F: Toggle Fill mode (Filled vs Outline).
  • Key Z: Undo last shape.
  • Key C: Clear canvas.
  • Key E: Export canvas to cpp_shape_drawer_export.png.

Technologies

  • C++17: Modern C++ standards.
  • Raylib: Simple and easy-to-use graphics library.
  • OOP: Object-Oriented design with polymorphism.
  • STL: Use of std::vector and std::unique_ptr.

How to Build

  1. Install Raylib.
  2. Install CMake.
  3. Clone or download this project.
  4. Run the following commands:
    mkdir build
    cd build
    cmake ..
    cmake --build .
  5. Run the generated executable.

License

This project is licensed under the MIT License - see the LICENSE file for details.


© 2026 RSK World. All rights reserved. For more free projects, visit rskworld.in

About

Advanced shape drawing application using C++ graphics libraries. Create circles, rectangles, triangles, and complex patterns. Features color customization, fill options, and pattern generation. Perfect for learning C++ graphics, OOP concepts, and algorithmic design.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors