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
IPAL53870: Dump study script creates an excess sub-mesh
[modules/smesh.git]
/
src
/
SMESH
/
SMESH_Pattern.hxx
diff --git
a/src/SMESH/SMESH_Pattern.hxx
b/src/SMESH/SMESH_Pattern.hxx
index 67c9093ea5c89eb1d71dee95604ea8719f30f22e..8b405de2138930c0edcd834f8070afa18114ef50 100644
(file)
--- a/
src/SMESH/SMESH_Pattern.hxx
+++ b/
src/SMESH/SMESH_Pattern.hxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-201
5
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-201
6
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
@@
-71,13
+71,15
@@
class SMESH_EXPORT SMESH_Pattern {
bool Load (SMESH_Mesh* theMesh,
const TopoDS_Face& theFace,
bool theProject = false,
bool Load (SMESH_Mesh* theMesh,
const TopoDS_Face& theFace,
bool theProject = false,
- TopoDS_Vertex the1stVertex=TopoDS_Vertex());
+ TopoDS_Vertex the1stVertex=TopoDS_Vertex(),
+ bool theKeepNodes = false );
// Create a pattern from the mesh built on <theFace>.
// <theProject>==true makes override nodes positions
// on <theFace> computed by mesher
bool Load (SMESH_Mesh* theMesh,
// Create a pattern from the mesh built on <theFace>.
// <theProject>==true makes override nodes positions
// on <theFace> computed by mesher
bool Load (SMESH_Mesh* theMesh,
- const TopoDS_Shell& theBlock);
+ const TopoDS_Shell& theBlock,
+ bool theKeepNodes = false);
// Create a pattern from the mesh built on <theBlock>
bool Save (std::ostream& theFile);
// Create a pattern from the mesh built on <theBlock>
bool Save (std::ostream& theFile);
@@
-216,6
+218,11
@@
class SMESH_EXPORT SMESH_Pattern {
{ return myElemXYZIDs.empty() || !applied ? myElemPointIDs : myElemXYZIDs; }
// Return nodal connectivity of the elements of the pattern
{ return myElemXYZIDs.empty() || !applied ? myElemPointIDs : myElemXYZIDs; }
// Return nodal connectivity of the elements of the pattern
+ void GetInOutNodes( std::vector< const SMDS_MeshNode* > *& inNodes,
+ std::vector< const SMDS_MeshNode* > *& outNodes )
+ { inNodes = & myInNodes; outNodes = & myOutNodes; }
+ // Return loaded and just created nodes
+
void DumpPoints() const;
// Debug
void DumpPoints() const;
// Debug
@@
-368,7
+375,11
@@
private:
// nb of key-points in each of pattern boundaries
std::list< int > myNbKeyPntInBoundary;
// nb of key-points in each of pattern boundaries
std::list< int > myNbKeyPntInBoundary;
-
+ // nodes corresponding to myPoints
+ bool myToKeepNodes; // to keep these data
+ std::vector< const SMDS_MeshNode* > myInNodes; // loaded nodes
+ std::vector< const SMDS_MeshNode* > myOutNodes; // created nodes
+
// to compute while applying to mesh elements, not to shapes
std::vector<gp_XYZ> myXYZ; // XYZ of nodes to create
// to compute while applying to mesh elements, not to shapes
std::vector<gp_XYZ> myXYZ; // XYZ of nodes to create
@@
-377,7
+388,7
@@
private:
std::vector<const SMDS_MeshElement*> myElements; // refined elements
std::vector<const SMDS_MeshNode*> myOrderedNodes;
std::vector<const SMDS_MeshElement*> myElements; // refined elements
std::vector<const SMDS_MeshNode*> myOrderedNodes;
-
// elements to replace with polygon or polyhedron
+ // elements to replace with polygon or polyhedron
std::vector<const SMDS_MeshElement*> myPolyElems;
// definitions of new poly elements
std::list< TElemDef > myPolyElemXYZIDs;
std::vector<const SMDS_MeshElement*> myPolyElems;
// definitions of new poly elements
std::list< TElemDef > myPolyElemXYZIDs;