ADD_EDGE,
ADD_TRIANGLE,
ADD_QUADRANGLE,
+ ADD_POLYGON,
ADD_TETRAHEDRON,
ADD_PYRAMID,
ADD_PRISM,
ADD_HEXAHEDRON,
+ ADD_POLYHEDRON,
REMOVE_NODE,
REMOVE_ELEMENT,
MOVE_NODE,
CHANGE_ELEMENT_NODES,
+ CHANGE_POLYHEDRON_NODES,
RENUMBER
};
DRS_FAIL // general failure (exception etc.)
};
+ /*!
+ * Enumeration for DriverMED (used by Perform() method)
+ */
+ enum MED_VERSION // in the order of severity
+ {
+ MED_V2_1,
+ MED_V2_2
+ };
+
typedef sequence<log_block> log_array;
raises (SALOME::SALOME_Exception);
/*!
- * Export Mesh with DAT and 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 ExportDAT( in string file )
+ 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);
+
+ /*!
+ * Export Mesh to DAT, UNV and STL Formats
+ */
+ void ExportDAT( in string file )
+ raises (SALOME::SALOME_Exception);
void ExportUNV( in string file )
raises (SALOME::SALOME_Exception);
void ExportSTL( in string file, in boolean isascii )
long NbNodes()
raises (SALOME::SALOME_Exception);
+ long NbElements()
+ raises (SALOME::SALOME_Exception);
+
long NbEdges()
raises (SALOME::SALOME_Exception);
long NbQuadrangles()
raises (SALOME::SALOME_Exception);
+ long NbPolygons()
+ raises (SALOME::SALOME_Exception);
+
long NbVolumes()
raises (SALOME::SALOME_Exception);
long NbPrisms()
raises (SALOME::SALOME_Exception);
+ long NbPolyhedrons()
+ raises (SALOME::SALOME_Exception);
+
long NbSubMesh()
raises (SALOME::SALOME_Exception);
+ long_array GetElementsId()
+ raises (SALOME::SALOME_Exception);
+
+ long_array GetElementsByType( in ElementType theType )
+ raises (SALOME::SALOME_Exception);
+
+ long_array GetNodesId()
+ raises (SALOME::SALOME_Exception);
+
string Dump();
};
raises (SALOME::SALOME_Exception);
};
- /*
+ /*!
* This interface makes modifications on the Mesh - removing elements and nodes etc.
*/
interface NumericalFunctor;
boolean AddVolume(in long_array IDsOfNodes);
+ //boolean AddPolygonalFace (in long_array IdsOfNodes);
+
+ /*!
+ * Create volume of many faces, giving nodes for each face.
+ * \param IdsOfNodes List of node IDs for volume creation face by face.
+ * \param Quantities List of integer values, Quantities[i]
+ * gives quantity of nodes in face number i.
+ */
+ boolean 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.
+ * \note The created volume will refer only to nodes
+ * of the given faces, not to the faces itself.
+ */
+ boolean AddPolyhedralVolumeByFaces (in long_array IdsOfFaces);
+
boolean MoveNode(in long NodeID, in double x, in double y, in double z);
boolean InverseDiag(in long NodeID1, in long NodeID2);
in double MaxAspectRatio,
in Smooth_Method Method);
+ boolean SmoothParametric(in long_array IDsOfElements,
+ in long_array IDsOfFixedNodes,
+ in long MaxNbOfIterations,
+ in double MaxAspectRatio,
+ in Smooth_Method Method);
+
+ boolean SmoothParametricObject(in SMESH_IDSource theObject,
+ in long_array IDsOfFixedNodes,
+ in long MaxNbOfIterations,
+ in double MaxAspectRatio,
+ in Smooth_Method Method);
+
void RenumberNodes();
void RenumberElements();
in DirStruct StepVector,
in long NbOfSteps);
+ 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 };
void Mirror (in long_array IDsOfElements,
in long LastNodeID1,
in long FirstNodeID2,
in long SecondNodeID2,
- in long LastNodeID2);
+ in long LastNodeID2,
+ in boolean CreatePolygons,
+ in boolean CreatePolyedrs);
Sew_Error SewConformFreeBorders (in long FirstNodeID1,
in long SecondNodeID1,
in long SecondNodeIDOnFreeBorder,
in long LastNodeIDOnFreeBorder,
in long FirstNodeIDOnSide,
- in long LastNodeIDOnSide);
+ in long LastNodeIDOnSide,
+ in boolean CreatePolygons,
+ in boolean CreatePolyedrs);
Sew_Error SewSideElements (in long_array IDsOfSide1Elements,
in long_array IDsOfSide2Elements,