Version: 9.16.0
VISCOUS_3D::_SolidData Struct Reference

Data of a SOLID. More...

Public Types

typedef const StdMeshers_ViscousLayersTHyp
 

Public Member Functions

 _SolidData (const TopoDS_Shape &s=TopoDS_Shape(), _MeshOfSolid *m=0)
 
 ~_SolidData ()
 
void SortOnEdge (const TopoDS_Edge &E, vector< _LayerEdge * > &edges)
 Sort _LayerEdge's by a parameter on a given EDGE. More...
 
void Sort2NeiborsOnEdge (vector< _LayerEdge * > &edges)
 Set _2neibors according to the order of _LayerEdge on EDGE. More...
 
_ConvexFaceGetConvexFace (const TGeomID faceID)
 
_EdgesOnShapeGetShapeEdges (const TGeomID shapeID)
 Return _EdgesOnShape* corresponding to the shape. More...
 
_EdgesOnShapeGetShapeEdges (const TopoDS_Shape &shape)
 Return _EdgesOnShape* corresponding to the shape. More...
 
_EdgesOnShapeGetShapeEdges (const _LayerEdge *edge)
 
SMESH_MesherHelperGetHelper () const
 
void UnmarkEdges (int flag=_LayerEdge::MARKED)
 
void AddShapesToSmooth (const set< _EdgesOnShape * > &shape, const set< _EdgesOnShape * > *edgesNoAnaSmooth=0)
 Add faces for smoothing. More...
 
void PrepareEdgesToSmoothOnFace (_EdgesOnShape *eof, bool substituteSrcNodes)
 Prepare data of the _LayerEdge for smoothing on FACE. More...
 

Data Fields

TopoDS_Shape _solid
 
TopTools_MapOfShape _before
 
TGeomID _index
 
_MeshOfSolid_proxyMesh
 
bool _done
 
list< THyp_hyps
 
list< TopoDS_Shape > _hypShapes
 
map< TGeomID, THyp_face2hyp
 
set< TGeomID_reversedFaceIds
 
set< TGeomID_ignoreFaceIds
 
double _stepSize
 
double _stepSizeCoeff
 
double _geomSize
 
const SMDS_MeshNode_stepSizeNodes [2]
 
TNode2Edge _n2eMap
 
map< TGeomID, TNode2Edge * > _s2neMap
 
vector< _EdgesOnShape_edgesOnShape
 
map< TGeomID, TopoDS_Shape > _shrinkShape2Shape
 
map< TGeomID, _ConvexFace_convexFaces
 
set< TGeomID_noShrinkShapes
 
int _nbShapesToSmooth
 
vector< _CollisionEdges_collisionEdges
 
set< TGeomID_concaveFaces
 
double _maxThickness
 
double _minThickness
 
double _epsilon
 
SMESH_MesherHelper_helper
 

Detailed Description

Data of a SOLID.

Member Typedef Documentation

◆ THyp

Constructor & Destructor Documentation

◆ _SolidData()

VISCOUS_3D::_SolidData::_SolidData ( const TopoDS_Shape &  s = TopoDS_Shape(),
_MeshOfSolid m = 0 
)

◆ ~_SolidData()

VISCOUS_3D::_SolidData::~_SolidData ( )

References _helper.

Member Function Documentation

◆ AddShapesToSmooth()

void _SolidData::AddShapesToSmooth ( const set< _EdgesOnShape * > &  shape,
const set< _EdgesOnShape * > *  edgesNoAnaSmooth = 0 
)

◆ GetConvexFace()

◆ GetHelper()

◆ GetShapeEdges() [1/3]

_EdgesOnShape * VISCOUS_3D::_SolidData::GetShapeEdges ( const _LayerEdge edge)

◆ GetShapeEdges() [2/3]

◆ GetShapeEdges() [3/3]

_EdgesOnShape * _SolidData::GetShapeEdges ( const TopoDS_Shape &  shape)

Return _EdgesOnShape* corresponding to the shape.

References _proxyMesh, SMESH_ProxyMesh::GetMesh(), SMESH_Mesh::GetMeshDS(), GetShapeEdges(), and SMESHDS_Mesh::ShapeToIndex().

◆ PrepareEdgesToSmoothOnFace()

void _SolidData::PrepareEdgesToSmoothOnFace ( _EdgesOnShape eof,
bool  substituteSrcNodes 
)

Prepare data of the _LayerEdge for smoothing on FACE.

References _concaveFaces, VISCOUS_3D::_LayerEdge::_cosin, VISCOUS_3D::_LayerEdge::_curvature, VISCOUS_3D::_EdgesOnShape::_edgeForOffset, VISCOUS_3D::_EdgesOnShape::_edges, VISCOUS_3D::_EdgesOnShape::_eosConcaVer, VISCOUS_3D::_Curvature::_h2lenRatio, VISCOUS_3D::_Curvature::_k, VISCOUS_3D::_EdgesOnShape::_mapper2D, _n2eMap, VISCOUS_3D::_LayerEdge::_neibors, VISCOUS_3D::_Simplex::_nNext, VISCOUS_3D::_LayerEdge::_nodes, VISCOUS_3D::_LayerEdge::_normal, VISCOUS_3D::_Simplex::_nPrev, VISCOUS_3D::_LayerEdge::_pos, _proxyMesh, VISCOUS_3D::_Curvature::_r, VISCOUS_3D::_EdgesOnShape::_shape, VISCOUS_3D::_EdgesOnShape::_shapeID, VISCOUS_3D::_LayerEdge::_simplices, VISCOUS_3D::_EdgesOnShape::_subMesh, VISCOUS_3D::_EdgesOnShape::_sWOL, VISCOUS_3D::_Curvature::_uv, VISCOUS_3D::_LayerEdge::BaseShapeDim(), VISCOUS_3D::_LayerEdge::ChooseSmooFunction(), VISCOUS_3D::_LayerEdge::DIFFICULT, Face, VISCOUS_3D::_EdgesOnShape::GetData(), SMESHDS_SubMesh::GetElements(), SMESH_ProxyMesh::GetMesh(), SMESH_MesherHelper::GetMeshDS(), SMESH_MesherHelper::GetNodeUV(), SMESH_Block::GetOrderedEdges(), GetShapeEdges(), SMESH_subMesh::GetSubMeshDS(), VISCOUS_3D::_LayerEdge::Is(), VISCOUS_3D::isConcave(), SMESH_MesherHelper::IsCornerOfStructure(), SMESH_MesherHelper::IthVertex(), SMESH_MesherHelper::LoadNodeColumns(), VISCOUS_3D::_LayerEdge::NEAR_BOUNDARY, VISCOUS_3D::_Curvature::New(), VISCOUS_3D::_Factory::NewCurvature(), VISCOUS_3D::_LayerEdge::RISKY_SWOL, VISCOUS_3D::_LayerEdge::Set(), VISCOUS_3D::_EdgesOnShape::ShapeType(), VISCOUS_3D::_LayerEdge::SMOOTHED_C1, VISCOUS_3D::_Simplex::SortSimplices(), VISCOUS_3D::_LayerEdge::TO_SMOOTH, and SMESH_Algo::VertexNode().

Referenced by AddShapesToSmooth(), and VISCOUS_3D::_ViscousBuilder::findShapesToSmooth().

◆ Sort2NeiborsOnEdge()

void _SolidData::Sort2NeiborsOnEdge ( vector< _LayerEdge * > &  edges)

Set _2neibors according to the order of _LayerEdge on EDGE.

References VISCOUS_3D::_2NearEdges::tgtNode().

Referenced by SortOnEdge().

◆ SortOnEdge()

void _SolidData::SortOnEdge ( const TopoDS_Edge &  E,
vector< _LayerEdge * > &  edges 
)

◆ UnmarkEdges()

void VISCOUS_3D::_SolidData::UnmarkEdges ( int  flag = _LayerEdge::MARKED)

Field Documentation

◆ _before

TopTools_MapOfShape VISCOUS_3D::_SolidData::_before

◆ _collisionEdges

vector< _CollisionEdges > VISCOUS_3D::_SolidData::_collisionEdges

◆ _concaveFaces

set< TGeomID > VISCOUS_3D::_SolidData::_concaveFaces

◆ _convexFaces

◆ _done

bool VISCOUS_3D::_SolidData::_done

◆ _edgesOnShape

◆ _epsilon

◆ _face2hyp

map< TGeomID, THyp > VISCOUS_3D::_SolidData::_face2hyp

◆ _geomSize

double VISCOUS_3D::_SolidData::_geomSize

◆ _helper

◆ _hyps

◆ _hypShapes

list< TopoDS_Shape > VISCOUS_3D::_SolidData::_hypShapes

◆ _ignoreFaceIds

◆ _index

◆ _maxThickness

double VISCOUS_3D::_SolidData::_maxThickness

◆ _minThickness

double VISCOUS_3D::_SolidData::_minThickness

◆ _n2eMap

◆ _nbShapesToSmooth

◆ _noShrinkShapes

◆ _proxyMesh

◆ _reversedFaceIds

set< TGeomID > VISCOUS_3D::_SolidData::_reversedFaceIds

◆ _s2neMap

map< TGeomID, TNode2Edge* > VISCOUS_3D::_SolidData::_s2neMap

◆ _shrinkShape2Shape

◆ _solid

◆ _stepSize

◆ _stepSizeCoeff

double VISCOUS_3D::_SolidData::_stepSizeCoeff

◆ _stepSizeNodes