Version: 6.5.0
Public Member Functions | Static Public Attributes | List of all members
INTERP_KERNEL::IntersectElement Class Reference

Public Member Functions

 IntersectElement (double val1, double val2, bool start1, bool end1, bool start2, bool end2, Node *node, const Edge &e1, const Edge &e2, bool keepOrder)
 IntersectElement (const IntersectElement &other)
bool operator< (const IntersectElement &other) const
IntersectElementoperator= (const IntersectElement &other)
double getVal1 () const
double getVal2 () const
bool isLowerOnOther (const IntersectElement &other) const
unsigned isOnExtrForAnEdgeAndInForOtherEdge () const
void attachLoc ()
bool isOnMergedExtremity () const
bool isIncludedByBoth () const
void setNode (Node *node) const
void performMerging (MergePoints &commonNode) const
NodegetNodeOnly () const
NodegetNodeAndReleaseIt ()
 ~IntersectElement ()

Static Public Attributes

static const unsigned LIMIT_ALONE = 22
static const unsigned LIMIT_ON = 73
static const unsigned NO_LIMIT = 19

Detailed Description

This class is in charge to store an intersection point as result of non oververlapping edge intersection. This class manages the cases when intersect element is one of the extrimities of edge1 and/or edge2.

Constructor & Destructor Documentation

IntersectElement::IntersectElement ( double  val1,
double  val2,
bool  start1,
bool  end1,
bool  start2,
bool  end2,
Node node,
const Edge e1,
const Edge e2,
bool  keepOrder 
)
IntersectElement::IntersectElement ( const IntersectElement other)
IntersectElement::~IntersectElement ( )

Member Function Documentation

bool IntersectElement::operator< ( const IntersectElement other) const

The sort operator is done on the edge 1 not edge 2.

References INTERP_KERNEL::Edge::isLower().

IntersectElement & IntersectElement::operator= ( const IntersectElement other)

References setNode().

double INTERP_KERNEL::IntersectElement::getVal1 ( ) const
double INTERP_KERNEL::IntersectElement::getVal2 ( ) const
bool IntersectElement::isLowerOnOther ( const IntersectElement other) const

idem operator< method except that the orientation is done on edge 2 not edge 1.

References INTERP_KERNEL::Edge::isLower().

unsigned IntersectElement::isOnExtrForAnEdgeAndInForOtherEdge ( ) const
void INTERP_KERNEL::IntersectElement::attachLoc ( )
bool IntersectElement::isOnMergedExtremity ( ) const

Returns 0 or 1.

bool IntersectElement::isIncludedByBoth ( ) const
void IntersectElement::setNode ( Node node) const

This methode is const because 'node' is supposed to be equal geomitrically to _node.

References INTERP_KERNEL::Node::incrRef().

Referenced by isOnExtrForAnEdgeAndInForOtherEdge(), and operator=().

void IntersectElement::performMerging ( MergePoints commonNode) const
Node* INTERP_KERNEL::IntersectElement::getNodeOnly ( ) const
Node* INTERP_KERNEL::IntersectElement::getNodeAndReleaseIt ( )

Member Data Documentation

const unsigned INTERP_KERNEL::IntersectElement::LIMIT_ALONE = 22
static
const unsigned INTERP_KERNEL::IntersectElement::LIMIT_ON = 73
static
const unsigned INTERP_KERNEL::IntersectElement::NO_LIMIT = 19
static
Copyright © 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS