mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-19 06:50:36 +05:00
fix bug PAL10974: check if SubMeshesComputed() by presence of nodes in submesh.
This commit is contained in:
parent
51c3e5b587
commit
72a9d5d945
@ -195,12 +195,19 @@ bool SMESH_subMesh::SubMeshesComputed()
|
|||||||
for (itsub = subMeshes.begin(); itsub != subMeshes.end(); itsub++)
|
for (itsub = subMeshes.begin(); itsub != subMeshes.end(); itsub++)
|
||||||
{
|
{
|
||||||
SMESH_subMesh *sm = (*itsub).second;
|
SMESH_subMesh *sm = (*itsub).second;
|
||||||
|
SMESHDS_SubMesh * ds = sm->GetSubMeshDS();
|
||||||
const TopoDS_Shape & ss = sm->GetSubShape();
|
// PAL10974.
|
||||||
int type = ss.ShapeType();
|
// There are some tricks with compute states, e.g. Penta_3D leaves
|
||||||
bool computeOk = (sm->GetComputeState() == COMPUTE_OK);
|
// one face with READY_TO_COMPUTE state in order to be able to
|
||||||
|
// recompute 3D when a locale triangle hypo changes (see PAL7428).
|
||||||
|
// So we check if mesh is really present
|
||||||
|
//bool computeOk = (sm->GetComputeState() == COMPUTE_OK);
|
||||||
|
bool computeOk = ( ds && ds->GetNodes()->more() );
|
||||||
if (!computeOk)
|
if (!computeOk)
|
||||||
{
|
{
|
||||||
|
const TopoDS_Shape & ss = sm->GetSubShape();
|
||||||
|
int type = ss.ShapeType();
|
||||||
|
|
||||||
subMeshesComputed = false;
|
subMeshesComputed = false;
|
||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
|
Loading…
Reference in New Issue
Block a user