Classes | |
struct | _2NearEdges |
struct | _CentralCurveOnEdge |
Container of centers of curvature at nodes on an EDGE bounding _ConvexFace. More... | |
struct | _ConvexFace |
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. More... | |
struct | _Curvature |
struct | _EdgesOnShape |
_LayerEdge's on a shape and other shape data More... | |
struct | _halfPlane |
struct | _LayerEdge |
Edge normal to surface, connecting a node on solid surface (_nodes[0]) and a node of the most internal layer (_nodes.back()) More... | |
struct | _LayerEdgeCmp |
struct | _MeshOfSolid |
SMESH_ProxyMesh computed by _ViscousBuilder for a SOLID. It is stored in a SMESH_subMesh of the SOLID as SMESH_subMeshEventListenerData. More... | |
struct | _NodeCoordHelper |
Retriever of node coordinates either directly or from a surface by node UV. More... | |
class | _Shrinker1D |
Shrinker of nodes on the EDGE. More... | |
class | _ShrinkShapeListener |
Listener of events of 3D sub-meshes computed with viscous layers. It is used to clear an inferior dim sub-meshes modified by viscous layers. More... | |
struct | _Simplex |
Simplex (triangle or tetrahedron) based on 1 (tria) or 2 (tet) nodes of _LayerEdge and 2 nodes of the mesh surface beening smoothed. The class is used to check validity of face or volumes around a smoothed node; it stores only 2 nodes as the other nodes are stored by _LayerEdge. More... | |
struct | _SmoothNode |
Data of node on a shrinked FACE. More... | |
struct | _SolidData |
Data of a SOLID. More... | |
struct | _TmpMeshFace |
Class of temporary mesh face. We can't use SMDS_FaceOfNodes since it's impossible to set it's ID which is needed because SMESH_ElementSearcher internaly uses set of elements sorted by ID. More... | |
struct | _TmpMeshFaceOnEdge |
Class of temporary mesh face storing _LayerEdge it's based on. More... | |
class | _ViscousBuilder |
Builder of viscous layers. More... | |
class | _ViscousListener |
Listener of events of 3D sub-meshes computed with viscous layers. It is used to store data computed by _ViscousBuilder for a sub-mesh and to delete the data as soon as it has been used. More... | |
struct | AverageHyp |
Layers parameters got by averaging several hypotheses. More... | |
struct | PyDump |
Typedefs | |
typedef int | TGeomID |
typedef map< const SMDS_MeshNode *, _LayerEdge *, TIDCompare > | TNode2Edge |
Enumerations | |
enum | UIndex { U_TGT = 1 , U_SRC , LEN_TGT } |
Functions | |
bool | getConcaveVertices (const TopoDS_Face &F, SMESH_MesherHelper &helper, set< TGeomID > *vertices=0) |
Finds concave VERTEXes of a FACE. More... | |
bool | getDistFromEdge (const SMDS_MeshElement *face, const SMDS_MeshNode *nodeOnEdge, double &faceSize) |
Computes mimimal distance of face in-FACE nodes from an EDGE. More... | |
gp_XYZ | getEdgeDir (const TopoDS_Edge &E, const SMDS_MeshNode *atNode, SMESH_MesherHelper &helper) |
gp_XYZ | getEdgeDir (const TopoDS_Edge &E, const TopoDS_Vertex &fromV) |
gp_XYZ | getFaceDir (const TopoDS_Face &F, const TopoDS_Edge &fromE, const SMDS_MeshNode *node, SMESH_MesherHelper &helper, bool &ok) |
gp_XYZ | getFaceDir (const TopoDS_Face &F, const TopoDS_Vertex &fromV, const SMDS_MeshNode *node, SMESH_MesherHelper &helper, bool &ok, double *cosin=0) |
bool | getRovolutionAxis (const Adaptor3d_Surface &surface, gp_Dir &axis) |
Return direction of axis or revolution of a surface. More... | |
bool | isConcave (const TopoDS_Face &F, SMESH_MesherHelper &helper, set< TGeomID > *vertices=0) |
Returns true if a FACE is bound by a concave EDGE. More... | |
bool | needSmoothing (double cosin, double tgtThick, double elemSize) |
void | ToClearSubWithMain (SMESH_subMesh *sub, const TopoDS_Shape &main) |
sets a sub-mesh event listener to clear sub-meshes of sub-shapes of the main shape when sub-mesh of the main shape is cleared, for example to clear sub-meshes of FACEs when sub-mesh of a SOLID is cleared More... | |
Variables | |
const double | theMinSmoothCosin = 0.1 |
const double | theSmoothThickToElemSizeRatio = 0.3 |
const double | theThickToIntersection = 1.5 |
typedef int VISCOUS_3D::TGeomID |
typedef map< const SMDS_MeshNode*, _LayerEdge*, TIDCompare > VISCOUS_3D::TNode2Edge |
enum VISCOUS_3D::UIndex |
bool VISCOUS_3D::getConcaveVertices | ( | const TopoDS_Face & | F, |
SMESH_MesherHelper & | helper, | ||
set< TGeomID > * | vertices = 0 |
||
) |
Finds concave VERTEXes of a FACE.
References SMESH_MesherHelper::GetAngle(), StdMeshers_FaceSide::GetFaceWires(), SMESH_MesherHelper::GetMesh(), SMESH_MesherHelper::GetMeshDS(), SMESH_Algo::isDegenerated(), and SMESHDS_Mesh::ShapeToIndex().
Referenced by isConcave().
bool VISCOUS_3D::getDistFromEdge | ( | const SMDS_MeshElement * | face, |
const SMDS_MeshNode * | nodeOnEdge, | ||
double & | faceSize | ||
) |
Computes mimimal distance of face in-FACE nodes from an EDGE.
[in] | face | - the mesh face to treat |
[in] | nodeOnEdge | - a node on the EDGE |
[out] | faceSize | - the computed distance |
References SMDS_MeshElement::GetID(), SMDS_MeshElement::GetNode(), and SMESH_MesherHelper::WrapIndex().
gp_XYZ VISCOUS_3D::getEdgeDir | ( | const TopoDS_Edge & | E, |
const SMDS_MeshNode * | atNode, | ||
SMESH_MesherHelper & | helper | ||
) |
References SMESH_MesherHelper::GetNodeU().
gp_XYZ VISCOUS_3D::getEdgeDir | ( | const TopoDS_Edge & | E, |
const TopoDS_Vertex & | fromV | ||
) |
Referenced by getFaceDir(), and VISCOUS_3D::_LayerEdge::SetDataByNeighbors().
gp_XYZ VISCOUS_3D::getFaceDir | ( | const TopoDS_Face & | F, |
const TopoDS_Edge & | fromE, | ||
const SMDS_MeshNode * | node, | ||
SMESH_MesherHelper & | helper, | ||
bool & | ok | ||
) |
gp_XYZ VISCOUS_3D::getFaceDir | ( | const TopoDS_Face & | F, |
const TopoDS_Vertex & | fromV, | ||
const SMDS_MeshNode * | node, | ||
SMESH_MesherHelper & | helper, | ||
bool & | ok, | ||
double * | cosin = 0 |
||
) |
References SMESH_MesherHelper::GetAngle(), getEdgeDir(), getFaceDir(), and SMESH_Algo::isDegenerated().
Referenced by getFaceDir().
bool VISCOUS_3D::getRovolutionAxis | ( | const Adaptor3d_Surface & | surface, |
gp_Dir & | axis | ||
) |
Return direction of axis or revolution of a surface.
References getRovolutionAxis().
Referenced by getRovolutionAxis().
bool VISCOUS_3D::isConcave | ( | const TopoDS_Face & | F, |
SMESH_MesherHelper & | helper, | ||
set< TGeomID > * | vertices = 0 |
||
) |
Returns true if a FACE is bound by a concave EDGE.
References getConcaveVertices(), and SMESH_Algo::isDegenerated().
Referenced by VISCOUS_3D::_SolidData::PrepareEdgesToSmoothOnFace().
bool VISCOUS_3D::needSmoothing | ( | double | cosin, |
double | tgtThick, | ||
double | elemSize | ||
) |
References theSmoothThickToElemSizeRatio.
void VISCOUS_3D::ToClearSubWithMain | ( | SMESH_subMesh * | sub, |
const TopoDS_Shape & | main | ||
) |
sets a sub-mesh event listener to clear sub-meshes of sub-shapes of the main shape when sub-mesh of the main shape is cleared, for example to clear sub-meshes of FACEs when sub-mesh of a SOLID is cleared
References DraftVecUtils::find(), VISCOUS_3D::_ShrinkShapeListener::Get(), SMESH_subMesh::GetEventListenerData(), SMESH_subMesh::GetFather(), SMESH_Mesh::GetSubMesh(), SMESH_subMeshEventListenerData::MakeData(), SMESH_subMeshEventListenerData::mySubMeshes, and SMESH_subMesh::SetEventListener().
Referenced by StdMeshers_ViscousLayers2D::RestoreListeners().
const double VISCOUS_3D::theMinSmoothCosin = 0.1 |
const double VISCOUS_3D::theSmoothThickToElemSizeRatio = 0.3 |
Referenced by needSmoothing().
const double VISCOUS_3D::theThickToIntersection = 1.5 |