Chrysalis - Pattern
Toggle main menu visibility
Loading...
Searching...
No Matches
RayArgument.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_RAYARGUMENT_H
2
#define CHRYSALIS_RAYARGUMENT_H
3
4
#include "
arguments/LineArgument.h
"
5
9
namespace
Chrysalis
{
10
class
RayArgument
:
public
LineArgument
{
11
PROVIDE_SERIALIZATION_ACCESS
(
RayArgument
)
12
protected
:
13
explicit
RayArgument
(
const
args::point
*
origin
,
const
args::point
* destination);
14
public
:
15
explicit
RayArgument
(
const
args::point
*
origin
,
args::number
&&
angle
);
16
17
explicit
operator
CG::Ray
()
const
;
18
};
19
SERIALIZE_DERIVED_CONSTRUCTION
(
RayArgument
,
LineArgument
, origin_, angle_)
20
namespace
args
{
21
using
ray
=
RayArgument
;
22
}
23
}
25
26
#endif
//CHRYSALIS_RAYARGUMENT_H
LineArgument.h
Chrysalis::LineArgument
Definition
LineArgument.h:10
Chrysalis::LineArgument::LineArgument
LineArgument(const args::point *origin, const args::point *destination)
Definition
LineArgument.cpp:10
Chrysalis::LineArgument::origin
const args::point * origin() const
Definition
LineArgument.cpp:25
Chrysalis::LineArgument::angle
const args::number & angle() const
Definition
LineArgument.cpp:21
Chrysalis::RayArgument
Definition
RayArgument.h:10
Chrysalis::RayArgument::RayArgument
RayArgument(const args::point *origin, const args::point *destination)
Definition
RayArgument.cpp:5
Chrysalis::CG::Ray
CGAL::Ray_2< LinearKernel > Ray
Definition
CGAL.h:22
Chrysalis::args
Definition
Argument.h:26
Chrysalis::args::point
BasePointArgument point
Definition
BasePointArgument.h:26
Chrysalis::args::number
std::unique_ptr< BaseArgument< double > > number
Definition
BaseArgument.h:25
Chrysalis::args::ray
RayArgument ray
Definition
RayArgument.h:21
Chrysalis
Definition
Argument.h:9
PROVIDE_SERIALIZATION_ACCESS
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition
serialization.h:29
SERIALIZE_DERIVED_CONSTRUCTION
#define SERIALIZE_DERIVED_CONSTRUCTION(Class, Base,...)
Definition
serialization.h:124
pattern
include
arguments
RayArgument.h
Generated by
1.17.0