Chrysalis - Pattern
Loading...
Searching...
No Matches
LineArgument.h
Go to the documentation of this file.
1#ifndef CHRYSALIS_LINEARGUMENT_H
2#define CHRYSALIS_LINEARGUMENT_H
3
5
9namespace Chrysalis {
12 protected:
13 explicit LineArgument(const args::point* origin, const args::point* destination);
14 public:
16 virtual ~LineArgument();
17
18 [[nodiscard]] virtual bool isValid() const;
19
20 [[nodiscard]] const args::number& angle() const;
21 [[nodiscard]] const args::point* origin() const;
22
23 explicit operator CG::Line() const;
24 protected:
29 };
31 namespace args {
33 }
34}
36
37#endif //CHRYSALIS_LINEARGUMENT_H
Definition LineArgument.h:10
LineArgument(const args::point *origin, const args::point *destination)
Definition LineArgument.cpp:10
const args::point * origin_
Definition LineArgument.h:26
args::number angle_
Definition LineArgument.h:28
const args::point * origin() const
Definition LineArgument.cpp:25
virtual ~LineArgument()
Definition LineArgument.cpp:13
const args::number & angle() const
Definition LineArgument.cpp:21
virtual bool isValid() const
Definition LineArgument.cpp:17
CGAL::Line_2< LinearKernel > Line
Definition CGAL.h:23
Definition Argument.h:26
BasePointArgument point
Definition BasePointArgument.h:26
std::unique_ptr< BaseArgument< double > > number
Definition BaseArgument.h:25
LineArgument line
Definition LineArgument.h:32
Definition Argument.h:9
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition serialization.h:29
#define SERIALIZE_CONSTRUCTION(Class,...)
Definition serialization.h:119