X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_ViscousLayers2D.cxx;h=f759c4ba08470ebbb0680321be638682213de6f1;hb=e15a3a87cc738a5e3da00b3e09e7c8e17d733dc7;hp=2de6e474c556a93f01fa94c5d496232c637a5a60;hpb=a1920ff31054e2c882bd94d4f3c04abe53980ce0;p=modules%2Fsmesh.git diff --git a/src/StdMeshers/StdMeshers_ViscousLayers2D.cxx b/src/StdMeshers/StdMeshers_ViscousLayers2D.cxx index 2de6e474c..f759c4ba0 100644 --- a/src/StdMeshers/StdMeshers_ViscousLayers2D.cxx +++ b/src/StdMeshers/StdMeshers_ViscousLayers2D.cxx @@ -110,7 +110,7 @@ namespace VISCOUS_2D // Proxy sub-mesh of an EDGE. It contains nodes in _uvPtStructVec. struct _EdgeSubMesh : public SMESH_ProxyMesh::SubMesh { - _EdgeSubMesh(int index=0): SubMesh(index) {} + _EdgeSubMesh(const SMDS_Mesh* mesh, int index=0): SubMesh(mesh,index) {} //virtual int NbElements() const { return _elements.size()+1; } virtual int NbNodes() const { return Max( 0, _uvPtStructVec.size()-2 ); } void SetUVPtStructVec(UVPtStructVec& vec) { _uvPtStructVec.swap( vec ); } @@ -118,7 +118,7 @@ namespace VISCOUS_2D }; _ProxyMeshOfFace(const SMESH_Mesh& mesh): SMESH_ProxyMesh(mesh) {} _EdgeSubMesh* GetEdgeSubMesh(int ID) { return (_EdgeSubMesh*) getProxySubMesh(ID); } - virtual SubMesh* newSubmesh(int index=0) const { return new _EdgeSubMesh(index); } + virtual SubMesh* newSubmesh(int index=0) const { return new _EdgeSubMesh( GetMeshDS(), index); } }; //-------------------------------------------------------------------------------- /*! @@ -176,7 +176,7 @@ namespace VISCOUS_2D */ struct _Segment { - const gp_XY* _uv[2]; // poiter to _LayerEdge::_uvIn + const gp_XY* _uv[2]; // pointer to _LayerEdge::_uvIn int _indexInLine; // position in _PolyLine _Segment() {} @@ -501,8 +501,8 @@ namespace VISCOUS_2D //================================================================================ // StdMeshers_ViscousLayers hypothesis // -StdMeshers_ViscousLayers2D::StdMeshers_ViscousLayers2D(int hypId, int studyId, SMESH_Gen* gen) - :StdMeshers_ViscousLayers(hypId, studyId, gen) +StdMeshers_ViscousLayers2D::StdMeshers_ViscousLayers2D(int hypId, SMESH_Gen* gen) + :StdMeshers_ViscousLayers(hypId, gen) { _name = StdMeshers_ViscousLayers2D::GetHypType(); _param_algo_dim = -2; // auxiliary hyp used by 2D algos @@ -585,7 +585,7 @@ StdMeshers_ViscousLayers2D::CheckHypothesis(SMESH_Mesh& VISCOUS_2D::_ViscousBuilder2D builder( theMesh, face, hyps, hypShapes ); builder._faceSideVec = StdMeshers_FaceSide::GetFaceWires( face, theMesh, true, error, - SMESH_ProxyMesh::Ptr(), + NULL, SMESH_ProxyMesh::Ptr(), /*theCheckVertexNodes=*/false); if ( error->IsOK() && !builder.findEdgesWithLayers()) { @@ -600,7 +600,7 @@ StdMeshers_ViscousLayers2D::CheckHypothesis(SMESH_Mesh& // -------------------------------------------------------------------------------- void StdMeshers_ViscousLayers2D::RestoreListeners() const { - StudyContextStruct* sc = _gen->GetStudyContext( _studyId ); + StudyContextStruct* sc = _gen->GetStudyContext(); std::map < int, SMESH_Mesh * >::iterator i_smesh = sc->mapMesh.begin(); for ( ; i_smesh != sc->mapMesh.end(); ++i_smesh ) { @@ -686,7 +686,7 @@ bool _ViscousBuilder2D::error(const string& text ) SMESH_ProxyMesh::Ptr _ViscousBuilder2D::Compute() { - _faceSideVec = StdMeshers_FaceSide::GetFaceWires( _face, *_mesh, true, _error); + _faceSideVec = StdMeshers_FaceSide::GetFaceWires( _face, *_mesh, true, _error, &_helper ); if ( !_error->IsOK() ) return _proxyMesh; @@ -1263,7 +1263,7 @@ void _ViscousBuilder2D::adjustCommonEdge( _PolyLine& LL, _PolyLine& LR ) if ( isR ) LR._lEdges.erase( LR._lEdges.begin()+1, eIt ); else - LL._lEdges.erase( eIt, --LL._lEdges.end() ); + LL._lEdges.erase( eIt+1, --LL._lEdges.end() ); // eIt = isR ? L._lEdges.begin()+1 : L._lEdges.end()-2; // for ( size_t i = 1; i < iLE; ++i, eIt += dIt ) // eIt->_isBlocked = true; @@ -1318,7 +1318,7 @@ void _ViscousBuilder2D::setLayerEdgeData( _LayerEdge& lEdge, faceProj->Perform( p ); if ( !faceProj->IsDone() || faceProj->NbPoints() < 1 ) return setLayerEdgeData( lEdge, u, pcurve, curve, p, reverse, NULL ); - Quantity_Parameter U,V; + Standard_Real U,V; faceProj->LowerDistanceParameters(U,V); lEdge._normal2D.SetCoord( U - uv.X(), V - uv.Y() ); lEdge._normal2D.Normalize(); @@ -1998,7 +1998,7 @@ bool _ViscousBuilder2D::shrink() throw SALOME_Exception(SMESH_Comment("ViscousBuilder2D: not SMDS_TOP_EDGE node position: ") << oldNode->GetPosition()->GetTypeOfPosition() << " of node " << oldNode->GetID()); - SMDS_EdgePosition* pos = static_cast( oldNode->GetPosition() ); + SMDS_EdgePositionPtr pos = oldNode->GetPosition(); pos->SetUParameter( nodeDataVec[iP].param ); gp_Pnt newP = curve.Value( nodeDataVec[iP].param ); @@ -2187,7 +2187,7 @@ bool _ViscousBuilder2D::refine() vector< double > segLen( L._lEdges.size() ); segLen[0] = 0.0; - // check if length modification is usefull: look for _LayerEdge's + // check if length modification is useful: look for _LayerEdge's // with length limited due to collisions bool lenLimited = false; for ( size_t iLE = 1; ( iLE < L._lEdges.size()-1 && !lenLimited ); ++iLE )