Merge branch 'V8_5_asterstudy'

This commit is contained in:
vsr 2018-05-31 17:16:47 +03:00
commit f513b3c72c
8 changed files with 2160 additions and 1128 deletions

View File

@ -33,7 +33,7 @@ ENDIF(WIN32)
STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC)
SET(${PROJECT_NAME_UC}_MAJOR_VERSION 8)
SET(${PROJECT_NAME_UC}_MINOR_VERSION 4)
SET(${PROJECT_NAME_UC}_MINOR_VERSION 5)
SET(${PROJECT_NAME_UC}_PATCH_VERSION 0)
SET(${PROJECT_NAME_UC}_VERSION
${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
@ -81,7 +81,7 @@ OPTION(SALOME_SMESH_USE_CGNS "Enable import/export to CGNS format" OFF)
OPTION(SALOME_SMESH_USE_TBB "Enable parallel computation" OFF)
OPTION(SALOME_SMESH_DYNLOAD_LOCAL "Load plug-ins' symbols locally (Linux only)" ON)
CMAKE_DEPENDENT_OPTION(SALOME_SMESH_BUILD_FRENCH_DOC "Generate SALOME SMESH French documentation" OFF
"NOT SALOME_BUILD_DOC" OFF)
"SALOME_BUILD_DOC" OFF)
IF(SALOME_SMESH_DYNLOAD_LOCAL)
ADD_DEFINITIONS(-DDYNLOAD_LOCAL)
@ -132,6 +132,7 @@ IF(SALOME_BUILD_TESTS)
ENDIF()
IF(SALOME_BUILD_DOC)
FIND_PACKAGE(SalomeDoxygen)
SET(Sphinx_EXTENSIONS sphinxcontrib.napoleon)
FIND_PACKAGE(SalomeSphinx)
SALOME_LOG_OPTIONAL_PACKAGE(Doxygen SALOME_BUILD_DOC)
SALOME_LOG_OPTIONAL_PACKAGE(Sphinx SALOME_BUILD_DOC)

View File

@ -19,7 +19,7 @@
INCLUDE(tests.set)
SET(SALOME_TEST_DRIVER "$ENV{ABSOLUTE_APPLI_PATH}/bin/salome/appliskel/salome_test_driver.py")
SET(SALOME_TEST_DRIVER "$ENV{KERNEL_ROOT_DIR}/bin/salome/appliskel/salome_test_driver.py")
SET(COMPONENT_NAME SMESH)
SET(TIMEOUT 300)

View File

@ -23,9 +23,13 @@ import sys, os
# Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
extensions = ['sphinx.ext.autodoc','sphinx.ext.autosummary',
'sphinxcontrib.napoleon'
]
extensions = ['sphinx.ext.autodoc','sphinx.ext.autosummary']
try:
import sphinxcontrib.napoleon
extensions += ['sphinxcontrib.napoleon']
except:
pass
#add pdfbuilder to build a pdf with rst2pdf
#extensions = ['rst2pdf.pdfbuilder']

View File

@ -492,7 +492,7 @@ SALOMEDS::SObject_ptr SMESH_Gen_i::PublishInStudy(SALOMEDS::Study_ptr theStudy
// Publishing a hypothesis or algorithm
SMESH::SMESH_Hypothesis_var aHyp = SMESH::SMESH_Hypothesis::_narrow( theIOR );
if ( aSO->_is_nil() && !aHyp->_is_nil() )
aSO = PublishHypothesis( theStudy, aHyp );
aSO = PublishHypothesis( theStudy, aHyp, theName );
// Publishing a group
SMESH::SMESH_GroupBase_var aGroup = SMESH::SMESH_GroupBase::_narrow(theIOR);

File diff suppressed because it is too large Load Diff

View File

@ -17,135 +17,199 @@
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// SMESH SMESH : GUI for SMESH component
// File : libSMESH_Swig.h
// Author : Nicolas REJNERI, Open CASCADE S.A.S.
//
#ifndef LIBSMESH_SWIG_H
#define LIBSMESH_SWIG_H
#ifdef WIN32
#if defined SMESH_SWIG_EXPORTS || defined _libSMESH_Swig_EXPORTS
#define SMESH_SWIG_EXPORT __declspec( dllexport )
#define SMESH_SWIG_EXPORT __declspec(dllexport)
#else
#define SMESH_SWIG_EXPORT __declspec( dllimport )
#define SMESH_SWIG_EXPORT __declspec(dllimport)
#endif
#else
#define SMESH_SWIG_EXPORT
#endif
// IDL includes
#include <SALOMEconfig.h>
#include CORBA_SERVER_HEADER(SALOMEDS)
//std includes
#include <SVTK_Selection.h>
#include <vector>
#include <utility>
#include <SVTK_Selection.h>
#include <SVTK_Selection.h>
// See SMESH_Actor.h
typedef enum
{
Undefined = -1,
Node = NodeSelection,
Cell = CellSelection,
EdgeOfCell = EdgeOfCellSelection,
Edge = EdgeSelection,
Face = FaceSelection,
Volume = VolumeSelection,
Actor = ActorSelection,
Elem0D = Elem0DSelection,
Ball = BallSelection
} SelectionMode;
{
EntityNone = 0x00,
Entity0d = 0x01, // SMESH_Actor::e0DElements
EntityEdges = 0x02, // SMESH_Actor::eEdges
EntityFaces = 0x04, // SMESH_Actor::eFaces
EntityVolumes = 0x08, // SMESH_Actor::eVolumes
EntityBalls = 0x10, // SMESH_Actor::eBallElem
EntityAll = 0xff // SMESH_Actor::eAllEntity
} EntityMode;
typedef struct
// See SVTK_Selection.h
typedef enum
{
Undefined = -1,
Node = NodeSelection,
Cell = CellSelection,
EdgeOfCell = EdgeOfCellSelection,
Edge = EdgeSelection,
Face = FaceSelection,
Volume = VolumeSelection,
Actor = ActorSelection,
Elem0D = Elem0DSelection,
Ball = BallSelection
} SelectionMode;
// See SMESH_Actor.h
typedef enum
{
UndefinedMode = -1,
PointMode = 0, // SMESH_Actor::ePoint
EdgeMode, // SMESH_Actor::eEdge
SurfaceMode // SMESH_Actor::eSurface
} DisplayMode;
struct ColorData
{
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;
public:
ColorData();
};
struct BicolorData
{
double r, g, b;
int delta;
public:
BicolorData();
};
struct Properties
{
ColorData nodeColor;
int markerType;
int markerScale;
ColorData edgeColor;
int edgeWidth;
BicolorData surfaceColor;
BicolorData volumeColor;
ColorData elem0dColor;
int elem0dSize;
ColorData ballColor;
double ballScale;
ColorData outlineColor;
int outlineWidth;
ColorData orientationColor;
double orientationScale;
bool orientation3d;
double shrinkFactor;
double opacity;
public:
Properties();
};
typedef ColorData nodeColorStruct; // deprecated
typedef ColorData edgeColorStruct; // deprecated
typedef BicolorData surfaceColorStruct; // deprecated
typedef BicolorData volumeColorStruct; // deprecated
typedef Properties actorAspect; // deprecated
class SMESH_SWIG_EXPORT SMESH_Swig
{
public:
SMESH_Swig();
~SMESH_Swig();
void Init( int );
// Initialization =============================================
const char* AddNewMesh( const char* );
void Init(int); // deprecated
const char* AddNewHypothesis( const char* );
const char* AddNewAlgorithms( const char* );
// Publishing =================================================
void SetShape( const char*, const char* );
const char* publish(const char*, const char* = 0);
void rename(const char*, const char*);
void SetHypothesis( const char*, const char* );
void SetAlgorithms( const char*, const char* );
const char* AddNewMesh(const char*, const char* = 0); // deprecated
const char* AddNewHypothesis(const char*, const char* = 0); // deprecated
const char* AddNewAlgorithm(const char*, const char* = 0); // deprecated
const char* AddNewAlgorithms(const char*, const char* = 0); // deprecated
void UnSetHypothesis( const char* );
void SetShape(const char*, const char*); // deprecated
const char* AddSubMesh( const char*, const char*, int );
const char* AddSubMeshOnShape( const char*, const char*, const char*, int );
void SetHypothesis(const char*, const char*); // deprecated
void SetAlgorithms(const char*, const char*); // deprecated
void CreateAndDisplayActor( const char* );
void UnSetHypothesis(const char*); // deprecated
void SetName( const char*, const char* );
const char* AddSubMesh(const char*, const char*, int, const char* = 0); // deprecated
const char* AddSubMeshOnShape(const char*, const char*, const char*, int, const char* = 0); // deprecated
void EraseActor( const char*, const bool allViewers = false );
void SetName(const char*, const char*); // deprecated
void UpdateActor( const char* Mesh_Entry );
void SetMeshIcon(const char*, const bool, const bool); // deprecated
/*!
* \brief Set mesh icon according to compute status
* \param Mesh_Entry - entry of a mesh
* \param isComputed - is mesh computed or not
*/
void SetMeshIcon( const char*, const bool, const bool );
// Visualization =============================================
actorAspect GetActorAspect(const char* Mesh_Entry, int viewId = 0 );
void SetActorAspect( const actorAspect& actorPres, const char* Mesh_Entry, int viewId = 0 );
void display(const char*, int = 0, bool = true);
void erase(const char*, int = 0, bool = true);
void update(const char*);
void setSelectionMode( SelectionMode selectionMode );
std::vector<int> getSelected( const char* Mesh_Entry );
std::vector<std::pair<int, int> > getSelectedEdgeOfCell( const char* Mesh_Entry );
Properties properties(const char*, int = 0);
void setProperties(const char*, const Properties&, int = 0);
// --------------------- for the test purposes -----------------------
SelectionMode getSelectionMode();
void select( const char *id, std::vector<int> ids, bool append = false );
void select( const char *id, int id1, bool append = false );
void select( const char *id, std::vector<std::pair<int,int> >, bool apend = false );
bool nodesNumbering(const char*, int = 0);
void setNodesNumbering(const char*, bool, int = 0);
bool elementsNumbering(const char*, int = 0);
void setElementsNumbering(const char*, bool, int = 0);
DisplayMode displayMode(const char*, int = 0);
void setDisplayMode(const char*, DisplayMode, int = 0);
bool shrinkMode(const char*, int = 0);
void setShrinkMode(const char*, bool, int = 0);
double opacity(const char*, int = 0);
void setOpacity(const char*, double, int = 0);
bool isOrientationShown(const char*, int = 0);
void setOrientationShown(const char*, bool, int = 0);
int entitiesShown(const char*, int = 0);
void setEntitiesShown(const char*, int, int = 0);
bool isEntityShown(const char*, EntityMode, int = 0);
void setEntityShown(const char*, EntityMode, bool, int = 0);
void CreateAndDisplayActor(const char*); // deprecated
void EraseActor(const char*, const bool = false); // deprecated
void UpdateActor(const char* Mesh_Entry); // deprecated
actorAspect GetActorAspect(const char*, int = 0); // deprecated
void SetActorAspect(const actorAspect&, const char*, int = 0); // deprecated
// Selection =================================================
SelectionMode getSelectionMode(int = 0);
void setSelectionMode(SelectionMode, int = 0);
std::vector<int> getSelected(const char*);
std::vector<std::pair<int, int> > getSelectedEdgeOfCell(const char*);
void select(const char*, std::vector<int>, bool = false);
void select(const char*, int, bool = false);
void select(const char*, std::vector<std::pair<int,int> >, bool = false);
private:
SALOMEDS::Study_var myStudy;
SALOMEDS::StudyBuilder_var myStudyBuilder;
SALOMEDS::SComponent_var mySComponentMesh;
void init();
private:
int myCachedStudyId;
};
#endif // LIBSMESH_SWIG_H

View File

@ -17,10 +17,6 @@
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// SMESH SMESHGUI : GUI for SMESH component
// File : libSMESH_Swig.i
// Author : Nicolas REJNERI, Open CASCADE S.A.S.
//
%module libSMESH_Swig
%{
@ -38,7 +34,7 @@
// Py_END_ALLOW_THREADS
~PyAllowThreadsGuard() { PyEval_RestoreThread(_save); }
private:
PyThreadState *_save;
PyThreadState* _save;
};
PyAllowThreadsGuard guard;
@ -50,104 +46,176 @@
%include "std_vector.i"
%include "std_pair.i"
namespace std {
%template(VectorInt) vector<int>;
%template() std::pair<int,int>;
%template(PairVector) std::vector<std::pair<int,int> >;
namespace std
{
%template(VectorInt) vector<int>;
%template() std::pair<int,int>;
%template(PairVector) std::vector<std::pair<int,int> >;
};
// See SMESH_Actor.h
typedef enum
{
EntityNone = 0x00,
Entity0d = 0x01, // SMESH_Actor::e0DElements
EntityEdges = 0x02, // SMESH_Actor::eEdges
EntityFaces = 0x04, // SMESH_Actor::eFaces
EntityVolumes = 0x08, // SMESH_Actor::eVolumes
EntityBalls = 0x10, // SMESH_Actor::eBallElem
EntityAll = 0xff // SMESH_Actor::eAllEntity
} EntityMode;
/* Selection mode enumeration (corresponds to constants from the SALOME_Selection.h) */
// See SVTK_Selection.h
enum SelectionMode
{
Undefined = -1,
Node = 0,
Cell,
EdgeOfCell,
Edge,
Face,
Volume,
Actor,
Elem0D,
Ball
};
{
Undefined = -1,
Node = 0, // NodeSelection
Cell, // CellSelection
EdgeOfCell, // EdgeOfCellSelection
Edge, // EdgeSelection
Face, // FaceSelection
Volume, // VolumeSelection
Actor, // ActorSelection
Elem0D, // Elem0DSelection
Ball // BallSelection
};
typedef struct
// See SMESH_Actor.h
enum DisplayMode
{
UndefinedMode = -1,
PointMode = 0, // SMESH_Actor::ePoint
EdgeMode, // SMESH_Actor::eEdge
SurfaceMode // SMESH_Actor::eSurface
};
struct ColorData
{
double r, g, b;
};
struct BicolorData
{
double r, g, b;
int delta;
} surfaceColorStruct;
};
typedef struct
struct Properties
{
double r, g, b;
int delta;
} volumeColorStruct;
ColorData nodeColor;
int markerType;
int markerScale;
typedef struct
{
double r, g, b;
} edgeColorStruct;
ColorData edgeColor;
int edgeWidth;
typedef struct
{
double r, g, b;
} nodeColorStruct;
BicolorData surfaceColor;
BicolorData volumeColor;
struct actorAspect
{
surfaceColorStruct surfaceColor;
volumeColorStruct volumeColor;
edgeColorStruct edgeColor;
nodeColorStruct nodeColor;
ColorData elem0dColor;
int elem0dSize;
ColorData ballColor;
double ballScale;
ColorData outlineColor;
int outlineWidth;
ColorData orientationColor;
double orientationScale;
bool orientation3d;
double shrinkFactor;
double opacity;
};
typedef ColorData nodeColorStruct; // deprecated
typedef ColorData edgeColorStruct; // deprecated
typedef BicolorData surfaceColorStruct; // deprecated
typedef BicolorData volumeColorStruct; // deprecated
typedef Properties actorAspect; // deprecated
class SMESH_Swig
{
public:
public:
SMESH_Swig();
~SMESH_Swig();
void Init(int studyID);
// Initialization =============================================
const char* AddNewMesh(const char* IOR);
const char* AddNewHypothesis(const char* IOR);
const char* AddNewAlgorithms(const char* IOR);
void Init(int); // deprecated
void SetShape(const char* ShapeEntry, const char* MeshEntry);
// Publishing =================================================
void SetHypothesis(const char* Mesh_Or_SubMesh_Entry, const char* Hypothesis_Entry);
void SetAlgorithms(const char* Mesh_Or_SubMesh_Entry, const char* Algorithms_Entry);
const char* publish(const char*, const char* = 0);
void rename(const char*, const char*);
void UnSetHypothesis(const char* Applied_Hypothesis_Entry );
const char* AddNewMesh(const char*, const char* = 0); // deprecated
const char* AddNewHypothesis(const char*, const char* = 0); // deprecated
const char* AddNewAlgorithms(const char*, const char* = 0); // deprecated
const char* AddNewAlgorithm(const char*, const char* = 0); // deprecated
const char* AddSubMesh (const char* Mesh_Entry, const char* SM_IOR, int ST);
const char* AddSubMeshOnShape (const char* Mesh_Entry, const char* GeomShape_Entry, const char* SM_IOR, int ST);
void SetShape(const char*, const char*); // deprecated
void SetName(const char* Entry, const char* Name);
void SetHypothesis(const char*, const char*); // deprecated
void SetAlgorithms(const char*, const char*); // deprecated
void SetMeshIcon(const char* Mesh_Entry, const bool isComputed, const bool isEmpty);
void UnSetHypothesis(const char*); // deprecated
void CreateAndDisplayActor( const char* Mesh_Entry );
void EraseActor( const char* Mesh_Entry, const bool allViewers = false );
void UpdateActor( const char* Mesh_Entry );
const char* AddSubMesh(const char*, const char*, int, const char* = 0); // deprecated
const char* AddSubMeshOnShape (const char*, const char*, const char*, int, const char* = 0); // deprecated
void setSelectionMode( SelectionMode selectionMode);
std::vector<int> getSelected( const char* Mesh_Entry );
std::vector<std::pair<int,int> > getSelectedEdgeOfCell( const char* Mesh_Entry );
void SetName(const char*, const char*); // deprecated
actorAspect GetActorAspect(const char* Mesh_Entry, int viewId = 0 );
void SetActorAspect( const actorAspect& actorPres, const char* Mesh_Entry, int viewId = 0 );
void SetMeshIcon(const char*, const bool, const bool); // deprecated
void setSelectionMode( SelectionMode selectionMode);
std::vector<int> getSelected( const char* Mesh_Entry );
// Visualization =============================================
// --------------------- for the test purposes -----------------------
SelectionMode getSelectionMode();
void select( const char *id, std::vector<int> ids, bool append = false );
void select( const char *id, int id1, bool append = false );
void select( const char *id, std::vector<std::pair<int,int> >, bool apend = false );
void display(const char*, int = 0, bool = true);
void erase(const char*, int = 0, bool = true);
void update(const char*);
Properties properties(const char*, int = 0);
void setProperties(const char*, const Properties&, int = 0);
bool nodesNumbering(const char*, int = 0);
void setNodesNumbering(const char*, bool, int = 0);
bool elementsNumbering(const char*, int = 0);
void setElementsNumbering(const char*, bool, int = 0);
DisplayMode displayMode(const char*, int = 0);
void setDisplayMode(const char*, DisplayMode, int = 0);
bool shrinkMode(const char*, int = 0);
void setShrinkMode(const char*, bool, int = 0);
double opacity(const char*, int = 0);
void setOpacity(const char*, double, int = 0);
bool isOrientationShown(const char*, int = 0);
void setOrientationShown(const char*, bool, int = 0);
int entitiesShown(const char*, int = 0);
void setEntitiesShown(const char*, int, int = 0);
bool isEntityShown(const char*, EntityMode, int = 0);
void setEntityShown(const char*, EntityMode, bool, int = 0);
void CreateAndDisplayActor(const char*); // deprecated
void EraseActor(const char*, const bool = false); // deprecated
void UpdateActor(const char*); // deprecated
actorAspect GetActorAspect(const char*, int = 0); // deprecated
void SetActorAspect(const actorAspect&, const char*, int = 0); // deprecated
// Selection =================================================
SelectionMode getSelectionMode(int = 0);
void setSelectionMode(SelectionMode, int = 0);
std::vector<int> getSelected(const char*);
std::vector<std::pair<int,int> > getSelectedEdgeOfCell(const char*);
void select(const char*, std::vector<int>, bool = false);
void select(const char*, int, bool = false);
void select(const char*, std::vector<std::pair<int,int> >, bool = false);
};

View File

@ -26,7 +26,7 @@ ADD_SUBDIRECTORY(MacMesh)
IF(SALOME_BUILD_GUI)
ADD_SUBDIRECTORY(MGCleanerPlug)
ADD_SUBDIRECTORY(YamsPlug)
ADD_SUBDIRECTORY(ZCracksPlug)
# ADD_SUBDIRECTORY(ZCracksPlug)
ENDIF(SALOME_BUILD_GUI)
# scripts / static