X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FSMESH_Group.idl;h=ee6d0f3916ecda574ca3b9984818e6a5a1e417cf;hb=c5e983833f160443bd4ac2bbf2082b64e3458a13;hp=9842df2f6f682ebace0a6870c513cfb17b73232e;hpb=c3bf92bd87b770fd81631a3853f7f5bb1ac6a4e8;p=modules%2Fsmesh.git diff --git a/idl/SMESH_Group.idl b/idl/SMESH_Group.idl index 9842df2f6..ee6d0f391 100644 --- a/idl/SMESH_Group.idl +++ b/idl/SMESH_Group.idl @@ -14,7 +14,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -22,20 +22,24 @@ // Author : Sergey ANIKIN, OCC // $Header$ + #ifndef _SMESH_GROUP_IDL_ #define _SMESH_GROUP_IDL_ #include "SALOME_Exception.idl" #include "SALOME_GenericObj.idl" +#include "SALOMEDS_Attributes.idl" #include "SMESH_Mesh.idl" module SMESH { + interface Predicate; + /*! - * SMESH_Group: interface of group object + * SMESH_Group: base interface of group object */ - interface SMESH_Group : SALOME::GenericObj + interface SMESH_GroupBase : SALOME::GenericObj, SMESH_IDSource { /*! * Sets group name @@ -62,21 +66,11 @@ module SMESH */ boolean IsEmpty(); - /*! - * Clears the group's contents - */ - void Clear(); - /*! * returns true if the group contains an element with ID == */ boolean Contains( in long elem_id ); - /*! - * Adds elements to the group - */ - long Add( in long_array elem_ids ); - /*! * Returns ID of an element at position */ @@ -88,15 +82,64 @@ module SMESH long_array GetListOfID(); /*! - * Removes elements from the group + * Returns the mesh object this group belongs to */ - long Remove( in long_array elem_ids ); + SMESH_Mesh GetMesh(); /*! - * Returns the mesh object this group belongs to + * Sets group color */ - SMESH_Mesh GetMesh(); + void SetColor(in SALOMEDS::Color theColor); + + /*! + * Returns group color + */ + SALOMEDS::Color GetColor(); + + /*! + * Sets group color number + * (corresponds to the "hue" parameter of the color - must be in range [0, 360]) + */ + void SetColorNumber( in long color ); + + /*! + * Returns group color number (obsolete - use GetColor instead) + * (corresponds to the "hue" parameter of the color - must be in range [0, 360]) + */ + long GetColorNumber(); }; + + /*! + * SMESH_Group: interface of group object + */ + interface SMESH_Group : SMESH_GroupBase + { + /*! + * Clears the group's contents + */ + void Clear(); + + /*! + * Adds elements to the group + */ + long Add( in long_array elem_ids ); + long AddByPredicate( in Predicate thePredicate ); + + /*! + * Removes elements from the group + */ + long Remove( in long_array elem_ids ); + long RemoveByPredicate( in Predicate thePredicate ); + + }; + /*! + * SMESH_Group: interface of group object linked to geometry + */ + interface SMESH_GroupOnGeom : SMESH_GroupBase + { + GEOM::GEOM_Object GetShape(); + }; + };