Version: 9.12.0
VISCOUS_3D::_Smoother1D Struct Reference

Smoother of _LayerEdge's on EDGE. More...

Data Structures

struct  OffPnt
 

Public Member Functions

 Handle (Geom_Curve) _anaCurve
 
 _Smoother1D (Handle(Geom_Curve) curveForSmooth, _EdgesOnShape &eos)
 
bool Perform (_SolidData &data, Handle(ShapeAnalysis_Surface)&surface, const TopoDS_Face &F, SMESH_MesherHelper &helper)
 Smooth edges on EDGE. More...
 
void prepare (_SolidData &data)
 Prepare for smoothing. More...
 
void findEdgesToSmooth ()
 Find edges to smooth. More...
 
bool isToSmooth (int iE)
 Check if iE-th _LayerEdge needs smoothing. More...
 
bool smoothAnalyticEdge (_SolidData &data, Handle(ShapeAnalysis_Surface)&surface, const TopoDS_Face &F, SMESH_MesherHelper &helper)
 smooth _LayerEdge's on a staight EDGE or circular EDGE More...
 
bool smoothComplexEdge (_SolidData &data, Handle(ShapeAnalysis_Surface)&surface, const TopoDS_Face &F, SMESH_MesherHelper &helper)
 smooth _LayerEdge's on a an EDGE More...
 
gp_XYZ getNormalNormal (const gp_XYZ &normal, const gp_XYZ &edgeDir)
 return _normal of _leOnV[is2nd] normal to the EDGE More...
 
_LayerEdgegetLEdgeOnV (bool is2nd)
 
bool isAnalytic () const
 
void offPointsToPython () const
 Writes a script creating a mesh composed of _offPoints. More...
 

Static Public Member Functions

static Handle (Geom_Curve) CurveForSmooth(const TopoDS_Edge &E
 

Data Fields

vector< OffPnt_offPoints
 
vector< double > _leParams
 
_LayerEdge _leOnV [2]
 
gp_XYZ _edgeDir [2]
 
size_t _iSeg [2]
 
_EdgesOnShape_eos
 
double _curveLen
 
std::pair< int, int > _eToSmooth [2]
 
static _EdgesOnShapeeos
 
static _EdgesOnShape SMESH_MesherHelperhelper
 

Detailed Description

Smoother of _LayerEdge's on EDGE.

Constructor & Destructor Documentation

◆ _Smoother1D()

VISCOUS_3D::_Smoother1D::_Smoother1D ( Handle(Geom_Curve)  curveForSmooth,
_EdgesOnShape eos 
)

Member Function Documentation

◆ findEdgesToSmooth()

void _Smoother1D::findEdgesToSmooth ( )

◆ getLEdgeOnV()

_LayerEdge* VISCOUS_3D::_Smoother1D::getLEdgeOnV ( bool  is2nd)

◆ getNormalNormal()

gp_XYZ _Smoother1D::getNormalNormal ( const gp_XYZ &  normal,
const gp_XYZ &  edgeDir 
)

return _normal of _leOnV[is2nd] normal to the EDGE

References VISCOUS_3D::_EdgesOnShape::_edges, and VISCOUS_3D::_LayerEdge::_normal.

◆ Handle() [1/2]

VISCOUS_3D::_Smoother1D::Handle ( Geom_Curve  )

◆ Handle() [2/2]

static VISCOUS_3D::_Smoother1D::Handle ( Geom_Curve  ) const &
static

◆ isAnalytic()

bool VISCOUS_3D::_Smoother1D::isAnalytic ( ) const

◆ isToSmooth()

◆ offPointsToPython()

void _Smoother1D::offPointsToPython ( ) const

Writes a script creating a mesh composed of _offPoints.

◆ Perform()

bool _Smoother1D::Perform ( _SolidData data,
Handle(ShapeAnalysis_Surface)&  surface,
const TopoDS_Face &  F,
SMESH_MesherHelper helper 
)

Smooth edges on EDGE.

Referenced by VISCOUS_3D::_ViscousBuilder::smoothAndCheck().

◆ prepare()

◆ smoothAnalyticEdge()

◆ smoothComplexEdge()

bool _Smoother1D::smoothComplexEdge ( _SolidData data,
Handle(ShapeAnalysis_Surface)&  surface,
const TopoDS_Face &  F,
SMESH_MesherHelper helper 
)

Field Documentation

◆ _curveLen

double VISCOUS_3D::_Smoother1D::_curveLen

◆ _edgeDir

gp_XYZ VISCOUS_3D::_Smoother1D::_edgeDir[2]

◆ _eos

_EdgesOnShape& VISCOUS_3D::_Smoother1D::_eos

◆ _eToSmooth

std::pair<int,int> VISCOUS_3D::_Smoother1D::_eToSmooth[2]

◆ _iSeg

size_t VISCOUS_3D::_Smoother1D::_iSeg[2]

◆ _leOnV

_LayerEdge VISCOUS_3D::_Smoother1D::_leOnV[2]

◆ _leParams

vector< double > VISCOUS_3D::_Smoother1D::_leParams

◆ _offPoints

vector< OffPnt > VISCOUS_3D::_Smoother1D::_offPoints

◆ eos

_EdgesOnShape& VISCOUS_3D::_Smoother1D::eos

◆ helper

_EdgesOnShape SMESH_MesherHelper& VISCOUS_3D::_Smoother1D::helper