X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=idl%2FSMESH_Gen.idl;h=cb625d0b9da1fce14b190787a89b2e940f1404d0;hp=f6e9f89adb4a842a1e94907e9249353c52121fd9;hb=079e65a9b152c9dec23fa91a346ac312b04eb145;hpb=bd4e115a78b52e3fbc016e5e30bb0e19b2a9e7d6 diff --git a/idl/SMESH_Gen.idl b/idl/SMESH_Gen.idl index f6e9f89ad..cb625d0b9 100644 --- a/idl/SMESH_Gen.idl +++ b/idl/SMESH_Gen.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -36,6 +36,7 @@ module SMESH { + typedef sequence sobject_list; typedef sequence object_array; typedef sequence mesh_array; @@ -101,7 +102,9 @@ module SMESH COMPERR_ALGO_FAILED , // computation failed COMPERR_BAD_SHAPE , // bad geometry COMPERR_WARNING , // algo reports error but sub-mesh is computed anyway - COMPERR_CANCELED // compute canceled + COMPERR_CANCELED , // compute canceled + COMPERR_NO_MESH_ON_SHAPE,// no mesh elements assigned to sub-mesh + COMPERR_BAD_PARMETERS // incorrect hypotheses parameters }; struct ComputeError { @@ -170,6 +173,17 @@ module SMESH in boolean byMesh) raises ( SALOME::SALOME_Exception ); + /*! + * Returns \c True if a hypothesis is assigned to a sole sub-mesh in a current Study + * \param [in] theHyp - the hypothesis of interest + * \param [out] theMesh - the sole mesh using \a theHyp + * \param [out] theShape - the sole geometry \a theHyp is assigned to + * \return boolean - \c True if \a theMesh and \a theShape are sole using \a theHyp + */ + boolean GetSoleSubMeshUsingHyp( in SMESH_Hypothesis theHyp, + out SMESH_Mesh theMesh, + out GEOM::GEOM_Object theShape); + /*! * Sets number of segments per diagonal of boundary box of geometry by which * default segment length of appropriate 1D hypotheses is defined @@ -237,6 +251,16 @@ module SMESH out SMESH::DriverMED_ReadStatus theStatus ) raises ( SALOME::SALOME_Exception ); + /*! + * Create Mesh object importing data from given GMF file + * \param theFileName - a name of file to import + * \param theMakeRequiredGroups - if true, groups of required entities will be created + */ + SMESH_Mesh CreateMeshesFromGMF( in string theFileName, + in boolean theMakeRequiredGroups, + out SMESH::ComputeError theError) + raises ( SALOME::SALOME_Exception ); + /*! * Create a mesh by copying a part of another mesh * \param meshPart - a part of mesh to copy @@ -342,7 +366,15 @@ module SMESH raises ( SALOME::SALOME_Exception ); /*! - * Return indeces of faces, edges and vertices of given sub-shapes + * Create groups of elements preventing computation of a sub-shape + */ + SMESH::ListOfGroups MakeGroupsOfBadInputElements( in SMESH_Mesh theMesh, + in short theSubShapeID, + in string theGroupName) + raises ( SALOME::SALOME_Exception ); + + /*! + * Return indices of faces, edges and vertices of given sub-shapes * within theMainObject */ long_array GetSubShapesId( in GEOM::GEOM_Object theMainObject, @@ -383,6 +415,30 @@ module SMESH * \brief Get names of meshes defined in file with the specified name. */ string_array GetMeshNames(in string theFileName); + + /*! + * \brief Moves objects to the specified position + * \param what objects being moved + * \param where parent object where objects are moved to + * \param row position in the parent object's children list at which objects are moved + * + * This function is used in the drag-n-drop functionality. + */ + void Move( in sobject_list what, + in SALOMEDS::SObject where, + in long row ); + /*! + * Returns true if algorithm can be used to mesh a given geometry + * \param theAlgoType - the algorithm type + * \param theLibName - a name of the Plug-in library implementing the algorithm + * \param theShapeObject - the geometry to mesh + * \param toCheckAll - if \c True, returns \c True if all shapes are meshable, + * else, returns \c True if at least one shape is meshable + */ + boolean IsApplicable( in string theAlgoType, + in string theLibName, + in GEOM::GEOM_Object theShapeObject, + in boolean toCheckAll ); }; };