mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-21 03:39:40 +05:00
PR: missing groups in CreateFlatElementsOnFacesGroups and names too long for groups in doubleNodesOnGroupBoundaries
This commit is contained in:
parent
648d627a1d
commit
621f26055e
@ -11159,7 +11159,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGroupBoundaries( const std::vector<TIDSorted
|
|||||||
SMDS_MeshVolume *vol = grid->extrudeVolumeFromFace(vtkVolId, dom1, dom2, oldNodes, nodeDomains,
|
SMDS_MeshVolume *vol = grid->extrudeVolumeFromFace(vtkVolId, dom1, dom2, oldNodes, nodeDomains,
|
||||||
nodeQuadDomains);
|
nodeQuadDomains);
|
||||||
stringstream grpname;
|
stringstream grpname;
|
||||||
grpname << "junction_";
|
grpname << "j_";
|
||||||
if (dom1 < dom2)
|
if (dom1 < dom2)
|
||||||
grpname << dom1 << "_" << dom2;
|
grpname << dom1 << "_" << dom2;
|
||||||
else
|
else
|
||||||
@ -11198,7 +11198,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGroupBoundaries( const std::vector<TIDSorted
|
|||||||
SMDS_MeshVolume* vol = this->GetMeshDS()->AddVolumeFromVtkIds(orderedNodes);
|
SMDS_MeshVolume* vol = this->GetMeshDS()->AddVolumeFromVtkIds(orderedNodes);
|
||||||
|
|
||||||
stringstream grpname;
|
stringstream grpname;
|
||||||
grpname << "junction_";
|
grpname << "mj_";
|
||||||
grpname << 0 << "_" << 0;
|
grpname << 0 << "_" << 0;
|
||||||
int idg;
|
int idg;
|
||||||
string namegrp = grpname.str();
|
string namegrp = grpname.str();
|
||||||
@ -11330,6 +11330,8 @@ bool SMESH_MeshEditor::CreateFlatElementsOnFacesGroups(const std::vector<TIDSort
|
|||||||
std::map<const SMDS_MeshNode*, const SMDS_MeshNode*> intermediateNodes;
|
std::map<const SMDS_MeshNode*, const SMDS_MeshNode*> intermediateNodes;
|
||||||
clonedNodes.clear();
|
clonedNodes.clear();
|
||||||
intermediateNodes.clear();
|
intermediateNodes.clear();
|
||||||
|
std::map<std::string, SMESH_Group*> mapOfJunctionGroups;
|
||||||
|
mapOfJunctionGroups.clear();
|
||||||
|
|
||||||
for (int idom = 0; idom < theElems.size(); idom++)
|
for (int idom = 0; idom < theElems.size(); idom++)
|
||||||
{
|
{
|
||||||
@ -11441,6 +11443,20 @@ bool SMESH_MeshEditor::CreateFlatElementsOnFacesGroups(const std::vector<TIDSort
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (vol)
|
||||||
|
{
|
||||||
|
stringstream grpname;
|
||||||
|
grpname << "jf_";
|
||||||
|
grpname << idom;
|
||||||
|
int idg;
|
||||||
|
string namegrp = grpname.str();
|
||||||
|
if (!mapOfJunctionGroups.count(namegrp))
|
||||||
|
mapOfJunctionGroups[namegrp] = this->myMesh->AddGroup(SMDSAbs_Volume, namegrp.c_str(), idg);
|
||||||
|
SMESHDS_Group *sgrp = dynamic_cast<SMESHDS_Group*>(mapOfJunctionGroups[namegrp]->GetGroupDS());
|
||||||
|
if (sgrp)
|
||||||
|
sgrp->Add(vol->GetID());
|
||||||
|
}
|
||||||
|
|
||||||
// --- modify the face
|
// --- modify the face
|
||||||
|
|
||||||
aFace->ChangeNodes(&ln[0], ln.size());
|
aFace->ChangeNodes(&ln[0], ln.size());
|
||||||
|
Loading…
Reference in New Issue
Block a user