Version: 5.1.6

INTERP_KERNEL.EdgeLin Class Reference

#include <InterpKernelGeo2DEdgeLin.hxx>

Inheritance diagram for INTERP_KERNEL.EdgeLin:
Inheritance graph

Public Member Functions

 EdgeLin (std::istream &lineInXfig)
 EdgeLin (Node *start, Node *end, bool direction=true)
 EdgeLin (double sX, double sY, double eX, double eY)
 ~EdgeLin ()
TypeOfFunction getTypeOfFunc () const
void dumpInXfigFile (std::ostream &stream, bool direction, int resolution, const Bounds &box) const
void update (Node *m)
double getNormSq () const
double getAreaOfZone () const
double getCurveLength () const
void getBarycenter (double *bary) const
void getBarycenterOfZone (double *bary) const
bool isIn (double characterVal) const
NodebuildRepresentantOfMySelf () const
double getCharactValue (const Node &node) const
double getDistanceToPoint (const double *pt) const
bool isNodeLyingOn (const double *coordOfNode) const
bool isLower (double val1, double val2) const
double getCharactValueEng (const double *node) const
bool doIHaveSameDirectionAs (const Edge &other) const
void dynCastFunction (const EdgeLin *&seg, const EdgeArcCircle *&arcSeg) const

Protected Member Functions

 EdgeLin ()
void updateBounds ()
EdgebuildEdgeLyingOnMe (Node *start, Node *end, bool direction) const


class SegSegIntersector

Constructor & Destructor Documentation

EdgeLin::EdgeLin ( std::istream &  lineInXfig  ) 
EdgeLin::EdgeLin ( Node start,
Node end,
bool  direction = true 
EdgeLin::EdgeLin ( double  sX,
double  sY,
double  eX,
double  eY 
EdgeLin::~EdgeLin (  ) 
INTERP_KERNEL.EdgeLin.EdgeLin (  )  [protected]

Member Function Documentation

TypeOfFunction INTERP_KERNEL.EdgeLin.getTypeOfFunc (  )  const [virtual]

Implements INTERP_KERNEL.Edge.


void EdgeLin::dumpInXfigFile ( std::ostream &  stream,
bool  direction,
int  resolution,
const Bounds box 
) const [virtual]
void EdgeLin::update ( Node m  )  [virtual]
double EdgeLin::getNormSq (  )  const
double EdgeLin::getAreaOfZone (  )  const [virtual]

This methods computes :

\[ \int_{Current Edge} -ydx \]

Implements INTERP_KERNEL.Edge.

References INTERP_KERNEL.Edge._end, and INTERP_KERNEL.Edge._start.

double EdgeLin::getCurveLength (  )  const [virtual]

Implements INTERP_KERNEL.Edge.

void EdgeLin::getBarycenter ( double bary  )  const [virtual]

Implements INTERP_KERNEL.Edge.

void EdgeLin::getBarycenterOfZone ( double bary  )  const [virtual]

\[ bary[0]=\int_{Current Edge} -yxdx \]

\[ bary[1]=\int_{Current Edge} -\frac{y^{2}}{2}dx \]

To compute these 2 expressions in this class we have :

\[ y=y_{1}+\frac{y_{2}-y_{1}}{x_{2}-x_{1}}(x-x_{1}) \]

Implements INTERP_KERNEL.Edge.

References TestMedCorba2.x1, and TestMedCorba2.x2.

bool EdgeLin::isIn ( double  characterVal  )  const [virtual]

Characteristic for edges is relative position btw 0.;1.

Implements INTERP_KERNEL.Edge.

Reimplemented in INTERP_KERNEL.EdgeInfLin.

Node * EdgeLin::buildRepresentantOfMySelf (  )  const [virtual]
double EdgeLin::getCharactValue ( const Node node  )  const [virtual]
double EdgeLin::getDistanceToPoint ( const double pt  )  const [virtual]
bool EdgeLin::isNodeLyingOn ( const double coordOfNode  )  const [virtual]
bool INTERP_KERNEL.EdgeLin.isLower ( double  val1,
double  val2 
) const [virtual]

Implements INTERP_KERNEL.Edge.

double EdgeLin::getCharactValueEng ( const double node  )  const
bool INTERP_KERNEL.EdgeLin.doIHaveSameDirectionAs ( const Edge other  )  const
void INTERP_KERNEL.EdgeLin.dynCastFunction ( const EdgeLin *&  seg,
const EdgeArcCircle *&  arcSeg 
) const
void EdgeLin::updateBounds (  )  [protected]

No precision should be introduced here. Just think as if precision was perfect.

References INTERP_KERNEL.Edge._bounds, INTERP_KERNEL.Edge._end, INTERP_KERNEL.Edge._start, and INTERP_KERNEL.Bounds.setValues().

Edge * EdgeLin::buildEdgeLyingOnMe ( Node start,
Node end,
bool  direction 
) const [protected, virtual]

Friends And Related Function Documentation

friend class SegSegIntersector [friend]