Salome HOME
PAL16617 (Modification/Transformation operations with copy don't create a new mesh)
[modules/smesh.git] / idl / SMESH_Mesh.idl
index a8ffd3a0b3122032e41408edcdb07b349b230e97..698e4139f35bae92b4641dd51b7ae3571a1bd876 100644 (file)
@@ -93,6 +93,14 @@ module SMESH
                       double vy;
                       double vz; } ;
 
+  /*!
+   * Node location on a shape
+   */
+  struct NodePosition {
+    long             shapeID;
+    GEOM::shape_type shapeType;
+    double_array     params; // [U] on EDGE, [U,V] on FACE, [] on the rest shapes
+  };
 
   /*!
    * Enumeration for element type, like in SMDS
@@ -246,6 +254,12 @@ module SMESH
     ListOfGroups GetGroups()
       raises (SALOME::SALOME_Exception);
 
+    /*!
+     *  Get number of groups existing in the mesh
+     */
+    long NbGroups()
+      raises (SALOME::SALOME_Exception);
+
     /*!
      * Union of two groups
      *    New group is created. All mesh elements that are
@@ -503,7 +517,7 @@ module SMESH
     /*!
      * Get mesh pointer
      */
-    long GetMeshPtr();
+    long long GetMeshPtr();
 
     /*!
      * Get XYZ coordinates of node as list of double
@@ -517,6 +531,11 @@ module SMESH
      */
     long_array GetNodeInverseElements(in long id);
 
+    /*!
+     * \brief Return position of a node on shape
+     */
+    NodePosition GetNodePosition(in long NodeID);
+
     /*!
      * If given element is node returns IDs of shape from position
      * If there is not node for given ID - returns -1