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=73c08a5f1efc1faa930b6784887641c84a937496;hb=ad3cb4c93852dbc834d7075c087bbc749197454b;hpb=c98d9fcd7f02c1f1f5c24dd3e709ed75228d66c4 diff --git a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i index 73c08a5f1..cb5cc2200 100644 --- a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i +++ b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.i @@ -48,16 +48,21 @@ %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 +enum SelectionMode { - Node, + Undefined = -1, + Node = 0, Cell, EdgeOfCell, Edge, @@ -68,6 +73,37 @@ enum 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 { public: @@ -96,10 +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 ----------------------- - int getSelectionMode(); + 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 ); };