Paint Brush Application
   Ranjani Chandrasekar / Manu Jain

| Introduction | High Level Design | Hardware | Software | Interface | Results | Conclusion | Appendix | Downloads |
Conclusion

A Paint Brush Application is successfully implemented using the Cyclone II FPGA with different drawing options. The mouse has been interfaced using the USB port ISP 1362 on the Altera DE2board. The movement of the mouse is detected using the ISP 1362 component of the SOPC Builder. The cursor movement is sent to the VGA adapter by the NIOS II software modules. The VGA monitor is interfaced using a hardware VGA controller with a resolution of 640 x 480 and a color depth of 8 bits/pixel. Various drawing options like, lines, rectangles, circles and polygons are implemented using Bresenham’s line drawing algorithm. The 8 bit color depth enables usage of 256 different colors, out of which 28 has been included in the color palette. Filling Colors in an area has been realized using the Edge Fill algorithm along with fencing technique to reduce the scan area and optimize the time for filling color. The functionality of each icon on the Tool Bar when clicked is displayed on the LCD available on the DE2 board. The Liquid Crystal display is interfaced using the LCD component of the SOPC builder. The LCD is given the initial control signals for clearing the LCD and writting to the first line. The functionality of a selected tool is then sent to it.

Scope of future work:

  • Realizing 3D images for creating objects like spheres, cubes, etc
  • Implementing Click and Drag functionality for various toolbar options
  • Saving the drawing area in bit map
  • Zooming and rotation of a portion of the drawing area