Salome HOME
Pascale Noyret: made the doc reading of Yams working on all systems (default system...
[modules/smesh.git] / idl / SMESH_MeshEditor.idl
index 90754ff0cf6d72d12b754ae699737300afa59dbe..3425d89e2e092b5221f33ff80f2d7236ee55cac6 100644 (file)
@@ -25,6 +25,7 @@
 #define _SMESH_MESHEDITOR_IDL_
 
 #include "SMESH_Mesh.idl"
+#include "SMESH_Gen.idl"
 
 module SMESH
 {
@@ -34,8 +35,34 @@ module SMESH
    * This interface makes modifications on the Mesh - removing elements and nodes etc.
    */
   interface NumericalFunctor;
+
   interface SMESH_MeshEditor
   {
+   /*!
+    * Return data of mesh edition preview which is computed provided
+    * that the editor was obtained trough SMESH_Mesh::GetMeshEditPreviewer()
+    */
+    MeshPreviewStruct GetPreviewData();
+
+   /*!
+    * If during last operation of MeshEditor some nodes were
+    * created this method returns list of their IDs, if new nodes
+    * not created - returns empty list
+    */
+    long_array GetLastCreatedNodes();
+
+   /*!
+    * If during last operation of MeshEditor some elements were
+    * created this method returns list of their IDs, if new elements
+    * not created - returns empty list
+    */
+    long_array GetLastCreatedElems();
+
+    /*!
+     * \brief Returns description of an error/warning occured during the last operation
+     */
+    ComputeError GetLastError();
+
     /*!
      * \brief Wrap a sequence of ids in a SMESH_IDSource
      * \param IDsOfElements list of mesh elements identifiers
@@ -124,7 +151,6 @@ module SMESH
      */
     long AddPolyhedralVolume (in long_array IdsOfNodes,
                               in long_array Quantities);
-
     /*!
      *  Create volume of many faces, giving IDs of existing faces.
      *  \param IdsOfFaces List of face IDs for volume creation.
@@ -133,6 +159,19 @@ module SMESH
      */
     long AddPolyhedralVolumeByFaces (in long_array IdsOfFaces);
 
+    /*!
+     * Create 0D elements on all nodes of the given object except those 
+     * nodes on which a 0D element already exists.
+     *  \param theObject object on whose nodes 0D elements will be created.
+     *  \param theGroupName optional name of a group to add 0D elements created
+     *         and/or found on nodes of \a theObject.
+     *  \return an object (a new group or a temporary SMESH_IDSource) holding
+     *          ids of new and/or found 0D elements.
+     */
+    SMESH_IDSource Create0DElementsOnAllNodes(in SMESH_IDSource theObject,
+                                              in string         theGroupName)
+      raises (SALOME::SALOME_Exception);
+
     /*!
      * \brief Bind a node to a vertex
       * \param NodeID - node ID
@@ -802,26 +841,6 @@ module SMESH
     */
     boolean ChangeElemNodes(in long ide, in long_array newIDs);
 
-   /*!
-    * Return data of mesh edition preview which is computed provided
-    * that the editor was obtained trough SMESH_Mesh::GetMeshEditPreviewer()
-    */
-    MeshPreviewStruct GetPreviewData();
-
-   /*!
-    * If during last operation of MeshEditor some nodes were
-    * created this method returns list of it's IDs, if new nodes
-    * not creared - returns empty list
-    */
-    long_array GetLastCreatedNodes();
-
-   /*!
-    * If during last operation of MeshEditor some elements were
-    * created this method returns list of it's IDs, if new elements
-    * not creared - returns empty list
-    */
-    long_array GetLastCreatedElems();
-
     /*!
      * \brief Creates a hole in a mesh by doubling the nodes of some particular elements
      * \param theNodes - identifiers of nodes to be doubled