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) |
| void | prepare (_SolidData &data) |
| Prepare for 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) |
| set _normal of _leOnV[is2nd] to be normal to the EDGE More... | |
| _LayerEdge * | getLEdgeOnV (bool is2nd) |
| bool | isAnalytic () const |
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 |
| static _EdgesOnShape & | eos |
| static _EdgesOnShape SMESH_MesherHelper & | helper |
Smoother of _LayerEdge's on EDGE.
| VISCOUS_3D::_Smoother1D::_Smoother1D | ( | Handle(Geom_Curve) | curveForSmooth, |
| _EdgesOnShape & | eos | ||
| ) |
| _LayerEdge* VISCOUS_3D::_Smoother1D::getLEdgeOnV | ( | bool | is2nd | ) |
References VISCOUS_3D::_LayerEdge::_2neibors, and VISCOUS_3D::_2NearEdges::_edges.
Referenced by prepare(), smoothAnalyticEdge(), and smoothComplexEdge().
| gp_XYZ _Smoother1D::getNormalNormal | ( | const gp_XYZ & | normal, |
| const gp_XYZ & | edgeDir | ||
| ) |
set _normal of _leOnV[is2nd] to be normal to the EDGE
Referenced by prepare(), and smoothComplexEdge().
| VISCOUS_3D::_Smoother1D::Handle | ( | Geom_Curve | ) |
Referenced by smoothAnalyticEdge().
|
static |
| bool VISCOUS_3D::_Smoother1D::isAnalytic | ( | ) | const |
Referenced by prepare(), and smoothAnalyticEdge().
| bool VISCOUS_3D::_Smoother1D::Perform | ( | _SolidData & | data, |
| Handle(ShapeAnalysis_Surface)& | surface, | ||
| const TopoDS_Face & | F, | ||
| SMESH_MesherHelper & | helper | ||
| ) |
Referenced by VISCOUS_3D::_ViscousBuilder::smoothAndCheck().
| void _Smoother1D::prepare | ( | _SolidData & | data | ) |
Prepare for smoothing.
References VISCOUS_3D::_LayerEdge::_2neibors, _curveLen, _edgeDir, VISCOUS_3D::_2NearEdges::_edges, VISCOUS_3D::_EdgesOnShape::_edges, _eos, _iSeg, VISCOUS_3D::_LayerEdge::_len, VISCOUS_3D::_LayerEdge::_lenFactor, _leOnV, _leParams, VISCOUS_3D::_LayerEdge::_nodes, VISCOUS_3D::_LayerEdge::_normal, _offPoints, VISCOUS_3D::_EdgesOnShape::_shape, Edge, SMESH_Algo::EdgeLength(), VISCOUS_3D::getEdgeDir(), VISCOUS_3D::_SolidData::GetHelper(), getLEdgeOnV(), getNormalNormal(), isAnalytic(), and VISCOUS_3D::_SolidData::SortOnEdge().
| bool _Smoother1D::smoothAnalyticEdge | ( | _SolidData & | data, |
| Handle(ShapeAnalysis_Surface)& | surface, | ||
| const TopoDS_Face & | F, | ||
| SMESH_MesherHelper & | helper | ||
| ) |
smooth _LayerEdge's on a staight EDGE or circular EDGE
References VISCOUS_3D::_EdgesOnShape::_edges, _eos, _leParams, VISCOUS_3D::_LayerEdge::_nodes, VISCOUS_3D::_LayerEdge::_pos, VISCOUS_3D::_LayerEdge::BLOCKED, SMESH::DownCast(), dumpMove, getLEdgeOnV(), SMESH_MesherHelper::GetOtherParam(), SMESH_MesherHelper::GetPeriodicIndex(), SMDS_MeshNode::GetPosition(), VISCOUS_3D::_SolidData::GetShapeEdges(), Handle(), VISCOUS_3D::_LayerEdge::Is(), isAnalytic(), VISCOUS_3D::_LayerEdge::LastUV(), VISCOUS_3D::_LayerEdge::NORMAL_UPDATED, SMDS_FacePosition::SetUParameter(), SMDS_FacePosition::SetVParameter(), SMDS_MeshNode::setXYZ(), and SMESH_TNodeXYZ::SquareDistance().
| bool _Smoother1D::smoothComplexEdge | ( | _SolidData & | data, |
| Handle(ShapeAnalysis_Surface)& | surface, | ||
| const TopoDS_Face & | F, | ||
| SMESH_MesherHelper & | helper | ||
| ) |
smooth _LayerEdge's on a an EDGE
References _edgeDir, VISCOUS_3D::_EdgesOnShape::_edges, _eos, _iSeg, VISCOUS_3D::_LayerEdge::_len, VISCOUS_3D::_LayerEdge::_lenFactor, _leOnV, _leParams, VISCOUS_3D::_LayerEdge::_normal, _offPoints, Abs(), VISCOUS_3D::_LayerEdge::BLOCKED, debugMsg, dumpMove, getLEdgeOnV(), getNormalNormal(), VISCOUS_3D::_LayerEdge::Is(), VISCOUS_3D::_LayerEdge::NORMAL_UPDATED, and SMDS_MeshNode::setXYZ().
| double VISCOUS_3D::_Smoother1D::_curveLen |
Referenced by prepare().
| gp_XYZ VISCOUS_3D::_Smoother1D::_edgeDir[2] |
Referenced by prepare(), and smoothComplexEdge().
| _EdgesOnShape& VISCOUS_3D::_Smoother1D::_eos |
Referenced by prepare(), smoothAnalyticEdge(), and smoothComplexEdge().
| size_t VISCOUS_3D::_Smoother1D::_iSeg[2] |
Referenced by prepare(), and smoothComplexEdge().
| _LayerEdge VISCOUS_3D::_Smoother1D::_leOnV[2] |
Referenced by prepare(), and smoothComplexEdge().
| vector< double > VISCOUS_3D::_Smoother1D::_leParams |
Referenced by prepare(), smoothAnalyticEdge(), and smoothComplexEdge().
| vector< OffPnt > VISCOUS_3D::_Smoother1D::_offPoints |
Referenced by prepare(), and smoothComplexEdge().
| _EdgesOnShape& VISCOUS_3D::_Smoother1D::eos |
| _EdgesOnShape SMESH_MesherHelper& VISCOUS_3D::_Smoother1D::helper |