To store and treat an ellipsoidal figure. More...

#include <Figure.h>

Inheritance diagram for Ellipse:
Figure

Public Member Functions

 Ellipse ()
 Default constructor.
 
 Ellipse (Point< real_t > c, real_t a, real_t b, int code=1)
 Constructor with given ellipse data.
 
real_t getSignedDistance (const Point< real_t > &p) const
 Return signed distance of a given point from the current ellipse.
 
Ellipseoperator+= (Point< real_t > a)
 Operator +=
 
Ellipseoperator+= (real_t a)
 Operator *=
 
virtual real_t getSignedDistance (const Point< real_t > &p) const
 Return signed distance from a given point to current figure.
 
void getSignedDistance (const Grid &g, Vect< real_t > &d) const
 Calculate signed distance to current figure with respect to grid points.
 
- Public Member Functions inherited from Figure
 Figure ()
 Default constructor.
 
 Figure (const Figure &f)
 Copy constructor.
 
virtual ~Figure ()
 Destructor.
 
void setCode (int code)
 Choose a code for the domain defined by the figure.
 
Figureoperator= (const Figure &f)
 Operator =.
 
void getSignedDistance (const Grid &g, Vect< real_t > &d) const
 Calculate signed distance to current figure with respect to grid points.
 
real_t dLine (const Point< real_t > &p, const Point< real_t > &a, const Point< real_t > &b) const
 Compute signed distance from a line.
 

Detailed Description

To store and treat an ellipsoidal figure.

Constructor & Destructor Documentation

◆ Ellipse() [1/2]

Ellipse ( )

Default constructor.

Constructs an ellipse with semimajor axis = 1, and semiminor axis = 1

◆ Ellipse() [2/2]

Ellipse ( Point< real_t >  c,
real_t  a,
real_t  b,
int  code = 1 
)

Constructor with given ellipse data.

Parameters
[in]cCoordinates of center
[in]aSemimajor axis
[in]bSemiminor axis
[in]codeCode to assign to the generated figure [Default: 1]

Member Function Documentation

◆ getSignedDistance() [1/3]

void getSignedDistance ( const Grid g,
Vect< real_t > &  d 
) const

Calculate signed distance to current figure with respect to grid points.

Parameters
[in]gGrid instance
[in]dVect instance containing calculated distance from each grid index to Figure
Remarks
Vector d doesn't need to be sized before invoking this function

◆ getSignedDistance() [2/3]

virtual real_t getSignedDistance ( const Point< real_t > &  p) const
virtual

Return signed distance from a given point to current figure.

Parameters
[in]pPoint instance from which distance is computed

Reimplemented from Figure.

◆ getSignedDistance() [3/3]

real_t getSignedDistance ( const Point< real_t > &  p) const
virtual

Return signed distance of a given point from the current ellipse.

The computed distance is negative if p lies in the ellipse, positive if it is outside, and 0 on its boundary

Parameters
[in]pPoint<double> instance

Reimplemented from Figure.

◆ operator+=() [1/2]

Ellipse & operator+= ( Point< real_t >  a)

Operator +=

Translate ellipse by a vector a

Parameters
[in]aVector defining the translation

◆ operator+=() [2/2]

Ellipse & operator+= ( real_t  a)

Operator *=

Scale ellipse by a factor a

Parameters
[in]aScaling value