Convex FACE whose radius of curvature is less than the thickness of layers. More...
Public Member Functions | |
double | GetMaxCurvature (_SolidData &data, _EdgesOnShape &eof, BRepLProp_SLProps &surfProp, SMESH_MesherHelper &helper) |
Return max curvature of a FACE. More... | |
bool | GetCenterOfCurvature (_LayerEdge *ledge, BRepLProp_SLProps &surfProp, SMESH_MesherHelper &helper, gp_Pnt ¢er) const |
Finds a center of curvature of a surface at a _LayerEdge. More... | |
bool | CheckPrisms () const |
Check that prisms are not distorted. More... | |
Data Fields | |
TopoDS_Face | _face |
vector< _LayerEdge * > | _simplexTestEdges |
map< TGeomID, _EdgesOnShape * > | _subIdToEOS |
bool | _isTooCurved |
bool | _normalsFixed |
bool | _normalsFixedOnBorders |
Convex FACE whose radius of curvature is less than the thickness of layers.
It is used to detect distortion of prisms based on a convex FACE and to update normals to enable further increasing the thickness
bool _ConvexFace::CheckPrisms | ( | ) | const |
Check that prisms are not distorted.
References SMESH_TNodeXYZ::_node, VISCOUS_3D::_LayerEdge::_nodes, VISCOUS_3D::_LayerEdge::_simplices, debugMsg, and SMDS_MeshElement::GetID().
Referenced by VISCOUS_3D::_ViscousBuilder::updateNormalsOfConvexFaces().
bool _ConvexFace::GetCenterOfCurvature | ( | _LayerEdge * | ledge, |
BRepLProp_SLProps & | surfProp, | ||
SMESH_MesherHelper & | helper, | ||
gp_Pnt & | center | ||
) | const |
Finds a center of curvature of a surface at a _LayerEdge.
References VISCOUS_3D::_LayerEdge::_nodes, and SMESH_MesherHelper::GetNodeUV().
Referenced by VISCOUS_3D::_ViscousBuilder::updateNormalsOfConvexFaces().
double _ConvexFace::GetMaxCurvature | ( | _SolidData & | data, |
_EdgesOnShape & | eof, | ||
BRepLProp_SLProps & | surfProp, | ||
SMESH_MesherHelper & | helper | ||
) |
Return max curvature of a FACE.
References VISCOUS_3D::_EdgesOnShape::_edges, VISCOUS_3D::_EdgesOnShape::_hyp, VISCOUS_3D::_EdgesOnShape::_shape, VISCOUS_3D::_EdgesOnShape::_subMesh, Face, SMESH_subMesh::getDependsOnIterator(), SMESH_subMesh::GetId(), SMESH_MesherHelper::GetNodeUV(), VISCOUS_3D::_SolidData::GetShapeEdges(), VISCOUS_3D::AverageHyp::GetTotalThickness(), and VISCOUS_3D::theThickToIntersection.
Referenced by VISCOUS_3D::_ViscousBuilder::limitStepSizeByCurvature().
TopoDS_Face VISCOUS_3D::_ConvexFace::_face |
bool VISCOUS_3D::_ConvexFace::_isTooCurved |
bool VISCOUS_3D::_ConvexFace::_normalsFixed |
bool VISCOUS_3D::_ConvexFace::_normalsFixedOnBorders |
vector< _LayerEdge* > VISCOUS_3D::_ConvexFace::_simplexTestEdges |
Referenced by VISCOUS_3D::_ViscousBuilder::limitStepSizeByCurvature().
map< TGeomID, _EdgesOnShape* > VISCOUS_3D::_ConvexFace::_subIdToEOS |