From 780c2bba3c7af50c7b479a5378ab08efc45e95af Mon Sep 17 00:00:00 2001 From: barnestr Date: Tue, 3 May 2022 11:53:11 -0500 Subject: [PATCH] progress on lab 5 part 2 --- Lab5/Lab5 | Bin 0 -> 245616 bytes Lab5/image.cpp | 78 +++++++++++++++++++++++++++++++++++++++++ Lab5/image.h | 35 +++++++++++++++++++ Lab5/main.cpp | 92 +++++++++++++++++++++++++++++++++++++++++-------- Lab5/makefile | 2 +- 5 files changed, 192 insertions(+), 15 deletions(-) create mode 100755 Lab5/Lab5 diff --git a/Lab5/Lab5 b/Lab5/Lab5 new file mode 100755 index 0000000000000000000000000000000000000000..02568ca324b2900b1d87aaa4a3eee7c32784245a GIT binary patch literal 245616 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 + } +} + +// TODO +Image::~Image(){ + for(int i = 0; i < shapes.size(); i++){ + delete shapes[i]; + } + shapes.clear(); +} + +// TODO +Image &Image::operator=(const Image& rhs){ + for(int i = 0; i < shapes.size(); i++){ + delete shapes[i]; + } + shapes.clear(); + for(int i = 0; i < rhs.shapes.size(); i++){ + shapes.push_back(rhs.shapes[i]->clone()); + } + return *this; +} + +// TODO +void Image::add(Shape* shape){ + shapes.push_back(shape); +} + +// TODO +void Image::draw(GraphicsContext* gc){ + for(int i = 0; i < shapes.size(); i++){ + shapes[i]->draw(gc); + } +} + +// TODO +void Image::out(std::ostream& os){ + for(int i = 0; i < shapes.size(); i++){ + shapes[i]->out(os); + os << endl; + } +} + +// TODO +void Image::in(std::istream& is){ + +} + +// TODO +void Image::erase(){ + for(int i = 0; i < shapes.size(); i++){ + delete shapes[i]; + } + shapes.clear(); +} \ No newline at end of file diff --git a/Lab5/image.h b/Lab5/image.h index e69de29..03d9f5d 100644 --- a/Lab5/image.h +++ b/Lab5/image.h @@ -0,0 +1,35 @@ +#ifndef image_h +#define image_h +/** + * @file image.h + * @author Trevor Barnes (barnestr@msoe.edu) + * @brief + * @version 1.0 + * @date 2022-04-19 + * + * @copyright Copyright (c) 2022 + * + */ +#include +#include "shape.h" +#include "x11context.h" +#include +using namespace std; + +class Image{ + public: + Image(); + Image(const Image& from); + ~Image(); + Image& operator=(const Image& rhs); + void add(Shape* shape); + void draw(GraphicsContext* gc); + void out(std::ostream& os); + void in(std::istream& is); + void erase(); + private: + vector shapes; + +}; + +#endif \ No newline at end of file diff --git a/Lab5/main.cpp b/Lab5/main.cpp index a7b8f31..2288f2d 100644 --- a/Lab5/main.cpp +++ b/Lab5/main.cpp @@ -14,25 +14,89 @@ #include "shape.h" #include "line.h" #include "triangle.h" +#include "image.h" using namespace std; +GraphicsContext* gc = new X11Context(800,600,GraphicsContext::BLACK); + +void part1Test(){ + + // Boat + Shape* LT1 = new Line(250,500,550,500,GraphicsContext::YELLOW); + Shape* LT2 = new Line(250,500,150,400,GraphicsContext::YELLOW); + Shape* LT3 = new Line(150,400,650,400,GraphicsContext::YELLOW); + Shape* LT4 = new Line(650,400,550,500,GraphicsContext::YELLOW); + Shape* LT5 = new Line(400,400,400,100,GraphicsContext::YELLOW); + + // Sail + Shape* TT1 = new Triangle(400,100,300,150,400,200,GraphicsContext::YELLOW); + + + // Waves + Shape* LT8 = new Line(0,550,100,450,GraphicsContext::BLUE); + Shape* LT9 = new Line(100,450,100,550,GraphicsContext::BLUE); + Shape* LT10 = new Line(100,550,200,450,GraphicsContext::BLUE); + Shape* LT11 = new Line(200,450,200,550,GraphicsContext::BLUE); + Shape* LT12 = new Line(200,550,300,450,GraphicsContext::BLUE); + Shape* LT13 = new Line(300,450,300,550,GraphicsContext::BLUE); + Shape* LT14 = new Line(300,550,400,450,GraphicsContext::BLUE); + Shape* LT15 = new Line(400,450,400,550,GraphicsContext::BLUE); + Shape* LT16 = new Line(400,550,500,450,GraphicsContext::BLUE); + Shape* LT17 = new Line(500,450,500,550,GraphicsContext::BLUE); + Shape* LT18 = new Line(500,550,600,450,GraphicsContext::BLUE); + Shape* LT19 = new Line(600,450,600,550,GraphicsContext::BLUE); + Shape* LT20 = new Line(600,550,700,450,GraphicsContext::BLUE); + Shape* LT21 = new Line(700,450,700,550,GraphicsContext::BLUE); + Shape* LT22 = new Line(700,550,800,450,GraphicsContext::BLUE); + + (*LT1).draw(gc); + (*LT2).draw(gc); + (*LT3).draw(gc); + (*LT4).draw(gc); + (*LT5).draw(gc); + (*TT1).draw(gc); + (*LT8).draw(gc); + (*LT9).draw(gc); + (*LT10).draw(gc); + (*LT11).draw(gc); + (*LT12).draw(gc); + (*LT13).draw(gc); + (*LT14).draw(gc); + (*LT15).draw(gc); + (*LT16).draw(gc); + (*LT17).draw(gc); + (*LT18).draw(gc); + (*LT19).draw(gc); + (*LT20).draw(gc); + (*LT21).draw(gc); + (*LT22).draw(gc); +} + +void part2Test(){ + Image image1; + for(int i = 0; i < 10; i++){ + image1.add(new Line(rand()%800,rand()%600,rand()%800,rand()%600,rand())); + } + for(int i = 0; i < 10; i++){ + image1.add(new Triangle(rand()%800,rand()%600,rand()%800,rand()%600,rand()%800,rand()%600,rand())); + } + image1.draw(gc); +} + int main(void) { - GraphicsContext* gc = new X11Context(800,600,GraphicsContext::BLACK); - Shape* L1 = new Line(200, 150, 200, 300, GraphicsContext::GREEN); - Shape* T1 = new Triangle(250, 100, 50, 320, 125, 200, GraphicsContext::RED); - Shape* L2 = L1->clone(); - Shape* T2 = T1->clone(); - delete L1; - delete T1; - (*L2).draw(gc); - (*T2).draw(gc); - (*L2).out(cout); - (*T2).out(cout); - + part1Test(); sleep(5); - + gc->clear(); + + part2Test(); + sleep(5); + gc->clear(); + + sleep(20); + delete gc; return 0; -} \ No newline at end of file +} + diff --git a/Lab5/makefile b/Lab5/makefile index c0b10e0..734c0c7 100644 --- a/Lab5/makefile +++ b/Lab5/makefile @@ -4,7 +4,7 @@ CC = g++ CFLAGS = -c -MMD -g LFLAGS = -lX11 # Change w/ every new project -SOURCES = main.cpp gcontext.cpp x11context.cpp row.cpp matrix.cpp shape.cpp line.cpp triangle.cpp +SOURCES = main.cpp gcontext.cpp x11context.cpp row.cpp matrix.cpp shape.cpp line.cpp triangle.cpp image.cpp OBJECTS = $(SOURCES:.cpp=.o) # Change w/ every new project EXECUTABLE = Lab5