Main Page | User's Guide | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

Multivac::CSetOfPoints< T > Class Template Reference

The initial curve is a circle. More...

#include <setofpoints.hxx>

Inheritance diagram for Multivac::CSetOfPoints< T >:

Multivac::CInitialCurve< T > List of all members.

Public Member Functions

 CSetOfPoints ()
 Default constructor.
 CSetOfPoints (Curve< T > &InitialFront)
 Constructor.
 CSetOfPoints (string InitialFrontFile, int orientation, bool origin_out_)
 Main constructor.
 ~CSetOfPoints () throw ()
 Destructor.
virtual void SetDistances (CMesh< T > &Mesh, CLevelSet< T > &Phi)
 Updates the level set function Phi by setting distances to the circle.
virtual T GetDistance (T x, T y)
 Returns the distance from a given point to the circle.
virtual void GetProjectionOnMesh (T &x, T &y, CMesh< T > &Mesh)
 Returns the closest mesh-point of the projection of (x, y) on the curve.
virtual void Save (string CurveFile) const
 Saves the circle.

Protected Attributes

Curve< T > Front
bool origin_out
 Is the bottom left corner outside the front?

Detailed Description

template<class T>
class Multivac::CSetOfPoints< T >

The initial curve is a circle.


Constructor & Destructor Documentation

template<class T>
Multivac::CSetOfPoints< T >::CSetOfPoints Curve< T > &  InitialFront  ) 
 

Constructor.

Sets the front equal to 'InitialFront'.

Parameters:
InitialFront the initial front.

template<class T>
Multivac::CSetOfPoints< T >::CSetOfPoints string  InitialFrontFile,
int  orientation,
bool  origin_out_
 

Main constructor.

Reads the file defining the front.

Parameters:
InitialFrontFile file that stores points defining the front.
orientation orientation of the front: -1 if the orientation is unknown, 0 if points are stored in the trigonometrical orientation and 1 if they are stored in the reverse orientation.
origin_out_ position of the bottom left corner of the mesh. 'true' if the corner is outside the front, 'false' if it is inside.


Member Function Documentation

template<class T>
T Multivac::CSetOfPoints< T >::GetDistance x,
y
[inline, virtual]
 

Returns the distance from a given point to the circle.

Parameters:
x point abscissa.
y point ordinate.
Returns:
Distance from (x, y) to the circle.

Implements Multivac::CInitialCurve< T >.

template<class T>
void Multivac::CSetOfPoints< T >::GetProjectionOnMesh T &  x,
T &  y,
CMesh< T > &  Mesh
[virtual]
 

Returns the closest mesh-point of the projection of (x, y) on the curve.

Let A = (x, y). Let B be the projection of A on the curve. Let C be the closest point to B that is on the mesh (included its vertices). On exit, C is returned through x and y: C = (x, y).

Parameters:
x first coordinate of the point to be projected.
y second coordinate of the point to be projected.
Mesh mesh.
Warning:
Undefined function.

Implements Multivac::CInitialCurve< T >.

template<class T>
void Multivac::CSetOfPoints< T >::Save string  CurveFile  )  const [virtual]
 

Saves the circle.

Parameters:
CurveFile the descriptor of the file where data are saved.
Warning:
This function doesn't save any point because the circle is analytically defined.

Implements Multivac::CInitialCurve< T >.

template<class T>
void Multivac::CSetOfPoints< T >::SetDistances CMesh< T > &  Mesh,
CLevelSet< T > &  Phi
[virtual]
 

Updates the level set function Phi by setting distances to the circle.

Parameters:
Mesh orthogonal mesh.
Phi level set function defined on an orthogonal mesh.
Exceptions:
Seldon::WrongCol attempt to reach a wrong column number.
Seldon::WrongRow attempt to reach a wrong row number.

Implements Multivac::CInitialCurve< T >.


The documentation for this class was generated from the following files:
Generated on Sun Jan 16 23:37:59 2005 for Multivac by  doxygen 1.4.0