Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Regression of SALOME_TESTS/Grids/smesh/2D_mesh_QuadranglePreference_01/B0
[modules/smesh.git]
/
src
/
StdMeshers
/
StdMeshers_Import_1D2D.cxx
diff --git
a/src/StdMeshers/StdMeshers_Import_1D2D.cxx
b/src/StdMeshers/StdMeshers_Import_1D2D.cxx
index 5acc4bdc5e0336ae14f871a626687b07b9b33c0f..e557bc60d6d549114405da755d186a0a3a8061f6 100644
(file)
--- a/
src/StdMeshers/StdMeshers_Import_1D2D.cxx
+++ b/
src/StdMeshers/StdMeshers_Import_1D2D.cxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-201
3
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-201
4
CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@
-6,7
+6,7
@@
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License
, or (at your option) any later version
.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
@@
-226,7
+226,7
@@
bool StdMeshers_Import_1D2D::Compute(SMESH_Mesh & theMesh, const TopoDS_Shape &
typedef SMDS_StdIterator< const SMDS_MeshNode*, SMDS_NodeIteratorPtr > iterator;
existingNodes.insert( iterator( eSM->GetNodes() ), iterator() );
}
typedef SMDS_StdIterator< const SMDS_MeshNode*, SMDS_NodeIteratorPtr > iterator;
existingNodes.insert( iterator( eSM->GetNodes() ), iterator() );
}
- }
+ }
}
// octree to find existing nodes
SMESH_OctreeNode existingNodeOcTr( existingNodes );
}
// octree to find existing nodes
SMESH_OctreeNode existingNodeOcTr( existingNodes );
@@
-280,7
+280,8
@@
bool StdMeshers_Import_1D2D::Compute(SMESH_Mesh & theMesh, const TopoDS_Shape &
{
// find a pre-existing node
dist2foundNodes.clear();
{
// find a pre-existing node
dist2foundNodes.clear();
- if ( existingNodeOcTr.NodesAround( SMESH_TNodeXYZ( *node ), dist2foundNodes, groupTol ))
+ existingNodeOcTr.NodesAround( SMESH_TNodeXYZ( *node ), dist2foundNodes, groupTol );
+ if ( !dist2foundNodes.empty() )
(*n2nIt).second = dist2foundNodes.begin()->second;
}
if ( !n2nIt->second )
(*n2nIt).second = dist2foundNodes.begin()->second;
}
if ( !n2nIt->second )
@@
-513,7
+514,7
@@
bool StdMeshers_Import_1D2D::Compute(SMESH_Mesh & theMesh, const TopoDS_Shape &
int sId = editor.FindShape( edge );
nbEdges += subShapeIDs.count( sId );
}
int sId = editor.FindShape( edge );
nbEdges += subShapeIDs.count( sId );
}
- if ( nbEdges < 2 )
+ if ( nbEdges < 2
&& !helper.IsRealSeam( s )
)
return false; // weird
if ( nbEdges > 2 )
return error( COMPERR_BAD_INPUT_MESH, "Source elements overlap one another");
return false; // weird
if ( nbEdges > 2 )
return error( COMPERR_BAD_INPUT_MESH, "Source elements overlap one another");
@@
-601,8
+602,8
@@
bool StdMeshers_Import_1D2D::Compute(SMESH_Mesh & theMesh, const TopoDS_Shape &
for ( size_t iE = 0; iE < edges.size(); ++iE )
{
SMESH_subMesh * sm = theMesh.GetSubMesh( edges[iE] );
for ( size_t iE = 0; iE < edges.size(); ++iE )
{
SMESH_subMesh * sm = theMesh.GetSubMesh( edges[iE] );
- if ( SMESH_Algo::isDegenerated( edges[iE] ))
- sm->SetIsAlwaysComputed( true );
+
//
if ( SMESH_Algo::isDegenerated( edges[iE] ))
+
//
sm->SetIsAlwaysComputed( true );
sm->ComputeStateEngine(SMESH_subMesh::CHECK_COMPUTE_STATE);
if ( sm->GetComputeState() != SMESH_subMesh::COMPUTE_OK )
return error(SMESH_Comment("Failed to create segments on the edge ")
sm->ComputeStateEngine(SMESH_subMesh::CHECK_COMPUTE_STATE);
if ( sm->GetComputeState() != SMESH_subMesh::COMPUTE_OK )
return error(SMESH_Comment("Failed to create segments on the edge ")