Skip to content
This repository has been archived by the owner on Sep 6, 2024. It is now read-only.

University project aimed at designing an application for drawing geometric figures (similar to Paint).

License

Notifications You must be signed in to change notification settings

Andyvince01/UNISA2022-23.Software_Engineering

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🖼️ UNISA2022-23.Software_Engineering

This project involves the development of a sophisticated geometric drawing application that enables users to create and manipulate drawings composed of various geometric shapes. Implemented using the Scrum process, the application is designed to provide an intuitive and feature-rich environment for both casual users and advanced graphic designers.

✏️ Application Features

The primary interface of the application presents an initially empty window where users can create drawings by selecting and placing geometric shapes. The supported shapes include line segments, rectangles, and ellipses. Users have the flexibility to customize the appearance of these shapes by selecting their colors. At least eight different colors must be supported, and for closed shapes such as rectangles, users can also choose the fill color of the interior.

🎨 Shape Manipulation and Editing

Once shapes are added to the drawing, users can interact with them in various ways. They can select a shape with a mouse operation to perform edits such as deletion, movement, color changes, and resizing. Additionally, standard operations like Cut, Copy, and Paste are supported for shapes. The application features unlimited undo functionality, allowing users to revert any changes made during their session.

Shapes within the drawing can be reordered with commands to send a shape "to the front" or "to the back", which is particularly useful in scenarios where shapes overlap. The visibility and layering of overlapping shapes can be managed to achieve the desired visual effect.

🖱️ Interface and Usability

The application supports zooming capabilities with at least eight different levels, ensuring that users can view their drawings in varying degrees of detail. The drawing surface can extend beyond the visible window, with scrolling functionality to navigate to different parts of the drawing. An optional grid can be displayed to assist in the precise positioning of shapes, with customizable grid size and visibility settings.

🔄 Advanced Shape Features

Beyond basic geometric shapes, users can create arbitrary polygons and text shapes. For text shapes, users can adjust the character size. The application also allows for advanced transformations including rotation by any angle, mirroring (horizontally or vertically), and stretching (horizontally or vertically).

Demo.mp4

About

University project aimed at designing an application for drawing geometric figures (similar to Paint).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages