Chrysalis - Pattern
Loading...
Searching...
No Matches
VectorArgument.h
Go to the documentation of this file.
1#ifndef CHRYSALIS_VECTORARGUMENT_H
2#define CHRYSALIS_VECTORARGUMENT_H
3
7
8namespace Chrysalis {
14 protected:
15 explicit VectorArgument(const args::point* origin, const args::point* destination);
16 public:
20
21 [[nodiscard]] bool isValid() const override;
22 [[nodiscard]] const args::number& length() const;
23
24 explicit operator CG::Vector() const;
25 explicit virtual operator CG::Segment() const;
26 private:
28 args::number length_;
29 };
31 namespace args {
33 }
34}
35
36#endif //CHRYSALIS_VECTORARGUMENT_H
const args::point * origin() const
Definition LineArgument.cpp:25
const args::number & angle() const
Definition LineArgument.cpp:21
Definition RayArgument.h:10
RayArgument(const args::point *origin, const args::point *destination)
Definition RayArgument.cpp:5
Definition VectorArgument.h:12
VectorArgument vector
Definition VectorArgument.h:32
VectorArgument(const args::point *origin, const args::point *destination)
Definition VectorArgument.cpp:15
const args::number & length() const
Definition VectorArgument.cpp:22
bool isValid() const override
Definition VectorArgument.cpp:18
CGAL::Vector_2< LinearKernel > Vector
Definition CGAL.h:25
CGAL::Segment_2< LinearKernel > Segment
Definition CGAL.h:26
Definition Argument.h:26
BasePointArgument point
Definition BasePointArgument.h:26
std::unique_ptr< BaseArgument< double > > number
Definition BaseArgument.h:25
Definition Argument.h:9
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition serialization.h:29
#define SERIALIZE_DERIVED_CONSTRUCTION(Class, Base,...)
Definition serialization.h:124