#include <primitive_funcs_lib.hpp>
Public Member Functions | |
Plane () | |
Constructs a new plane function. The line (levelset) is the line x=0. | |
Plane (const Point< dim > &origin, const Point< dim > &normal) | |
Constructs a new plane function. The line is defined by an origin and a normal vector. | |
![]() | |
PlaneBase (const Point< dim > &origin, const Point< dim > &normal) | |
Constructs a new plane function. The line is defined by an origin and a normal vector. | |
const Point< dim > & | origin () const |
Gets the origin of the plane. | |
const Point< dim > & | normal () const |
Gets the normal of the plane. | |
![]() | |
DomainFunc ()=default | |
Default constructor. | |
DomainFunc (const DomainFunc &)=default | |
Default copy constructor. | |
DomainFunc (DomainFunc &&)=default | |
Default move constructor. | |
DomainFunc & | operator= (const DomainFunc &)=default |
Default copy assignment operator. | |
DomainFunc & | operator= (DomainFunc &&)=default |
Default move assignment operator. | |
virtual | ~DomainFunc ()=default |
Default virtual destructor. | |
virtual Value< real > | operator() (const Point< dim > &point) const =0 |
Evaluator operator. | |
virtual Value< Interval< dim > > | operator() (const Point< dim, Interval< dim > > &point) const =0 |
Evaluator operator. | |
virtual Gradient< real > | grad (const Point< dim > &point) const =0 |
Gradient evaluator operator. | |
virtual Gradient< Interval< dim > > | grad (const Point< dim, Interval< dim > > &point) const =0 |
Gradient evaluator operator. | |
virtual Hessian< real > | hessian (const Point< dim > &point) const =0 |
Hessian evaluator operator. | |
Public Attributes | |
declare_impl_func_virtual_interface | |
Additional Inherited Members | |
![]() | |
template<int N> | |
using | Interval = ::algoim::Interval<N> |
Algoim's interval alias. | |
template<typename T > | |
using | Value = std::conditional_t<range == 1, T, Vector<T, range>> |
Value type. | |
template<typename T > | |
using | Gradient = Vector<Value<T>, dim> |
Gradient type. | |
template<typename T > | |
using | Hessian = Vector<Value<T>, num_hessian> |
Hessian (symmetric type). | |
![]() | |
static const int | num_hessian = dim * (dim + 1) / 2 |
Number of Hessian (symmetric) components. | |
![]() | |
static Point< dim > | get_default_origin () |
Gets the default origin of the plane. It is set to the origin of the Cartesian coordinate system. | |
static Point< dim > | get_default_normal () |
Gets the default normal vector of the plane. It is set to the x-axis. | |
![]() | |
Point< dim > | origin_ |
Origin of the (levelset) line. | |
Point< dim > | normal_ |
Normal to the (levelset) line. | |
Plane function.
This is a linear function whose value is zero at a line, and grows linearly (positively or negatively) as you move away from the line.
dim | Parametric dimension. |
qugar::impl::funcs::Plane< dim >::Plane | ( | ) |
Constructs a new plane function. The line (levelset) is the line x=0.
qugar::impl::funcs::Plane< dim >::Plane | ( | const Point< dim > & | origin, |
const Point< dim > & | normal ) |
Constructs a new plane function. The line is defined by an origin
and a normal
vector.
qugar::impl::funcs::Plane< dim >::declare_impl_func_virtual_interface |