Skip to content

The Advanced Canvas Drawing Project is an enhanced Java Swing-based application that allows users to draw complex shapes and interact with the canvas using various modes.

Notifications You must be signed in to change notification settings

nadyagrishina/advanced-canvas-drawing-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

46 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽจ Advanced Canvas Drawing Project

Author: Nadezhda Grishina
Version: 2023


๐Ÿงฉ Description

The Advanced Canvas Drawing Project is an enhanced Java Swing-based application that allows users to draw complex shapes and interact with the canvas using various modes.
This version introduces additional features like cut modes, seed fill, scanline, and several shape-drawing options, making it a more advanced tool for graphic design.


๐Ÿš€ Features

  • ๐Ÿ–Š๏ธ Line Mode: Draw straight, horizontal, vertical, or diagonal lines by holding [Shift].
  • ๐Ÿ”บ Polygon Mode: Draw multi-point polygons.
  • ๐Ÿ”ณ Rectangle Mode: Draw squares and rectangles.
  • ๐Ÿ”ต Ellipse Mode: Draw circles and ellipses.
  • โœ‚๏ธ Cut Mode: Use [Control] to change shapes in Cut mode.
  • ๐Ÿงน Clear Canvas: Press [C] to clear the canvas and delete all objects.
  • ๐Ÿ’ฅ SeedFiller Mode: Press [F] to enable SeedFilling for filling closed shapes with a color.
  • ๐Ÿ“ ScanLine Mode: Press [S] to enable ScanLine for advanced line filling.
  • ๐Ÿ”„ Shape Mode Switch: Switch between drawing different shapes using [L], [P], [T], [R], [E] for Line, Polygon, Triangle, Rectangle, and Ellipse modes.
  • ๐Ÿ–ฑ๏ธ Right-click for SeedFill: Use right-click to activate SeedFill in default Polygon mode.

โœจ Live demo below โ†“

Canvas Demo


๐Ÿ› ๏ธ Installation

  1. Clone the repository:
    git clone https://github.com/nadyagrishina/advanced-canvas-drawing-project.git
    

๐Ÿ“š Educational Attribution

This project was developed as part of coursework at the University of Hradec Krรกlovรฉ (UHK).
It uses a base structure and some foundational classes provided by the Faculty of Informatics and Management for educational purposes.
All additional code, logic, and extensions were implemented by the author.

About

The Advanced Canvas Drawing Project is an enhanced Java Swing-based application that allows users to draw complex shapes and interact with the canvas using various modes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages