X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH%2FSMESH_Mesh.cxx;h=22fd2e44e51e28713d2213b04adf2bccfaa680db;hp=a7e10a243f7bf6b3ed4d16d41ae87df2c1c08ba1;hb=46654775ebae851bc90749bd9797ee9e91543f2e;hpb=bd8f1aee7c78f7d2eb82bd4fec5e08c9e3d280ce diff --git a/src/SMESH/SMESH_Mesh.cxx b/src/SMESH/SMESH_Mesh.cxx index a7e10a243..22fd2e44e 100644 --- a/src/SMESH/SMESH_Mesh.cxx +++ b/src/SMESH/SMESH_Mesh.cxx @@ -918,10 +918,9 @@ SMESH_subMesh *SMESH_Mesh::GetSubMesh(const TopoDS_Shape & aSubShape) if ( it.More() ) { index = _myMeshDS->AddCompoundSubmesh( aSubShape, it.Value().ShapeType() ); - if ( index > _nbSubShapes ) _nbSubShapes = index; // not to create sm for this group again - // fill map of Ancestors - fillAncestorsMap(aSubShape); + while ( _nbSubShapes < index ) + fillAncestorsMap( _myMeshDS->IndexToShape( ++_nbSubShapes )); } } // if ( !index ) @@ -1502,6 +1501,18 @@ int SMESH_Mesh::NbTriangles(SMDSAbs_ElementOrder order) const throw(SALOME_Excep return _myMeshDS->GetMeshInfo().NbTriangles(order); } +//================================================================================ +/*! + * \brief Return number of biquadratic triangles in the mesh + */ +//================================================================================ + +int SMESH_Mesh::NbBiQuadTriangles() const throw(SALOME_Exception) +{ + Unexpect aCatch(SalomeException); + return _myMeshDS->GetMeshInfo().NbBiQuadTriangles(); +} + //================================================================================ /*! * \brief Return the number nodes faces in the mesh