MVC  0.0.1
primitives.h
См. документацию.
1 #pragma once
2 
3 #include <iostream>
4 #include "iprimitive.h"
5 
6 
8  public:
9  void draw(std::shared_ptr<IPainter>) const override;
10  void set_end(const Point&) override;
11  void set_radius(const int&) override;
12 
13  PrimitiveObject(const Point&);
14 
15  virtual ~PrimitiveObject() = default;
16 
17  void set_location(const Point&);
18 
19  protected:
21 };
22 
24  public:
25  PointPrimitive(const Point&);
26 
27  void draw(std::shared_ptr<IPainter>) const override;
28 };
29 
31  public:
32  LinePrimitive(const Point&, const Point&);
33 
34  void set_end(const Point&) override;
35 
36  void draw(std::shared_ptr<IPainter>) const override;
37 
38  private:
39  Point end_dot;
40 };
41 
43  public:
44  CirclePrimitive(const Point&, const int&);
45 
46  void set_radius(const int&) override;
47 
48  void draw(std::shared_ptr<IPainter>) const override;
49 
50  private:
51  int radius = 0;
52 };
iprimitive.h
PrimitiveObject
Definition: primitives.h:7
PointPrimitive::draw
void draw(std::shared_ptr< IPainter >) const override
Drawing with a specific graphics painter.
Definition: primitives.cpp:19
PrimitiveObject::draw
void draw(std::shared_ptr< IPainter >) const override
Drawing with a specific graphics painter.
Definition: primitives.cpp:6
LinePrimitive::set_end
void set_end(const Point &) override
sets end Point of line primitive objects
Definition: primitives.cpp:26
LinePrimitive
Definition: primitives.h:30
LinePrimitive::draw
void draw(std::shared_ptr< IPainter >) const override
Drawing with a specific graphics painter.
Definition: primitives.cpp:30
CirclePrimitive::draw
void draw(std::shared_ptr< IPainter >) const override
Drawing with a specific graphics painter.
Definition: primitives.cpp:41
PrimitiveObject::location
Point location
Definition: primitives.h:20
PrimitiveObject::~PrimitiveObject
virtual ~PrimitiveObject()=default
CirclePrimitive::CirclePrimitive
CirclePrimitive(const Point &, const int &)
Definition: primitives.cpp:35
PrimitiveObject::set_end
void set_end(const Point &) override
sets end Point of line primitive objects
Definition: primitives.cpp:8
IPrimitiveObject
Here is interface is common for all primitive objects.
Definition: iprimitive.h:10
CirclePrimitive
Definition: primitives.h:42
PointPrimitive::PointPrimitive
PointPrimitive(const Point &)
Definition: primitives.cpp:17
PrimitiveObject::set_radius
void set_radius(const int &) override
sets radius of circle primitive objects
Definition: primitives.cpp:10
PointPrimitive
Definition: primitives.h:23
CirclePrimitive::set_radius
void set_radius(const int &) override
sets radius of circle primitive objects
Definition: primitives.cpp:37
PrimitiveObject::PrimitiveObject
PrimitiveObject(const Point &)
Definition: primitives.cpp:4
Point
Definition: base_types.h:6
LinePrimitive::LinePrimitive
LinePrimitive(const Point &, const Point &)
Definition: primitives.cpp:24
PrimitiveObject::set_location
void set_location(const Point &)
Definition: primitives.cpp:12