Skip to content

Latest commit

 

History

History
49 lines (34 loc) · 1.5 KB

PROPOSAL.md

File metadata and controls

49 lines (34 loc) · 1.5 KB

Eric Pfister | CS126 Final Project Proposal

What I Wanna Do

With my project, I wish to create a paint program. This paint program would load allow users to load into either a blank canvas of user-defined size or open an already existing PNG image and edit it. There would be various tools that you'd expect to see within a paint program, such as:

  • Paint bucket fill
  • Paint brush, with varying sizes
  • Pencil tool
  • Shape tool, filled or hollow
  • Some sort of layering system

Finally, the program would allow you to save this PNG image back to file.

Background Knowledge

Within this class we have worked with cinder and I have had experience with a similar library, SFML, in my own independent study. With the Naive-bayes assignment I had to implement a very simplistic "paint" functionality for the classifier that mirrors what I would like to do with my project. Furthermore, within my CS225 class we work with PNG images and various image editing techniques.

Timeline

With Week 1 I wish to have implemented:

  • Basic cinder functionality
  • Basic tool GUI
  • Pencil tool
  • A layering system

With Week 2 I wish to have implemented:

  • Paint bucket tool
  • Paint brush tool
  • Shape tool

With Week 3 I wish to have implemented:

  • Finalize tool GUI
  • Loading images from file
  • Saving edited images to file

Stretch Goals

If I were to finish early, some potential avenues to explore would be:

  • Multiple file format support (jpg, gif, etc.)
  • Layering system transparency
  • Selection tools, with move, copy and paste