]> SALOME platform Git repositories - plugins/blsurfplugin.git/blobdiff - src/GUI/BLSURFPluginGUI_HypothesisCreator.h
Salome HOME
updated copyright message
[plugins/blsurfplugin.git] / src / GUI / BLSURFPluginGUI_HypothesisCreator.h
index 9533eecb05e1615be54812ab29cbf0f0ee7e4e18..4725cadcfac7b27c849fd36592b0a46d6fed797c 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2020  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2023  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -170,7 +170,7 @@ typedef struct
   double  myAnisotropicRatio, myTinyEdgeLength, myTinyEdgeOptimisLength, myBadElementAspectRatio, myCorrectSurfaceIntersectionMaxCost;
   bool    myOptimizeMesh, myQuadraticMesh;
   bool    mySmpsurface,mySmpedge,mySmppoint,myEnforcedVertex,myInternalEnforcedVerticesAllFaces;
-  long    myElementType;
+  int     myElementType;
   bool    myUseSurfaceProximity;
   int     myNbSurfaceProximityLayers;
   double  mySurfaceProximityRatio;
@@ -186,7 +186,7 @@ typedef struct
   TGroupNameEnfVertexListMap groupNameEnfVertexListMap;
   */
   TPreCadPeriodicityVector preCadPeriodicityVector;
-  QStringList hyperpatches;
+  QStringList hyperpatches, hyperEntries;
   QString myName;
 } BlsurfHypothesisData;
 
@@ -242,6 +242,11 @@ protected slots:
   void                onSelectEnforcedVertex();
   void                clearEnforcedVertexWidgets();
   void                onInternalVerticesClicked(int);
+  // Enforced mesh tab
+  void                onAddEnforcedMesh();
+  void                onRemoveEnforcedMesh();
+  void                onEnforcedMeshSelected();
+  void                onEnfMeshTableSelected();
   // Periodicity tab
   void                onPeriodicityByVerticesChecked(bool);
   void                onAddPeriodicity();
@@ -271,9 +276,11 @@ private:
   static LightApp_SelectionMgr* selectionMgr();
   void                avoidSimultaneousSelection(ListOfWidgets &myCustomWidgets) const;
   void                AddPreCadSequenceToVector(BlsurfHypothesisData& h_data, BLSURFPlugin::TPeriodicityList_var preCadFacePeriodicityVector, bool onFace) const;
-  void                addHyPatchToTable(const QString& tags);
+  void                addHyPatchToTable(const QString& tags, const QString& entries);
   bool                hasGeom() const;
 
+  void                addEnforcedMesh( SMESH::SMESH_IDSource_ptr mesh, const QString& groupName );
+
 private:
   
   QTabWidget*             myTabWidget;
@@ -336,6 +343,17 @@ private:
   QCheckBox           *myInternalEnforcedVerticesAllFaces;
   QLineEdit           *myInternalEnforcedVerticesAllFacesGroup;
 
+
+  // Enforced meshes
+  QWidget*             myEnfMeshGroup;
+  StdMeshersGUI_ObjectReferenceParamWdg *myEnfMeshWdg;
+  QTableWidget*        myEnfMeshTableWdg;
+  QLineEdit*           myEnforcedGroupName;
+  QPushButton*         myAddEnfMeshButton;
+  QPushButton*         myRemoveEnfMeshButton;
+
+
+
   // map =  entry , size map
   QMap<QString, QString>          mySMPMap;           // Map <face entry, size>
   QMap<QString, TAttractorVec >   myATTMap;           // Map <face entry, att. entry, etc>
@@ -396,7 +414,7 @@ private:
 
 class EnforcedTreeWidgetDelegate : public QItemDelegate
 {
-    Q_OBJECT
+  Q_OBJECT
 
 public:
   EnforcedTreeWidgetDelegate(QObject *parent = 0);
@@ -409,7 +427,7 @@ public:
                     const QModelIndex &index) const;
 
   void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option,
-                    const QModelIndex &index) const;
+                            const QModelIndex &index) const;
 
   bool vertexExists(QAbstractItemModel *model, const QModelIndex &index, QString value) const;
 };