mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-03-04 01:15:38 +05:00
0022195: EDF SMESH: Mesh using existing elements.
To load the mesh owning source groups - const std::vector<SMESH_Group*>& GetGroups() const; + const std::vector<SMESH_Group*>& GetGroups(bool loaded=false) const;
This commit is contained in:
parent
42491f3cb5
commit
3010de27c3
@ -121,7 +121,8 @@ namespace
|
|||||||
//================================================================================
|
//================================================================================
|
||||||
|
|
||||||
vector<SMESH_Group*> getValidGroups(const vector<SMESH_Group*>& groups,
|
vector<SMESH_Group*> getValidGroups(const vector<SMESH_Group*>& groups,
|
||||||
StudyContextStruct* studyContext)
|
StudyContextStruct* studyContext,
|
||||||
|
bool loaded=false)
|
||||||
{
|
{
|
||||||
vector<SMESH_Group*> okGroups;
|
vector<SMESH_Group*> okGroups;
|
||||||
for ( int i = 0; i < groups.size(); ++i )
|
for ( int i = 0; i < groups.size(); ++i )
|
||||||
@ -137,7 +138,11 @@ namespace
|
|||||||
SMESH_Mesh::GroupIteratorPtr gIt = itm->second->GetGroups();
|
SMESH_Mesh::GroupIteratorPtr gIt = itm->second->GetGroups();
|
||||||
while ( gIt->more() && !okGroup )
|
while ( gIt->more() && !okGroup )
|
||||||
if ( gIt->next() == groups[i] )
|
if ( gIt->next() == groups[i] )
|
||||||
|
{
|
||||||
okGroup = groups[i];
|
okGroup = groups[i];
|
||||||
|
if ( loaded )
|
||||||
|
itm->second->Load();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ( okGroup )
|
if ( okGroup )
|
||||||
okGroups.push_back( okGroup );
|
okGroups.push_back( okGroup );
|
||||||
@ -193,14 +198,16 @@ namespace
|
|||||||
//=============================================================================
|
//=============================================================================
|
||||||
/*!
|
/*!
|
||||||
* Returns groups to import elements from
|
* Returns groups to import elements from
|
||||||
|
* \param [in] loaded - if \c true, meshes holding the groups are loaded
|
||||||
*/
|
*/
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
|
|
||||||
const std::vector<SMESH_Group*>& StdMeshers_ImportSource1D::GetGroups() const
|
const std::vector<SMESH_Group*>& StdMeshers_ImportSource1D::GetGroups(bool loaded) const
|
||||||
{
|
{
|
||||||
// filter off deleted groups
|
// filter off deleted groups
|
||||||
vector<SMESH_Group*> okGroups = getValidGroups( _groups,
|
vector<SMESH_Group*> okGroups = getValidGroups( _groups,
|
||||||
_gen->GetStudyContext(_studyId) );
|
_gen->GetStudyContext(_studyId),
|
||||||
|
loaded);
|
||||||
if ( okGroups.size() != _groups.size() )
|
if ( okGroups.size() != _groups.size() )
|
||||||
((StdMeshers_ImportSource1D*)this)->_groups = okGroups;
|
((StdMeshers_ImportSource1D*)this)->_groups = okGroups;
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class STDMESHERS_EXPORT StdMeshers_ImportSource1D : public SMESH_Hypothesis
|
|||||||
virtual ~ StdMeshers_ImportSource1D();
|
virtual ~ StdMeshers_ImportSource1D();
|
||||||
|
|
||||||
void SetGroups(const std::vector<SMESH_Group*>& groups);
|
void SetGroups(const std::vector<SMESH_Group*>& groups);
|
||||||
const std::vector<SMESH_Group*>& GetGroups() const;
|
const std::vector<SMESH_Group*>& GetGroups(bool loaded=false) const;
|
||||||
|
|
||||||
void SetCopySourceMesh(bool toCopyMesh, bool toCopyGroups);
|
void SetCopySourceMesh(bool toCopyMesh, bool toCopyGroups);
|
||||||
void GetCopySourceMesh(bool& toCopyMesh, bool& toCopyGroups) const;
|
void GetCopySourceMesh(bool& toCopyMesh, bool& toCopyGroups) const;
|
||||||
|
Loading…
Reference in New Issue
Block a user