X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_SWIG_WITHIHM%2FlibSMESH_Swig.i;h=cb5cc2200bfb49789f0875b97a17e5fd0c593de4;hp=8c414fc0d0b1df8b63ba4f54c545e340e82c464f;hb=ad3cb4c93852dbc834d7075c087bbc749197454b;hpb=6bac08c1a81f34d3f21c550bd92f83654b2546a5 diff --git a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i index 8c414fc0d..cb5cc2200 100644 --- a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i +++ b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -47,6 +47,62 @@ } %include "typemaps.i" +%include "std_vector.i" +%include "std_pair.i" + +namespace std { + + %template(VectorInt) vector; + %template() std::pair; + %template(PairVector) std::vector >; +}; + + +/* Selection mode enumeration (corresponds to constants from the SALOME_Selection.h) */ +enum SelectionMode + { + Undefined = -1, + Node = 0, + Cell, + EdgeOfCell, + Edge, + Face, + Volume, + Actor, + Elem0D, + Ball + }; + +typedef struct +{ + double r, g, b; + int delta; +} surfaceColorStruct; + +typedef struct +{ + double r, g, b; + int delta; +} volumeColorStruct; + +typedef struct +{ + double r, g, b; +} edgeColorStruct; + +typedef struct +{ + double r, g, b; +} nodeColorStruct; + +struct actorAspect +{ + surfaceColorStruct surfaceColor; + volumeColorStruct volumeColor; + edgeColorStruct edgeColor; + nodeColorStruct nodeColor; + double opacity; +}; class SMESH_Swig { @@ -76,4 +132,22 @@ class SMESH_Swig void CreateAndDisplayActor( const char* Mesh_Entry ); void EraseActor( const char* Mesh_Entry, const bool allViewers = false ); + void UpdateActor( const char* Mesh_Entry ); + + void setSelectionMode( SelectionMode selectionMode); + std::vector getSelected( const char* Mesh_Entry ); + std::vector > getSelectedEdgeOfCell( const char* Mesh_Entry ); + + actorAspect GetActorAspect(const char* Mesh_Entry, int viewId = 0 ); + void SetActorAspect( const actorAspect& actorPres, const char* Mesh_Entry, int viewId = 0 ); + + void setSelectionMode( SelectionMode selectionMode); + std::vector getSelected( const char* Mesh_Entry ); + + // --------------------- for the test purposes ----------------------- + SelectionMode getSelectionMode(); + void select( const char *id, std::vector ids, bool append = false ); + void select( const char *id, int id1, bool append = false ); + void select( const char *id, std::vector >, bool apend = false ); + };