A C++ image processing application that creates and converts national flags into different image formats using object-oriented programming principles. The program can generate flags of various countries and export them in: color (PPM), grayscale (PGM), or black-and-white (PBM) formats.
- Draws National Flags: Creates accurate representations of flags from different countries.
- Multiple Output Formats:
PPM - Full color image PGM - Grayscale conversion PBM - Black and white (monochrome)
- Easy to Extend: Simple to add new flags or modify existing ones.
- FlagIllustrator Base Class: Manages the core image and drawing functionality
- BWIllustrator: Converts flags to black and white format
- GrayscaleIllustrator: Transforms flags into grayscale images
- Supported Flags: Nigeria, Japan, Austria (easily expandable)
- Uses C++ modules for modern code organization
- Implements inheritance and polymorphism
- Handles image memory management automatically
- Provides clean, intuitive interface for flag generation
- Object-oriented design with inheritance
- Polymorphism through virtual functions
- Image processing fundamentals
- Memory management best practices
- Clean code architecture
double click "build.bat"
#manual coompilation open terminal in the src folder and see commands in the batch file on how to compile C++ modules