1#ifndef IV_SRC_UI_CAD_BUILDERMIMICELEMENT_HPP_
2#define IV_SRC_UI_CAD_BUILDERMIMICELEMENT_HPP_
13 virtual std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y);
15 [[nodiscard]]
virtual std::shared_ptr<iv::mimics::AbstractMimicElement>
19 [[nodiscard]]
virtual std::shared_ptr<iv::mimics::AbstractMimicElement>
30 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
38 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement>
46 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
54 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement>
63 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement>
71 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
77 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
83 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
89 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
95 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
101 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
107 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
113 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
119 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
125 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
131 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
137 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
143 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
149 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
155 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
161 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
167 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
173 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
179 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
185 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
191 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
197 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
203 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
209 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
215 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
221 std::shared_ptr<iv::mimics::AbstractMimicElement>
creatorMimic(
double x,
double y)
override;
Definition BuilderMimicElement.hpp:9
bool isSinglePoint() const
Definition BuilderMimicElement.cpp:35
virtual std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimicTwoPoints(const iv::math::geometry::Point2d &firstPoint, const iv::math::geometry::Point2d &secondPoint) const
Definition BuilderMimicElement.cpp:13
virtual std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y)
Definition BuilderMimicElement.cpp:7
virtual bool isTwoPoints() const
Definition BuilderMimicElement.cpp:25
virtual ~AbstractBuilderMimicElement()=default
virtual bool isMultiplePoints() const
Definition BuilderMimicElement.cpp:30
virtual std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimicMultiplePoints(const std::vector< iv::math::geometry::Point2d > &points) const
Definition BuilderMimicElement.cpp:20
Definition BuilderMimicElement.hpp:117
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:145
Definition BuilderMimicElement.hpp:28
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:50
Definition BuilderMimicElement.hpp:34
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimicTwoPoints(const iv::math::geometry::Point2d &firstPoint, const iv::math::geometry::Point2d &secondPoint) const override
Definition BuilderMimicElement.cpp:61
bool isTwoPoints() const override
Definition BuilderMimicElement.cpp:55
Definition BuilderMimicElement.hpp:44
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:67
Definition BuilderMimicElement.hpp:50
bool isMultiplePoints() const override
Definition BuilderMimicElement.cpp:72
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimicMultiplePoints(const std::vector< iv::math::geometry::Point2d > &points) const override
Definition BuilderMimicElement.cpp:78
Definition BuilderMimicElement.hpp:59
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimicTwoPoints(const iv::math::geometry::Point2d &firstPoint, const iv::math::geometry::Point2d &secondPoint) const override
Definition BuilderMimicElement.cpp:89
bool isTwoPoints() const override
Definition BuilderMimicElement.cpp:83
Definition BuilderMimicElement.hpp:69
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:100
Definition BuilderMimicElement.hpp:81
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:120
Definition BuilderMimicElement.hpp:75
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:115
Definition BuilderMimicElement.hpp:87
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:105
Definition BuilderMimicElement.hpp:93
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:125
Definition BuilderMimicElement.hpp:105
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:135
Definition BuilderMimicElement.hpp:99
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:130
Definition BuilderMimicElement.hpp:111
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:140
Definition BuilderMimicElement.hpp:123
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:150
Definition BuilderMimicElement.hpp:129
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:155
Definition BuilderMimicElement.hpp:195
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:205
Definition BuilderMimicElement.hpp:135
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:110
Definition BuilderMimicElement.hpp:147
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:165
Definition BuilderMimicElement.hpp:141
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:160
Definition BuilderMimicElement.hpp:159
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:175
Definition BuilderMimicElement.hpp:165
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:180
Definition BuilderMimicElement.hpp:153
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:170
Definition BuilderMimicElement.hpp:219
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:225
Definition BuilderMimicElement.hpp:171
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:185
Definition BuilderMimicElement.hpp:177
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:190
Definition BuilderMimicElement.hpp:183
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:195
Definition BuilderMimicElement.hpp:213
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:220
Definition BuilderMimicElement.hpp:189
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:200
Definition BuilderMimicElement.hpp:207
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:215
Definition BuilderMimicElement.hpp:201
std::shared_ptr< iv::mimics::AbstractMimicElement > creatorMimic(double x, double y) override
Definition BuilderMimicElement.cpp:210
Definition structs.hpp:16