X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_MeshEditor_i.hxx;h=89c730f7b1b768af52869d9372b48a10b548a4a4;hb=7b4c10fd0e3bd5f6612582fb9ef39965b8f0055a;hp=c5818522e4362db02f95180559baff8c88732ef0;hpb=f816f204d33b5250ee211247a798a1af42c528ea;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_MeshEditor_i.hxx b/src/SMESH_I/SMESH_MeshEditor_i.hxx index c5818522e..89c730f7b 100644 --- a/src/SMESH_I/SMESH_MeshEditor_i.hxx +++ b/src/SMESH_I/SMESH_MeshEditor_i.hxx @@ -95,6 +95,11 @@ public: static bool IsTemporaryIDSource( SMESH::SMESH_IDSource_ptr& idSource ); static CORBA::Long* GetTemporaryIDs( SMESH::SMESH_IDSource_ptr& idSource, int& nbIds ); + /*! + * \brief Generates the unique group name + */ + std::string GenerateGroupName(const std::string& thePrefix); + CORBA::Boolean RemoveElements(const SMESH::long_array & IDsOfElements) throw (SALOME::SALOME_Exception); CORBA::Boolean RemoveNodes (const SMESH::long_array & IDsOfNodes) @@ -546,6 +551,20 @@ public: SMESH::ElementType type) throw (SALOME::SALOME_Exception); + /*! + * Project a point to a mesh object. + * Return ID of an element of given type where the given point is projected + * and coordinates of the projection point. + * In the case if nothing found, return -1 and [] + */ + CORBA::Long ProjectPoint(CORBA::Double x, + CORBA::Double y, + CORBA::Double z, + SMESH::SMESH_IDSource_ptr meshObject, + SMESH::ElementType type, + SMESH::double_array_out projecton) + throw (SALOME::SALOME_Exception); + /*! * Return point state in a closed 2D mesh in terms of TopAbs_State enumeration. * TopAbs_UNKNOWN state means that either mesh is wrong or the analysis fails. @@ -565,6 +584,12 @@ public: CORBA::Boolean IsCoherentOrientation2D() throw (SALOME::SALOME_Exception); + /*! + * Return sharp edges of faces and non-manifold ones. Optionally adds existing edges. + */ + SMESH::ListOfEdges* FindSharpEdges(CORBA::Double angle, CORBA::Boolean addExisting) + throw (SALOME::SALOME_Exception); + /*! * Returns all or only closed FreeBorder's. */ @@ -573,8 +598,10 @@ public: /*! * Fill with 2D elements a hole defined by a FreeBorder. + * Optionally add new faces to a given group, which is returned */ - void FillHole(const SMESH::FreeBorder& hole) + SMESH::SMESH_Group_ptr FillHole(const SMESH::FreeBorder& hole, + const char* groupName) throw (SALOME::SALOME_Exception); SMESH::CoincidentFreeBorders* FindCoincidentFreeBorders(CORBA::Double tolerance); @@ -957,8 +984,6 @@ public: void dumpGroupsList(SMESH::TPythonDump & theDumpPython, const SMESH::ListOfGroups * theGroupList); - std::string generateGroupName(const std::string& thePrefix); - void prepareIdSource(SMESH::SMESH_IDSource_ptr theObject);