#include <SMESH_ControlsDef.hxx>
Public Member Functions | |
NumericalFunctor () | |
virtual void | SetMesh (const SMDS_Mesh *theMesh) |
virtual double | GetValue (long theElementId) |
virtual double | GetValue (const TSequenceOfXYZ &) |
void | GetHistogram (int nbIntervals, std::vector< int > &nbEvents, std::vector< double > &funValues, const std::vector<::smIdType > &elements, const double *minmax=0, const bool isLogarithmic=false) |
bool | IsApplicable (long theElementId) const |
virtual bool | IsApplicable (const SMDS_MeshElement *element) const |
Return true if a value can be computed for a given element. More... | |
virtual SMDSAbs_ElementType | GetType () const =0 |
virtual double | GetBadRate (double Value, int nbNodes) const =0 |
long | GetPrecision () const |
void | SetPrecision (const long thePrecision) |
double | Round (const double &value) |
bool | GetPoints (const ::smIdType theId, TSequenceOfXYZ &theRes) const |
Static Public Member Functions | |
static bool | GetPoints (const SMDS_MeshElement *theElem, TSequenceOfXYZ &theRes) |
Protected Attributes | |
const SMDS_Mesh * | myMesh |
const SMDS_MeshElement * | myCurrElement |
long | myPrecision |
double | myPrecisionValue |
NumericalFunctor::NumericalFunctor | ( | ) |
References myPrecision.
|
pure virtual |
Implemented in SMESH::Controls::ScaledJacobian, SMESH::Controls::NodeConnectivityNumber, SMESH::Controls::BallDiameter, SMESH::Controls::MultiConnection2D, SMESH::Controls::MultiConnection, SMESH::Controls::Deflection2D, SMESH::Controls::Length2D, SMESH::Controls::Length, SMESH::Controls::Area, SMESH::Controls::Skew, SMESH::Controls::Taper, SMESH::Controls::Warping, SMESH::Controls::AspectRatio3D, SMESH::Controls::AspectRatio, SMESH::Controls::MinimumAngle, SMESH::Controls::MaxElementLength3D, SMESH::Controls::MaxElementLength2D, and SMESH::Controls::Volume.
void SMESH::Controls::NumericalFunctor::GetHistogram | ( | int | nbIntervals, |
std::vector< int > & | nbEvents, | ||
std::vector< double > & | funValues, | ||
const std::vector<::smIdType > & | elements, | ||
const double * | minmax = 0 , |
||
const bool | isLogarithmic = false |
||
) |
bool SMESH::Controls::NumericalFunctor::GetPoints | ( | const ::smIdType | theId, |
TSequenceOfXYZ & | theRes | ||
) | const |
Referenced by getAngle(), GetValue(), SMESH::Controls::MaxElementLength2D::GetValue(), SMESH::Controls::MaxElementLength3D::GetValue(), SMESH::Controls::AspectRatio::GetValue(), SMESH::Controls::AspectRatio3D::GetValue(), StdMeshers_MaxElementArea::SetParametersByMesh(), and SMESH_MeshEditor::Smooth().
|
static |
long NumericalFunctor::GetPrecision | ( | ) | const |
References myPrecision.
|
pure virtual |
Implements SMESH::Controls::Functor.
Implemented in SMESH::Controls::ScaledJacobian, SMESH::Controls::NodeConnectivityNumber, SMESH::Controls::BallDiameter, SMESH::Controls::MultiConnection2D, SMESH::Controls::MultiConnection, SMESH::Controls::Deflection2D, SMESH::Controls::Length2D, SMESH::Controls::Length, SMESH::Controls::Area, SMESH::Controls::Skew, SMESH::Controls::Taper, SMESH::Controls::Warping, SMESH::Controls::AspectRatio3D, SMESH::Controls::AspectRatio, SMESH::Controls::MinimumAngle, SMESH::Controls::MaxElementLength3D, SMESH::Controls::MaxElementLength2D, and SMESH::Controls::Volume.
Referenced by IsApplicable().
|
virtual |
Reimplemented in SMESH::Controls::MultiConnection2D, SMESH::Controls::MultiConnection, SMESH::Controls::Deflection2D, SMESH::Controls::Length2D, SMESH::Controls::Length, SMESH::Controls::Area, SMESH::Controls::Skew, SMESH::Controls::Taper, SMESH::Controls::Warping, SMESH::Controls::AspectRatio3D, SMESH::Controls::AspectRatio, SMESH::Controls::MinimumAngle, and SMESH::Controls::MaxElementLength2D.
|
virtual |
Reimplemented in SMESH::Controls::ScaledJacobian, SMESH::Controls::NodeConnectivityNumber, SMESH::Controls::BallDiameter, SMESH::Controls::MultiConnection2D, SMESH::Controls::MultiConnection, SMESH::Controls::AspectRatio3D, SMESH::Controls::AspectRatio, SMESH::Controls::MaxElementLength3D, SMESH::Controls::MaxElementLength2D, and SMESH::Controls::Volume.
References SMDS_Mesh::FindElement(), GetPoints(), myCurrElement, myMesh, and Round().
|
virtual |
Return true if a value can be computed for a given element.
Some NumericalFunctor's are meaningful for elements of a certain geometry only.
Reimplemented in SMESH::Controls::Length2D, SMESH::Controls::Skew, SMESH::Controls::Taper, SMESH::Controls::Warping, SMESH::Controls::AspectRatio3D, and SMESH::Controls::AspectRatio.
References GetType(), and SMDS_MeshElement::GetType().
bool NumericalFunctor::IsApplicable | ( | long | theElementId | ) | const |
References SMDS_Mesh::FindElement(), and myMesh.
Referenced by SMESH::Controls::AspectRatio::IsApplicable(), SMESH::Controls::AspectRatio3D::IsApplicable(), SMESH::Controls::Warping::IsApplicable(), SMESH::Controls::Taper::IsApplicable(), SMESH::Controls::Skew::IsApplicable(), and SMESH::Controls::Length2D::IsApplicable().
double NumericalFunctor::Round | ( | const double & | value | ) |
References myPrecision, and myPrecisionValue.
Referenced by SMESH::Controls::Deflection2D::GetValue(), GetValue(), SMESH::Controls::AspectRatio::GetValue(), and SMESH::Controls::AspectRatio3D::GetValue().
|
virtual |
Implements SMESH::Controls::Functor.
Reimplemented in SMESH::Controls::Deflection2D.
References myMesh.
Referenced by SMESH::Controls::Deflection2D::SetMesh(), and SMESH::Controls::CoincidentNodes::SetTolerance().
void NumericalFunctor::SetPrecision | ( | const long | thePrecision | ) |
References myPrecision, and myPrecisionValue.
Referenced by SMESH_ActorDef::SetControlMode().
|
protected |
Referenced by GetValue(), SMESH::Controls::AspectRatio::GetValue(), and SMESH::Controls::AspectRatio3D::GetValue().
|
protected |
Referenced by SMESH::Controls::BadOrientedVolume::BadOrientedVolume(), SMESH::Controls::CoincidentElements::CoincidentElements(), SMESH::Controls::FreeBorders::FreeBorders(), SMESH::Controls::FreeEdges::FreeEdges(), SMESH::Controls::Deflection2D::GetValue(), GetValue(), SMESH::Controls::Volume::GetValue(), SMESH::Controls::MaxElementLength3D::GetValue(), SMESH::Controls::AspectRatio::GetValue(), SMESH::Controls::AspectRatio3D::GetValue(), SMESH::Controls::MultiConnection::GetValue(), SMESH::Controls::MultiConnection2D::GetValue(), SMESH::Controls::BallDiameter::GetValue(), SMESH::Controls::NodeConnectivityNumber::GetValue(), SMESH::Controls::ScaledJacobian::GetValue(), SMESH::Controls::MultiConnection2D::GetValues(), SMESH::Controls::Length2D::GetValues(), IsApplicable(), SMESH::Controls::CoincidentElements::IsSatisfy(), SMESH::Controls::FreeBorders::IsSatisfy(), SMESH::Controls::BadOrientedVolume::IsSatisfy(), SMESH::Controls::BareBorderVolume::IsSatisfy(), SMESH::Controls::BareBorderFace::IsSatisfy(), SMESH::Controls::OverConstrainedVolume::IsSatisfy(), SMESH::Controls::OverConstrainedFace::IsSatisfy(), SMESH::Controls::FreeEdges::IsSatisfy(), SetMesh(), SMESH::Controls::CoincidentElements::SetMesh(), SMESH::Controls::FreeBorders::SetMesh(), SMESH::Controls::BadOrientedVolume::SetMesh(), and SMESH::Controls::FreeEdges::SetMesh().
|
protected |
|
protected |
Referenced by Round(), and SetPrecision().