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
Give proper permissions to Python scripts
[modules/smesh.git]
/
src
/
StdMeshers
/
StdMeshers_Projection_2D.cxx
diff --git
a/src/StdMeshers/StdMeshers_Projection_2D.cxx
b/src/StdMeshers/StdMeshers_Projection_2D.cxx
index 7467a19f9b5a9c913ea337c36cb15fd082ac4337..6bb6adc1fa94d0693d7d55fbf7bf1679d003fc12 100644
(file)
--- a/
src/StdMeshers/StdMeshers_Projection_2D.cxx
+++ b/
src/StdMeshers/StdMeshers_Projection_2D.cxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-201
2
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-201
3
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
@@
-62,7
+62,8
@@
using namespace std;
#define RETURN_BAD_RESULT(msg) { MESSAGE(")-: Error: " << msg); return false; }
#define RETURN_BAD_RESULT(msg) { MESSAGE(")-: Error: " << msg); return false; }
-typedef StdMeshers_ProjectionUtils TAssocTool;
+namespace TAssocTool = StdMeshers_ProjectionUtils;
+//typedef StdMeshers_ProjectionUtils TAssocTool;
//=======================================================================
//function : StdMeshers_Projection_2D
//=======================================================================
//function : StdMeshers_Projection_2D
@@
-824,14
+825,17
@@
bool StdMeshers_Projection_2D::Compute(SMESH_Mesh& theMesh, const TopoDS_Shape&
SMESH_subMesh* srcSubMesh = srcMesh->GetSubMesh( srcFace );
SMESH_subMesh* tgtSubMesh = tgtMesh->GetSubMesh( tgtFace );
SMESH_subMesh* srcSubMesh = srcMesh->GetSubMesh( srcFace );
SMESH_subMesh* tgtSubMesh = tgtMesh->GetSubMesh( tgtFace );
+ string srcMeshError;
if ( tgtMesh == srcMesh ) {
if ( tgtMesh == srcMesh ) {
- if ( !TAssocTool::MakeComputed( srcSubMesh )
|| !srcSubMesh->IsMeshComputed()
)
-
return error(COMPERR_BAD_INPUT_MESH,"Source mesh not computed"
);
+ if ( !TAssocTool::MakeComputed( srcSubMesh ))
+
srcMeshError = TAssocTool::SourceNotComputedError( srcSubMesh, this
);
}
else {
if ( !srcSubMesh->IsMeshComputed() )
}
else {
if ( !srcSubMesh->IsMeshComputed() )
-
return error(COMPERR_BAD_INPUT_MESH,"Source mesh not computed"
);
+
srcMeshError = TAssocTool::SourceNotComputedError(
);
}
}
+ if ( !srcMeshError.empty() )
+ return error(COMPERR_BAD_INPUT_MESH, srcMeshError );
// ===========
// Projection
// ===========
// Projection
@@
-861,15
+865,15
@@
bool StdMeshers_Projection_2D::Compute(SMESH_Mesh& theMesh, const TopoDS_Shape&
done = projectBy2DSimilarity( tgtFace, srcFace, tgtMesh, srcMesh, shape2ShapeMap, is1DComputed);
}
done = projectBy2DSimilarity( tgtFace, srcFace, tgtMesh, srcMesh, shape2ShapeMap, is1DComputed);
}
+ SMESH_MesherHelper helper( theMesh );
+ helper.SetSubShape( tgtFace );
+
if ( !done )
{
// --------------------
// Prepare to mapping
// --------------------
if ( !done )
{
// --------------------
// Prepare to mapping
// --------------------
- SMESH_MesherHelper helper( theMesh );
- helper.SetSubShape( tgtFace );
-
// Check if node projection to a face is needed
Bnd_B2d uvBox;
SMDS_ElemIteratorPtr faceIt = srcSubMesh->GetSubMeshDS()->GetElements();
// Check if node projection to a face is needed
Bnd_B2d uvBox;
SMDS_ElemIteratorPtr faceIt = srcSubMesh->GetSubMeshDS()->GetElements();
@@
-1140,7
+1144,7
@@
bool StdMeshers_Projection_2D::Compute(SMESH_Mesh& theMesh, const TopoDS_Shape&
while ( faceIt->more() )
tgtFaces.insert( tgtFaces.end(), faceIt->next() );
while ( faceIt->more() )
tgtFaces.insert( tgtFaces.end(), faceIt->next() );
- editor.ConvertToQuadratic(/*theForce3d=*/false, tgtFaces);
+ editor.ConvertToQuadratic(/*theForce3d=*/false, tgtFaces
, false
);
}
cleaner.Release(); // not to remove mesh
}
cleaner.Release(); // not to remove mesh
@@
-1182,7
+1186,7
@@
bool StdMeshers_Projection_2D::Compute(SMESH_Mesh& theMesh, const TopoDS_Shape&
}
}
// Fix orientation
}
}
// Fix orientation
- if (
SMESH_Algo::IsReversedSubMesh( face, meshDS
))
+ if (
helper.IsReversedSubMesh( face
))
{
SMESH_MeshEditor editor( tgtMesh );
SMDS_ElemIteratorPtr eIt = meshDS->MeshElements( face )->GetElements();
{
SMESH_MeshEditor editor( tgtMesh );
SMDS_ElemIteratorPtr eIt = meshDS->MeshElements( face )->GetElements();