X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FSMESH_Mesh.idl;h=76859da1461442f5a7e721369babc920f153ec86;hb=19d95d14264fe00d3640126f912287dbc38f972c;hp=b041641778cfb967434d1d1f09b43b07b1afa524;hpb=85b1cfc1f07d0b93d88803c6c0ccadf8f3349719;p=modules%2Fsmesh.git diff --git a/idl/SMESH_Mesh.idl b/idl/SMESH_Mesh.idl index b04164177..76859da14 100644 --- a/idl/SMESH_Mesh.idl +++ b/idl/SMESH_Mesh.idl @@ -61,6 +61,7 @@ module SMESH CHANGE_ELEMENT_NODES, CHANGE_POLYHEDRON_NODES, RENUMBER, + CLEAR_MESH, ADD_QUADEDGE, ADD_QUADTRIANGLE, ADD_QUADQUADRANGLE, @@ -141,7 +142,8 @@ module SMESH HYP_ALREADY_EXIST,// such hypothesis already exist HYP_BAD_DIM, // bad dimension HYP_BAD_SUBSHAPE, // shape is neither the main one, nor its subshape, nor a group - HYP_BAD_GEOMETRY // geometry mismatches algorithm's expectation + HYP_BAD_GEOMETRY, // geometry mismatches algorithm's expectation + HYP_NEED_SHAPE // algorithm can work on shape only }; /*! @@ -177,6 +179,22 @@ module SMESH const long EXTRUSION_FLAG_BOUNDARY = 1; const long EXTRUSION_FLAG_SEW = 2; + /*! + * Structure used in mesh edit preview data (MeshPreviewStruct) + */ + struct ElementSubType { ElementType SMDS_ElementType; + boolean isPoly; + long nbNodesInElement; }; + + typedef sequence types_array; + + /*! + * Structure containing mesh edit preview data + */ + struct MeshPreviewStruct { nodes_array nodesXYZ; + long_array elementConnectivities; + types_array elementTypes; }; + interface SMESH_IDSource { /*! @@ -204,6 +222,17 @@ module SMESH GEOM::GEOM_Object GetShapeToMesh() raises (SALOME::SALOME_Exception); + /*! + * Remove all nodes and elements + */ + void Clear() + raises (SALOME::SALOME_Exception); + + /*! + * Remove all nodes and elements of submesh + */ + void ClearSubMesh(in long ShapeID) + raises (SALOME::SALOME_Exception); /*! * Get the subMesh object associated to a subShape. The subMesh object @@ -269,6 +298,15 @@ module SMESH in SMESH_GroupBase aGroup2, in string name ) raises (SALOME::SALOME_Exception); + + /*! + * Union of list of groups + * New group is created. All mesh elements that are + * present in initial groups are added to the new one + */ + SMESH_Group UnionListOfGroups (in ListOfGroups aListOfGroups, + in string name ) + raises (SALOME::SALOME_Exception); /*! * Intersection of two groups @@ -279,6 +317,15 @@ module SMESH in SMESH_GroupBase aGroup2, in string name ) raises (SALOME::SALOME_Exception); + + /*! + * Intersection of list of groups + * New group is created. All mesh elements that are + * present in all initial groups simultaneously are added to the new one. + */ + SMESH_Group IntersectListOfGroups (in ListOfGroups aListOfGroups, + in string name) + raises (SALOME::SALOME_Exception); /*! * Cut of two groups @@ -286,8 +333,29 @@ module SMESH * main group but do not present in tool group are added to the new one */ SMESH_Group CutGroups (in SMESH_GroupBase aMainGroup, - in SMESH_GroupBase aToolGroup, - in string name ) + in SMESH_GroupBase aToolGroup, + in string name ) + raises (SALOME::SALOME_Exception); + + /*! + * Cut of lists of groups + * New group is created. All mesh elements that are present in + * main groups but do not present in tool groups are added to the new one + */ + SMESH_Group CutListOfGroups (in ListOfGroups aMainGroups, + in ListOfGroups aToolGroups, + in string name) + raises (SALOME::SALOME_Exception); + + /*! + * Create groups of entities from existing groups of superior dimensions + * New group is created. System + * 1) extract all nodes from each group, + * 2) combine all elements of specified dimension laying on these nodes. + */ + SMESH_Group CreateDimGroup( in ListOfGroups aListOfGroups, + in ElementType anElemType, + in string name ) raises (SALOME::SALOME_Exception); /*! @@ -625,6 +693,8 @@ module SMESH */ double_array BaryCenter(in long id); + /*! Gets information about imported MED file */ + SALOME_MED::MedFileInfo GetMEDFileInfo(); }; interface SMESH_subMesh : SALOME::GenericObj, SMESH_IDSource