Salome HOME
PAL8267: two new API methods added: ExtrusionSweepObject1(2)D()
[modules/smesh.git] / idl / SMESH_Mesh.idl
index 77d9d186e0bd30374e2f5e7c3c958637e2db57b4..e380a6a099d8a23404af36365190aa1778d8e7b2 100644 (file)
@@ -324,10 +324,20 @@ module SMESH
        raises (SALOME::SALOME_Exception);
 
     /*!
-     * Export Mesh to MED Formats
+     * Export Mesh to different MED Formats
+     * @params
+     * - auto_groups : boolean parameter for creating/not creating
+     *   the groups Group_On_All_Nodes, Group_On_All_Faces, ... ;
+     *   the typical use is auto_groups=false.
+     * - theVersion : define the version of format of MED file, that will be created
      */
     void ExportToMED( in string file, in boolean auto_groups, in MED_VERSION theVersion )
       raises (SALOME::SALOME_Exception);
+    /*!
+     * Export Mesh to MED_V2_1 MED format
+     * Works, just the same as ExportToMED, with MED_VERSION parameter equal to MED_V2_1.
+     * The method is kept in order to support old functionality
+     */
     void ExportMED( in string file, in boolean auto_groups )
       raises (SALOME::SALOME_Exception);
 
@@ -535,23 +545,41 @@ module SMESH
                              in DirStruct       StepVector,
                              in long            NbOfSteps);
 
-    void ExtrusionAlongPath(in long_array        IDsOfElements,
-                           in SMESH_Mesh        PathMesh,
-                           in GEOM::GEOM_Object PathShape,
-                           in long              NodeStart,
-                           in boolean           HasAngles,
-                           in double_array      Angles,
-                           in boolean           HasRefPoint,
-                           in PointStruct       RefPoint);
-
-    void ExtrusionAlongPathObject(in SMESH_IDSource    theObject,
-                                 in SMESH_Mesh        PathMesh,
-                                 in GEOM::GEOM_Object PathShape,
-                                 in long              NodeStart,
-                                 in boolean           HasAngles,
-                                 in double_array      Angles,
-                                 in boolean           HasRefPoint,
-                                 in PointStruct       RefPoint);
+    void ExtrusionSweepObject1D(in SMESH_IDSource theObject,
+                               in DirStruct      StepVector,
+                               in long           NbOfSteps);
+
+    void ExtrusionSweepObject2D(in SMESH_IDSource theObject,
+                               in DirStruct      StepVector,
+                               in long           NbOfSteps);
+
+    enum Extrusion_Error {
+      EXTR_OK,
+      EXTR_NO_ELEMENTS, 
+      EXTR_PATH_NOT_EDGE,
+      EXTR_BAD_PATH_SHAPE,
+      EXTR_BAD_STARTING_NODE,
+      EXTR_BAD_ANGLES_NUMBER,
+      EXTR_CANT_GET_TANGENT
+      };
+
+    Extrusion_Error ExtrusionAlongPath(in long_array        IDsOfElements,
+                                      in SMESH_Mesh        PathMesh,
+                                      in GEOM::GEOM_Object PathShape,
+                                      in long              NodeStart,
+                                      in boolean           HasAngles,
+                                      in double_array      Angles,
+                                      in boolean           HasRefPoint,
+                                      in PointStruct       RefPoint);
+
+    Extrusion_Error ExtrusionAlongPathObject(in SMESH_IDSource    theObject,
+                                            in SMESH_Mesh        PathMesh,
+                                            in GEOM::GEOM_Object PathShape,
+                                            in long              NodeStart,
+                                            in boolean           HasAngles,
+                                            in double_array      Angles,
+                                            in boolean           HasRefPoint,
+                                            in PointStruct       RefPoint);
 
     enum MirrorType { POINT, AXIS, PLANE };