-// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2013 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
int SMESH_Mesh::GetHypotheses(const TopoDS_Shape & aSubShape,
const SMESH_HypoFilter& aFilter,
list <const SMESHDS_Hypothesis * >& aHypList,
- const bool andAncestors) const
+ const bool andAncestors,
+ list< TopoDS_Shape > * assignedTo/*=0*/) const
{
set<string> hypTypes; // to exclude same type hypos from the result list
int nbHyps = 0;
nbHyps++;
if ( !cSMESH_Hyp(*hyp)->IsAuxiliary() )
mainHypFound = true;
+ if ( assignedTo ) assignedTo->push_back( aSubShape );
}
}
nbHyps++;
if ( !cSMESH_Hyp(*hyp)->IsAuxiliary() )
mainHypFound = true;
+ if ( assignedTo ) assignedTo->push_back( curSh );
}
}
}
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 )
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