mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-12-29 19:00:35 +05:00
0021859: SMESH : Add conversion from QUAD8 to QUAD9 and from HEXA20 to HEXA27
+ class SMESHCONTROLS_EXPORT ElemEntityType: public virtual Predicate{
This commit is contained in:
parent
13ba132d92
commit
f0cd60b411
@ -210,10 +210,13 @@ using namespace SMESH::Controls;
|
|||||||
* FUNCTORS
|
* FUNCTORS
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : NumericalFunctor
|
Class : NumericalFunctor
|
||||||
Description : Base class for numerical functors
|
Description : Base class for numerical functors
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
NumericalFunctor::NumericalFunctor():
|
NumericalFunctor::NumericalFunctor():
|
||||||
myMesh(NULL)
|
myMesh(NULL)
|
||||||
{
|
{
|
||||||
@ -321,6 +324,7 @@ double NumericalFunctor::Round( const double & aVal )
|
|||||||
* \param minmax - boundaries of diapason of values to divide into intervals
|
* \param minmax - boundaries of diapason of values to divide into intervals
|
||||||
*/
|
*/
|
||||||
//================================================================================
|
//================================================================================
|
||||||
|
|
||||||
void NumericalFunctor::GetHistogram(int nbIntervals,
|
void NumericalFunctor::GetHistogram(int nbIntervals,
|
||||||
std::vector<int>& nbEvents,
|
std::vector<int>& nbEvents,
|
||||||
std::vector<double>& funValues,
|
std::vector<double>& funValues,
|
||||||
@ -403,9 +407,11 @@ void NumericalFunctor::GetHistogram(int nbIntervals,
|
|||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : GetValue
|
/*
|
||||||
//purpose :
|
Class : Volume
|
||||||
//=======================================================================
|
Description : Functor calculating volume of a 3D element
|
||||||
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Volume::GetValue( long theElementId )
|
double Volume::GetValue( long theElementId )
|
||||||
{
|
{
|
||||||
@ -417,21 +423,11 @@ double Volume::GetValue( long theElementId )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
|
||||||
//function : GetBadRate
|
|
||||||
//purpose : meaningless as it is not quality control functor
|
|
||||||
//=======================================================================
|
|
||||||
|
|
||||||
double Volume::GetBadRate( double Value, int /*nbNodes*/ ) const
|
double Volume::GetBadRate( double Value, int /*nbNodes*/ ) const
|
||||||
{
|
{
|
||||||
return Value;
|
return Value;
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
|
||||||
//function : GetType
|
|
||||||
//purpose :
|
|
||||||
//=======================================================================
|
|
||||||
|
|
||||||
SMDSAbs_ElementType Volume::GetType() const
|
SMDSAbs_ElementType Volume::GetType() const
|
||||||
{
|
{
|
||||||
return SMDSAbs_Volume;
|
return SMDSAbs_Volume;
|
||||||
@ -442,6 +438,8 @@ SMDSAbs_ElementType Volume::GetType() const
|
|||||||
Class : MaxElementLength2D
|
Class : MaxElementLength2D
|
||||||
Description : Functor calculating maximum length of 2D element
|
Description : Functor calculating maximum length of 2D element
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double MaxElementLength2D::GetValue( const TSequenceOfXYZ& P )
|
double MaxElementLength2D::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
if(P.size() == 0)
|
if(P.size() == 0)
|
||||||
@ -508,6 +506,7 @@ SMDSAbs_ElementType MaxElementLength2D::GetType() const
|
|||||||
Class : MaxElementLength3D
|
Class : MaxElementLength3D
|
||||||
Description : Functor calculating maximum length of 3D element
|
Description : Functor calculating maximum length of 3D element
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double MaxElementLength3D::GetValue( long theElementId )
|
double MaxElementLength3D::GetValue( long theElementId )
|
||||||
{
|
{
|
||||||
@ -683,6 +682,7 @@ SMDSAbs_ElementType MaxElementLength3D::GetType() const
|
|||||||
Class : MinimumAngle
|
Class : MinimumAngle
|
||||||
Description : Functor for calculation of minimum angle
|
Description : Functor for calculation of minimum angle
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double MinimumAngle::GetValue( const TSequenceOfXYZ& P )
|
double MinimumAngle::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
@ -715,10 +715,13 @@ SMDSAbs_ElementType MinimumAngle::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : AspectRatio
|
Class : AspectRatio
|
||||||
Description : Functor for calculating aspect ratio
|
Description : Functor for calculating aspect ratio
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double AspectRatio::GetValue( long theId )
|
double AspectRatio::GetValue( long theId )
|
||||||
{
|
{
|
||||||
double aVal = 0;
|
double aVal = 0;
|
||||||
@ -899,10 +902,13 @@ SMDSAbs_ElementType AspectRatio::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : AspectRatio3D
|
Class : AspectRatio3D
|
||||||
Description : Functor for calculating aspect ratio
|
Description : Functor for calculating aspect ratio
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
namespace{
|
namespace{
|
||||||
|
|
||||||
inline double getHalfPerimeter(double theTria[3]){
|
inline double getHalfPerimeter(double theTria[3]){
|
||||||
@ -1269,10 +1275,13 @@ SMDSAbs_ElementType AspectRatio3D::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Warping
|
Class : Warping
|
||||||
Description : Functor for calculating warping
|
Description : Functor for calculating warping
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Warping::GetValue( const TSequenceOfXYZ& P )
|
double Warping::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
if ( P.size() != 4 )
|
if ( P.size() != 4 )
|
||||||
@ -1326,10 +1335,13 @@ SMDSAbs_ElementType Warping::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Taper
|
Class : Taper
|
||||||
Description : Functor for calculating taper
|
Description : Functor for calculating taper
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Taper::GetValue( const TSequenceOfXYZ& P )
|
double Taper::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
if ( P.size() != 4 )
|
if ( P.size() != 4 )
|
||||||
@ -1366,11 +1378,13 @@ SMDSAbs_ElementType Taper::GetType() const
|
|||||||
return SMDSAbs_Face;
|
return SMDSAbs_Face;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Skew
|
Class : Skew
|
||||||
Description : Functor for calculating skew in degrees
|
Description : Functor for calculating skew in degrees
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
static inline double skewAngle( const gp_XYZ& p1, const gp_XYZ& p2, const gp_XYZ& p3 )
|
static inline double skewAngle( const gp_XYZ& p1, const gp_XYZ& p2, const gp_XYZ& p3 )
|
||||||
{
|
{
|
||||||
gp_XYZ p12 = ( p2 + p1 ) / 2.;
|
gp_XYZ p12 = ( p2 + p1 ) / 2.;
|
||||||
@ -1430,10 +1444,13 @@ SMDSAbs_ElementType Skew::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Area
|
Class : Area
|
||||||
Description : Functor for calculating area
|
Description : Functor for calculating area
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Area::GetValue( const TSequenceOfXYZ& P )
|
double Area::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
double val = 0.0;
|
double val = 0.0;
|
||||||
@ -1463,11 +1480,13 @@ SMDSAbs_ElementType Area::GetType() const
|
|||||||
return SMDSAbs_Face;
|
return SMDSAbs_Face;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Length
|
Class : Length
|
||||||
Description : Functor for calculating length of edge
|
Description : Functor for calculating length of edge
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Length::GetValue( const TSequenceOfXYZ& P )
|
double Length::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
switch ( P.size() ) {
|
switch ( P.size() ) {
|
||||||
@ -1488,10 +1507,12 @@ SMDSAbs_ElementType Length::GetType() const
|
|||||||
return SMDSAbs_Edge;
|
return SMDSAbs_Edge;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : Length2D
|
Class : Length2D
|
||||||
Description : Functor for calculating length of edge
|
Description : Functor for calculating length of edge
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double Length2D::GetValue( long theElementId)
|
double Length2D::GetValue( long theElementId)
|
||||||
{
|
{
|
||||||
@ -1799,10 +1820,13 @@ void Length2D::GetValues(TValues& theValues){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : MultiConnection
|
Class : MultiConnection
|
||||||
Description : Functor for calculating number of faces conneted to the edge
|
Description : Functor for calculating number of faces conneted to the edge
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double MultiConnection::GetValue( const TSequenceOfXYZ& P )
|
double MultiConnection::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -1823,10 +1847,13 @@ SMDSAbs_ElementType MultiConnection::GetType() const
|
|||||||
return SMDSAbs_Edge;
|
return SMDSAbs_Edge;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : MultiConnection2D
|
Class : MultiConnection2D
|
||||||
Description : Functor for calculating number of faces conneted to the edge
|
Description : Functor for calculating number of faces conneted to the edge
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double MultiConnection2D::GetValue( const TSequenceOfXYZ& P )
|
double MultiConnection2D::GetValue( const TSequenceOfXYZ& P )
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -1970,10 +1997,13 @@ void MultiConnection2D::GetValues(MValues& theValues){
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : BallDiameter
|
Class : BallDiameter
|
||||||
Description : Functor returning diameter of a ball element
|
Description : Functor returning diameter of a ball element
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
double BallDiameter::GetValue( long theId )
|
double BallDiameter::GetValue( long theId )
|
||||||
{
|
{
|
||||||
double diameter = 0;
|
double diameter = 0;
|
||||||
@ -2002,10 +2032,12 @@ SMDSAbs_ElementType BallDiameter::GetType() const
|
|||||||
PREDICATES
|
PREDICATES
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : BadOrientedVolume
|
Class : BadOrientedVolume
|
||||||
Description : Predicate bad oriented volumes
|
Description : Predicate bad oriented volumes
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
BadOrientedVolume::BadOrientedVolume()
|
BadOrientedVolume::BadOrientedVolume()
|
||||||
{
|
{
|
||||||
@ -2052,9 +2084,11 @@ bool BareBorderVolume::IsSatisfy(long theElementId )
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : BareBorderFace
|
Class : BareBorderFace
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
bool BareBorderFace::IsSatisfy(long theElementId )
|
bool BareBorderFace::IsSatisfy(long theElementId )
|
||||||
{
|
{
|
||||||
@ -2092,9 +2126,11 @@ bool BareBorderFace::IsSatisfy(long theElementId )
|
|||||||
return ok;
|
return ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : OverConstrainedVolume
|
Class : OverConstrainedVolume
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
bool OverConstrainedVolume::IsSatisfy(long theElementId )
|
bool OverConstrainedVolume::IsSatisfy(long theElementId )
|
||||||
{
|
{
|
||||||
@ -2112,9 +2148,11 @@ bool OverConstrainedVolume::IsSatisfy(long theElementId )
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : OverConstrainedFace
|
Class : OverConstrainedFace
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
bool OverConstrainedFace::IsSatisfy(long theElementId )
|
bool OverConstrainedFace::IsSatisfy(long theElementId )
|
||||||
{
|
{
|
||||||
@ -2145,10 +2183,12 @@ bool OverConstrainedFace::IsSatisfy(long theElementId )
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : CoincidentNodes
|
Class : CoincidentNodes
|
||||||
Description : Predicate of Coincident nodes
|
Description : Predicate of Coincident nodes
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
CoincidentNodes::CoincidentNodes()
|
CoincidentNodes::CoincidentNodes()
|
||||||
{
|
{
|
||||||
@ -2190,11 +2230,13 @@ void CoincidentNodes::SetMesh( const SMDS_Mesh* theMesh )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : CoincidentElements
|
Class : CoincidentElements
|
||||||
Description : Predicate of Coincident Elements
|
Description : Predicate of Coincident Elements
|
||||||
Note : This class is suitable only for visualization of Coincident Elements
|
Note : This class is suitable only for visualization of Coincident Elements
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
CoincidentElements::CoincidentElements()
|
CoincidentElements::CoincidentElements()
|
||||||
{
|
{
|
||||||
@ -2245,10 +2287,12 @@ SMDSAbs_ElementType CoincidentElements3D::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : FreeBorders
|
Class : FreeBorders
|
||||||
Description : Predicate for free borders
|
Description : Predicate for free borders
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
FreeBorders::FreeBorders()
|
FreeBorders::FreeBorders()
|
||||||
{
|
{
|
||||||
@ -2271,10 +2315,13 @@ SMDSAbs_ElementType FreeBorders::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : FreeEdges
|
Class : FreeEdges
|
||||||
Description : Predicate for free Edges
|
Description : Predicate for free Edges
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
FreeEdges::FreeEdges()
|
FreeEdges::FreeEdges()
|
||||||
{
|
{
|
||||||
myMesh = 0;
|
myMesh = 0;
|
||||||
@ -2406,11 +2453,12 @@ void FreeEdges::GetBoreders(TBorders& theBorders)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : FreeNodes
|
Class : FreeNodes
|
||||||
Description : Predicate for free nodes
|
Description : Predicate for free nodes
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
FreeNodes::FreeNodes()
|
FreeNodes::FreeNodes()
|
||||||
{
|
{
|
||||||
@ -2437,10 +2485,12 @@ SMDSAbs_ElementType FreeNodes::GetType() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : FreeFaces
|
Class : FreeFaces
|
||||||
Description : Predicate for free faces
|
Description : Predicate for free faces
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
FreeFaces::FreeFaces()
|
FreeFaces::FreeFaces()
|
||||||
{
|
{
|
||||||
@ -2493,10 +2543,12 @@ SMDSAbs_ElementType FreeFaces::GetType() const
|
|||||||
return SMDSAbs_Face;
|
return SMDSAbs_Face;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : LinearOrQuadratic
|
Class : LinearOrQuadratic
|
||||||
Description : Predicate to verify whether a mesh element is linear
|
Description : Predicate to verify whether a mesh element is linear
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
LinearOrQuadratic::LinearOrQuadratic()
|
LinearOrQuadratic::LinearOrQuadratic()
|
||||||
{
|
{
|
||||||
@ -2527,10 +2579,12 @@ SMDSAbs_ElementType LinearOrQuadratic::GetType() const
|
|||||||
return myType;
|
return myType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : GroupColor
|
Class : GroupColor
|
||||||
Description : Functor for check color of group to whic mesh element belongs to
|
Description : Functor for check color of group to whic mesh element belongs to
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
GroupColor::GroupColor()
|
GroupColor::GroupColor()
|
||||||
{
|
{
|
||||||
@ -2619,6 +2673,7 @@ void GroupColor::SetColorStr( const TCollection_AsciiString& theStr )
|
|||||||
// Purpose : Get range as a string.
|
// Purpose : Get range as a string.
|
||||||
// Example: "1,2,3,50-60,63,67,70-"
|
// Example: "1,2,3,50-60,63,67,70-"
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
|
||||||
void GroupColor::GetColorStr( TCollection_AsciiString& theResStr ) const
|
void GroupColor::GetColorStr( TCollection_AsciiString& theResStr ) const
|
||||||
{
|
{
|
||||||
theResStr.Clear();
|
theResStr.Clear();
|
||||||
@ -2627,10 +2682,12 @@ void GroupColor::GetColorStr( TCollection_AsciiString& theResStr ) const
|
|||||||
theResStr += TCollection_AsciiString( ";" ) + TCollection_AsciiString( myColor.Blue() );
|
theResStr += TCollection_AsciiString( ";" ) + TCollection_AsciiString( myColor.Blue() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
/*
|
/*
|
||||||
Class : ElemGeomType
|
Class : ElemGeomType
|
||||||
Description : Predicate to check element geometry type
|
Description : Predicate to check element geometry type
|
||||||
*/
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
ElemGeomType::ElemGeomType()
|
ElemGeomType::ElemGeomType()
|
||||||
{
|
{
|
||||||
@ -2677,6 +2734,54 @@ SMDSAbs_GeometryType ElemGeomType::GetGeomType() const
|
|||||||
return myGeomType;
|
return myGeomType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================================
|
||||||
|
/*
|
||||||
|
Class : ElemEntityType
|
||||||
|
Description : Predicate to check element entity type
|
||||||
|
*/
|
||||||
|
//================================================================================
|
||||||
|
|
||||||
|
ElemEntityType::ElemEntityType():
|
||||||
|
myMesh( 0 ),
|
||||||
|
myType( SMDSAbs_All ),
|
||||||
|
myEntityType( SMDSEntity_0D )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void ElemEntityType::SetMesh( const SMDS_Mesh* theMesh )
|
||||||
|
{
|
||||||
|
myMesh = theMesh;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ElemEntityType::IsSatisfy( long theId )
|
||||||
|
{
|
||||||
|
if ( !myMesh ) return false;
|
||||||
|
const SMDS_MeshElement* anElem = myMesh->FindElement( theId );
|
||||||
|
return ( anElem &&
|
||||||
|
myEntityType == anElem->GetEntityType() &&
|
||||||
|
( myType == SMDSAbs_Edge || myType == SMDSAbs_Face || myType == SMDSAbs_Volume ));
|
||||||
|
}
|
||||||
|
|
||||||
|
void ElemEntityType::SetType( SMDSAbs_ElementType theType )
|
||||||
|
{
|
||||||
|
myType = theType;
|
||||||
|
}
|
||||||
|
|
||||||
|
SMDSAbs_ElementType ElemEntityType::GetType() const
|
||||||
|
{
|
||||||
|
return myType;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ElemEntityType::SetElemEntityType( SMDSAbs_EntityType theEntityType )
|
||||||
|
{
|
||||||
|
myEntityType = theEntityType;
|
||||||
|
}
|
||||||
|
|
||||||
|
SMDSAbs_EntityType ElemEntityType::GetElemEntityType() const
|
||||||
|
{
|
||||||
|
return myEntityType;
|
||||||
|
}
|
||||||
|
|
||||||
//================================================================================
|
//================================================================================
|
||||||
/*!
|
/*!
|
||||||
* \brief Class CoplanarFaces
|
* \brief Class CoplanarFaces
|
||||||
|
@ -245,7 +245,6 @@ namespace SMESH{
|
|||||||
virtual SMDSAbs_ElementType GetType() const;
|
virtual SMDSAbs_ElementType GetType() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Class : Skew
|
Class : Skew
|
||||||
Description : Functor for calculating skew in degrees
|
Description : Functor for calculating skew in degrees
|
||||||
@ -429,6 +428,28 @@ namespace SMESH{
|
|||||||
const SMDS_Mesh* myMesh;
|
const SMDS_Mesh* myMesh;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Class : ElemEntityType
|
||||||
|
Description : Functor for calculating entity type
|
||||||
|
*/
|
||||||
|
class SMESHCONTROLS_EXPORT ElemEntityType: public virtual Predicate{
|
||||||
|
public:
|
||||||
|
ElemEntityType();
|
||||||
|
virtual void SetMesh( const SMDS_Mesh* theMesh );
|
||||||
|
virtual bool IsSatisfy( long theElementId );
|
||||||
|
void SetType( SMDSAbs_ElementType theType );
|
||||||
|
virtual SMDSAbs_ElementType GetType() const;
|
||||||
|
void SetElemEntityType( SMDSAbs_EntityType theEntityType );
|
||||||
|
SMDSAbs_EntityType GetElemEntityType() const;
|
||||||
|
|
||||||
|
private:
|
||||||
|
const SMDS_Mesh* myMesh;
|
||||||
|
SMDSAbs_ElementType myType;
|
||||||
|
SMDSAbs_EntityType myEntityType;
|
||||||
|
};
|
||||||
|
typedef boost::shared_ptr<ElemEntityType> ElemEntityTypePtr;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
BareBorderVolume
|
BareBorderVolume
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user