X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Mesh_i.hxx;h=39fd2aa1cd12d618a8ef6534acdb21ca6784b293;hb=f757d34e5ab5e6471f7d49c835b6d7b0d58009c8;hp=cd9a7a9166388121dc1a630f64fef47988f8102e;hpb=be0348c630bec8c50d15094deeec95f5cc2d7a8b;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_Mesh_i.hxx b/src/SMESH_I/SMESH_Mesh_i.hxx index cd9a7a916..39fd2aa1c 100644 --- a/src/SMESH_I/SMESH_Mesh_i.hxx +++ b/src/SMESH_I/SMESH_Mesh_i.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 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 @@ -31,6 +31,7 @@ #include "SMESH_Hypothesis.hxx" #include "SMESH_Mesh.hxx" #include "SMESH_subMesh.hxx" +#include "SMDS_ElemIterator.hxx" #include #include @@ -86,21 +87,22 @@ public: void ClearSubMesh(CORBA::Long ShapeID) throw (SALOME::SALOME_Exception); - SMESH::Hypothesis_Status AddHypothesis(GEOM::GEOM_Object_ptr aSubShapeObject, - SMESH::SMESH_Hypothesis_ptr anHyp) + SMESH::Hypothesis_Status AddHypothesis(GEOM::GEOM_Object_ptr aSubShape, + SMESH::SMESH_Hypothesis_ptr anHyp, + CORBA::String_out anErrorText) throw (SALOME::SALOME_Exception); - SMESH::Hypothesis_Status RemoveHypothesis(GEOM::GEOM_Object_ptr aSubShapeObject, + SMESH::Hypothesis_Status RemoveHypothesis(GEOM::GEOM_Object_ptr aSubShape, SMESH::SMESH_Hypothesis_ptr anHyp) throw (SALOME::SALOME_Exception); - SMESH::ListOfHypothesis* GetHypothesisList(GEOM::GEOM_Object_ptr aSubShapeObject) + SMESH::ListOfHypothesis* GetHypothesisList(GEOM::GEOM_Object_ptr aSubShape) throw (SALOME::SALOME_Exception); SMESH::submesh_array* GetSubMeshes() throw (SALOME::SALOME_Exception); - SMESH::SMESH_subMesh_ptr GetSubMesh(GEOM::GEOM_Object_ptr aSubShapeObject, const char* theName) + SMESH::SMESH_subMesh_ptr GetSubMesh(GEOM::GEOM_Object_ptr aSubShape, const char* theName) throw (SALOME::SALOME_Exception); void RemoveSubMesh( SMESH::SMESH_subMesh_ptr theSubMesh ) @@ -159,9 +161,11 @@ public: const char* theName ) throw (SALOME::SALOME_Exception); - SMESH::SMESH_Group_ptr CreateDimGroup( const SMESH::ListOfGroups& theGroups, - SMESH::ElementType theElemType, - const char* theName ) + SMESH::SMESH_Group_ptr CreateDimGroup( const SMESH::ListOfIDSources& theGroups, + SMESH::ElementType theElemType, + const char* theName, + SMESH::NB_COMMON_NODES_ENUM theNbCommonNodes, + CORBA::Boolean theUnderlyingOnly ) throw (SALOME::SALOME_Exception); @@ -247,7 +251,8 @@ public: void ExportSTL( const char* file, bool isascii ) throw (SALOME::SALOME_Exception); void ExportCGNS(SMESH::SMESH_IDSource_ptr meshPart, const char* file, - CORBA::Boolean overwrite) throw (SALOME::SALOME_Exception); + CORBA::Boolean overwrite, + CORBA::Boolean groupElemsByType) throw (SALOME::SALOME_Exception); void ExportGMF(SMESH::SMESH_IDSource_ptr meshPart, const char* file, CORBA::Boolean withRequiredGroups) throw (SALOME::SALOME_Exception); @@ -315,6 +320,9 @@ public: CORBA::Long NbPolygons() throw (SALOME::SALOME_Exception); + CORBA::Long NbPolygonsOfOrder(SMESH::ElementOrder order=SMESH::ORDER_ANY) + throw (SALOME::SALOME_Exception); + CORBA::Long NbVolumes() throw (SALOME::SALOME_Exception); @@ -404,10 +412,11 @@ public: // Internal methods not available through CORBA // They are called by corresponding interface methods - SMESH_Hypothesis::Hypothesis_Status addHypothesis(GEOM::GEOM_Object_ptr aSubShapeObject, - SMESH::SMESH_Hypothesis_ptr anHyp); + SMESH_Hypothesis::Hypothesis_Status addHypothesis(GEOM::GEOM_Object_ptr aSubShape, + SMESH::SMESH_Hypothesis_ptr anHyp, + std::string* anErrorText=0); - SMESH_Hypothesis::Hypothesis_Status removeHypothesis(GEOM::GEOM_Object_ptr aSubShapeObject, + SMESH_Hypothesis::Hypothesis_Status removeHypothesis(GEOM::GEOM_Object_ptr aSubShape, SMESH::SMESH_Hypothesis_ptr anHyp); static SMESH::Hypothesis_Status @@ -528,8 +537,8 @@ public: * Returns true if given node is medium node * in one of quadratic elements */ - CORBA::Boolean IsMediumNodeOfAnyElem(CORBA::Long idn, - SMESH::ElementType theElemType); + CORBA::Boolean IsMediumNodeOfAnyElem(CORBA::Long idn, + SMESH::ElementType elemType); /*! * Returns number of edges for given element @@ -555,6 +564,12 @@ public: */ CORBA::Long FindElementByNodes(const SMESH::long_array& nodes); + /*! + * Return elements including all given nodes. + */ + SMESH::long_array* GetElementsByNodes(const SMESH::long_array& nodes, + SMESH::ElementType elemType); + /*! * Returns true if given element is polygon */ @@ -648,6 +663,10 @@ public: * happen if mesh data is not yet fully loaded from the file of study. */ bool IsMeshInfoCorrect(); + /*! + * Returns mesh unstructed grid information. + */ + virtual SALOMEDS::TMPFile* GetVtkUgStream(); std::map _mapSubMesh_i; //NRI std::map _mapSubMesh; //NRI