]> 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 5d609bb1ae48e1094396e42c735cff52f549fb3e..4725cadcfac7b27c849fd36592b0a46d6fed797c 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2019  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,13 @@ 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;
+  bool    myUseVolumeProximity;
+  int     myNbVolumeProximityLayers;
+  double  myVolumeProximityRatio;
   // bool    myPreCADMergeEdges, myPreCADProcess3DTopology, myPreCADDiscardInput;
 //   bool    myGMFFileMode;
   std::string myGMFFileName, myInternalEnforcedVerticesAllFacesGroup;
@@ -180,7 +186,7 @@ typedef struct
   TGroupNameEnfVertexListMap groupNameEnfVertexListMap;
   */
   TPreCadPeriodicityVector preCadPeriodicityVector;
-  QStringList hyperpatches;
+  QStringList hyperpatches, hyperEntries;
   QString myName;
 } BlsurfHypothesisData;
 
@@ -236,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();
@@ -265,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;
@@ -330,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>
@@ -390,12 +414,12 @@ private:
 
 class EnforcedTreeWidgetDelegate : public QItemDelegate
 {
-    Q_OBJECT
+  Q_OBJECT
 
 public:
   EnforcedTreeWidgetDelegate(QObject *parent = 0);
 
-  QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option,
+  QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem & option,
                         const QModelIndex &index) const;
 
   void setEditorData(QWidget *editor, const QModelIndex &index) const;
@@ -403,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;
 };