Commit Graph

769 Commits

Author SHA1 Message Date
eap
e0f019ccf9 Compute Progress bar: ignore sub-meshes that are NOT_READY to compute 2013-07-08 11:27:16 +00:00
eap
8ead976689 Compute Progress bar
SMESH_subMeshIteratorPtr getDependsOnIterator(const bool includeSelf,
-                                                const bool complexShapeFirst) const;
+                                                const bool complexShapeFirst=false) const;

+  int GetComputeCost() const;

   TopoDS_Shape getCollection(SMESH_Gen * theGen,
                              SMESH_Algo* theAlgo,
                              bool &      theSubComputed,
                              bool &      theSubFailed,
+                             int  &      theComputeCost);

+  int                   _computeCost; // how costly is to compute this sub-mesh
2013-07-03 16:12:38 +00:00
eap
ffa2f0be82 Compute Progress bar
+  double GetComputeProgress() const;
+  SMESH_Hypothesis * GetHypothesis(const int aHypID) const;
2013-07-03 16:10:31 +00:00
eap
1481fb61da - std::map < int, SMESH_Algo * >_mapAlgo;
-  std::map < int, SMESH_0D_Algo * >_map0D_Algo;
-  std::map < int, SMESH_1D_Algo * >_map1D_Algo;
-  std::map < int, SMESH_2D_Algo * >_map2D_Algo;
-  std::map < int, SMESH_3D_Algo * >_map3D_Algo;
2013-07-03 16:09:54 +00:00
eap
fad96c2870 Compute Progress bar
+  virtual double GetProgress() const;
+  double GetProgressByTic() const;
+  int& GetComputeCost() { return _computeCost; }

+  int           _computeCost;     //!< "compute cost" of shapes being Compute()d
+  int           _progressTic;     //!< counter of calls from SMESH_Mesh::GetComputeProgress()
+  double        _progress;        //!< progress of Compute() [0.,1.]
2013-07-03 16:09:28 +00:00
eap
fc8ad974ab SMESH_Gen::_map1D_Algo no longer exists 2013-07-03 16:07:54 +00:00
eap
ed5bf36e41 1) 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
+  static CORBA::Long*       GetTemporaryIDs( SMESH::SMESH_IDSource_ptr& idSource, int& nbIds );
+  virtual SMESH::long_array* GetNbElementsByType();
2013-07-03 16:06:14 +00:00
eap
89edbafa37 1) 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
+  static CORBA::Long*       GetTemporaryIDs( SMESH::SMESH_IDSource_ptr& idSource, int& nbIds );
2013-07-03 16:05:46 +00:00
eap
69da5c7991 1) 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
+  virtual SMESH::long_array* GetNbElementsByType();

+  static SMDS_ElemIteratorPtr GetElements(SMESH::SMESH_IDSource_ptr obj,
+                                          SMESH::ElementType        type);

2) Compute Progress bar

+  CORBA::Double GetComputeProgress();
2013-07-03 16:05:28 +00:00
eap
95a58b5ecf 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
+  virtual SMESH::long_array* GetNbElementsByType();
2013-07-03 16:04:07 +00:00
eap
38e26e89c3 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
interface SMESH_IDSource
   {
+    long    NbSatisfying( in SMESH::SMESH_IDSource obj );

  interface NumericalFunctor: Functor
  {
+    Histogram GetLocalHistogram( in short nbIntervals, in boolean isLogarithmic,
+                                 in SMESH::SMESH_IDSource obj );
2013-07-03 16:03:14 +00:00
eap
7567e381c8 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
Optimization for large meshes
2013-07-03 16:02:20 +00:00
eap
f4b63cd2bd Compute progress bar 2013-07-03 16:01:42 +00:00
eap
49cd1d951a untabify 2013-07-03 16:00:57 +00:00
eap
35035f1212 0022238: Study dump produced by SMESH refers to undefined variable names
void fixFunctorType()
{
+      ASSERT( undef2newItems.rbegin()->first == SMESH::FT_Undefined );
2013-07-02 14:27:15 +00:00
eap
1d05754e58 0022238: Study dump produced by SMESH refers to undefined variable names
Fix CheckObjectPresence() again

+  ASSERT( thePartIndex > 0 );
2013-07-02 13:39:05 +00:00
eap
06ef82c3a7 0022238: Study dump produced by SMESH refers to undefined variable names
Remove "aStudyBuilder.RemoveObjectWithChildren(SO)" for SO whose
creation command was removed or commented
2013-07-02 12:02:33 +00:00
mpa
a58d128175 0020976: EDF 1471 SMESH: New ergonomy to display quality controls 2013-06-27 12:35:43 +00:00
eap
12d456d34e CoTech decision: move MEDWrapper from MED to SMESH 2013-06-25 15:23:19 +00:00
eap
aba3423ef3 Bug: not all fields available after switching from the 3-d to an other constructor
+      myTextLabel2->show();
+      mySelectButton2->show();
+      myLineEdit2->show();
2013-06-25 13:51:49 +00:00
eap
7a8032bb6e -// $Header: 2013-06-25 11:57:48 +00:00
eap
9a3c7509b6 CoTech decision: move MEDWrapper from MED to SMESH
MED.idl no more exists

-      aStr<<"bash -c \""<<getenv("MED_ROOT_DIR")<<"/bin/salome/mprint_version \'"<<theFileName<<"\'\"";
+      aStr<<"bash -c \""<<getenv("SMESH_ROOT_DIR")<<"/bin/salome/mprint_version \'"<<theFileName<<"\'\"";
2013-06-25 11:57:19 +00:00
eap
1500689577 CoTech decision: move MEDWrapper from MED to SMESH
MED.idl no more exists

SALOME_MED::MedFileInfo -> SMESH::MedFileInfo
2013-06-25 11:56:49 +00:00
eap
c5add157d7 CoTech decision: move MEDWrapper from MED to SMESH
MED.idl no more exists
2013-06-25 11:56:05 +00:00
eap
f107c3dc69 CoTech decision: move MEDWrapper from MED to SMESH
MED.idl no more exists

-    ## Gets MED Mesh
-    #  @return an instance of SALOME_MED::MESH
-    #  @ingroup l1_auxiliary
-    def GetMEDMesh(self):
-        return self.mesh.GetMEDMesh()
2013-06-25 11:55:34 +00:00
eap
e33c22a1d1 CoTech decision: move MEDWrapper from MED to SMESH
+	../MEDWrapper/Factory/libMEDWrapper.la \
+	../MEDWrapper/Base/libMEDWrapperBase.la \
+	../MEDWrapper/V2_2/libMEDWrapper_V2_2.la \
2013-06-25 09:14:40 +00:00
eap
d0aa6dbc4a CoTech decision: move MEDWrapper from MED to SMESH
+#include "MED_Factory.hxx"
2013-06-24 10:09:43 +00:00
eap
4fa06a6894 CoTech decision: move MEDWrapper from MED to SMESH
+	-I$(srcdir)/../MEDWrapper/Base \
+	-I$(srcdir)/../MEDWrapper/Factory \

-	$(MED_LDFLAGS) \
-	-lMEDWrapper \
-	-lMEDWrapper_V2_2 \
-        -lSalomeIDLMED \
2013-06-24 10:08:26 +00:00
eap
bc2201e3e0 CoTech decision: move MEDWrapper from MED to SMESH
+	-I$(srcdir)/../MEDWrapper/Base \
2013-06-24 10:07:56 +00:00
eap
d2061a67e9 CoTech decision: move MEDWrapper from MED to SMESH
-#include <MED_Common.hxx>
+#include "MED_Common.hxx"
2013-06-24 10:07:44 +00:00
eap
dbf60372a6 CoTech decision: move MEDWrapper from MED to SMESH
-	$(MED_CXXFLAGS) \

+	-I$(srcdir)/../MEDWrapper/Base \
2013-06-24 10:07:19 +00:00
eap
beb621c883 CoTech decision: move MEDWrapper from MED to SMESH
-  void                SetFile(const std::string& theFileName);
+  virtual void        SetFile(const std::string& theFileName);
2013-06-24 10:06:53 +00:00
eap
7ec258416f CoTech decision: move MEDWrapper from MED to SMESH
+	MEDWrapper \
2013-06-24 10:06:18 +00:00
eap
8cf728d8be Add English translations to unfinished ones 2013-06-21 10:40:14 +00:00
eap
aa99dc4c2c Synchronizing with SMESH_msg_en.ts 2013-06-21 08:36:07 +00:00
eap
bc01f35b88 <source>SMESH_GIGABYTE</source>
-        <translation>%1 G</translation>
+        <translation>%1 GB</translation>
2013-06-21 08:35:49 +00:00
vsr
bcb546c1b2 0022169: [CEA 750] Chose before visualization mesh element type to display 2013-06-21 05:33:07 +00:00
eap
9ad61d3503 Show free RAM while computing the mesh 2013-06-20 14:29:16 +00:00
eap
5dcd4d5ae9 + SUIT_OverrideCursor wc; 2013-06-20 13:05:03 +00:00
kga
14570f80e3 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
fix v1
2013-06-19 07:46:33 +00:00
cvw
51aa4c4a2d deprecated v7 import smesh, studyBuilder modification 2013-06-18 08:34:04 +00:00
cvw
ca40d2121f merge from BR_pluginMGCleaner tag mergeto_v7_main_17jun13 2013-06-18 08:31:15 +00:00
cvw
dc02ba1daa merge from BR_pluginMGCleaner tag mergeto_v7_main_17jun13 2013-06-17 14:56:45 +00:00
cvw
3d7ec410f2 best warning on qlineedit for double value 2013-06-17 14:49:25 +00:00
cvw
071166030d deprecated import smesh smeshBuilder 2013-06-14 11:56:20 +00:00
cvw
3bd0a20a52 add SMESH plugin MGCleaner 2013-06-13 13:50:31 +00:00
cvw
739951e33d bug 2013-06-13 13:47:53 +00:00
cvw
02df1b69aa add SMESH plugin MGCleaner 2013-06-13 13:38:35 +00:00
eap
25008e4a96 21952: EDF 2383 SMESH : Add an option to write planar meshes as 3D meshes in MED files
Correct position of autoDimension in ExportMED()
2013-06-11 11:51:44 +00:00
eap
9a93fe49f9 0022229: [CEA 829] Error "Edge multiple times in surface mesh"
Fix IsReversedSubMesh(), avoid getting uv on a faces at a singularity
point of sphere
2013-06-11 10:24:55 +00:00
eap
4fecefcc2b 0021952: Add an option to write planar meshes as 3D meshes in MED files 2013-06-05 15:13:53 +00:00
eap
dfe28da84c avoid "unused variable" compilation warnings 2013-06-05 10:04:09 +00:00
eap
543e7425c7 avoid compilation warnings 2013-06-05 09:59:53 +00:00
eap
bd8276e43f avoid compilation warnings in release mode 2013-06-05 09:49:03 +00:00
eap
973402fcd3 avoid compilation warnings in release mode 2013-06-05 09:39:43 +00:00
eap
6c81f9a1e5 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh
2013-06-04 15:05:51 +00:00
eap
d98ea3bd2b 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh

Have a separate SMESH_MesherHelper in each TSideFace in order to get a
correct UV on periodic FACE
2013-06-04 15:05:28 +00:00
eap
9ebd1fea41 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh

In GetUVPtStruct(), update normParam when reloading points from a proxy
mesh in a reversed order
2013-06-04 15:03:15 +00:00
eap
dccff92fcb 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh

In ComputeParameters(), more attempts to get a correct result
2013-06-04 15:00:45 +00:00
eap
b61aaf79a6 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh

Redesign onCriterionChanged() to avoid SIGSEGV on a comboItem of an
improper side
2013-06-04 14:59:12 +00:00
eap
a77a5a1a51 0022103: EDF 2550 SMESH : Allow viscous layer with 3D extrusion
= Allow viscous layers on boundary EDGEs of a 2D sub-mesh

Make const GetNodeU()
2013-06-04 14:58:08 +00:00
eap
ea2fec5674 - //_face.Orientation( TopAbs_FORWARD );
+  _face.Orientation( TopAbs_FORWARD ); // 2D logic works only in this case
2013-05-31 11:56:48 +00:00
eap
083e873dfe check orientation when re-loading points from a proxy mesh 2013-05-31 11:56:32 +00:00
eap
65c94961fc take care of a correct orientation (attempt No2 ) 2013-05-30 16:35:57 +00:00
eap
05c6c409ee take care of a correct orientation 2013-05-30 16:28:03 +00:00
eap
708660afc3 "import python files corresponding to plugins" is not needed (since long time) 2013-05-30 14:32:41 +00:00
eap
f72c766475 untabify and
-#ifdef WITHGENERICOBJ
2013-05-30 14:20:52 +00:00
eap
036be279a4 0022104: EDF 2550 SMESH: 2D viscous layer, allow specifying edges with viscous layer
Provide access to QLabel's of parameters:

+  QLabel*                      getLabel(int i) const;

+  ListOfWidgets                myParamLabels;
2013-05-30 14:20:00 +00:00
eap
9f9b06a194 0022104: EDF 2550 SMESH: 2D viscous layer, allow specifying edges with viscous layer
-    def ViscousLayers2D(self, thickness, numberOfLayers, stretchFactor, ignoreEdges=[]):
+    def ViscousLayers2D(self, thickness, numberOfLayers, stretchFactor,
+                        edges=[], isEdgesToIgnore=True ):
2013-05-30 14:18:23 +00:00
eap
62c442d05f 0022104: EDF 2550 SMESH: 2D viscous layer, allow specifying edges with viscous layer 2013-05-30 14:17:56 +00:00
eap
cb2ff0ef70 0022104: EDF 2550 SMESH: 2D viscous layer, allow specifying edges with viscous layer
In addition to implementing IMP, avoid "limiting" _thickness to zero:

-    _thickness = Min( _hyp->GetTotalThickness(), maxPossibleThick );
+    if ( maxPossibleThick > 0. )
+      _thickness = Min( _hyp->GetTotalThickness(), maxPossibleThick );
2013-05-30 14:15:57 +00:00
eap
4a87093dce 0022104: EDF 2550 SMESH: 2D viscous layer, allow specifying edges with viscous layer
+  void SetBndShapes(const std::vector<int>& shapeIds, bool toIgnore);
+  std::vector<int> GetBndShapes() const { return _shapeIds; }
+  bool IsToIgnoreShapes() const { return _isToIgnoreShapes; }

  private:

-  std::vector<int> _ignoreBndShapeIds;
+  std::vector<int> _shapeIds;
+  bool             _isToIgnoreShapes;
2013-05-30 14:14:31 +00:00
inv
a29849f24b Compatibility with gcc 4.1 (centos 5) 2013-05-30 08:02:04 +00:00
eap
abdbef3f20 22222: [CEA 820] GHS3D in salome 7.2.0 ten times slower than in salome 6.6.0
In MakeComputed(), call SMESH_Gen::Compute() with aShapeOnly = true

-    return gen->Compute( *mesh, shape );
+    return gen->Compute( *mesh, shape, /*shapeOnly=*/true );
2013-05-29 15:32:30 +00:00
eap
557a9b549c 22222: [CEA 820] GHS3D in salome 7.2.0 ten times slower than in salome 6.6.0
-      if ( myGen.Compute( myLocMesh, myLocShape, false, aDim, &shapeIds ) )
+      if ( myGen.Compute( myLocMesh, myLocShape, false, false, aDim, &shapeIds ) )

The 3-d parameter aShapeOnly added to SMESH_Gen::Compute()
2013-05-29 15:31:16 +00:00
eap
e884e4cd7e 22222: [CEA 820] GHS3D in salome 7.2.0 ten times slower than in salome 6.6.0
Choose a compute event (COMPUTE or COMPUTE_SUBMESH) depending on an
explicit parameter aShapeOnly.

   bool Compute(::SMESH_Mesh &        aMesh,
                const TopoDS_Shape &  aShape,
+               const bool            aShapeOnly=false,
                const bool            anUpward=false,
                const ::MeshDimension aDim=::MeshDim_3D,
                TSetOfInt*            aShapesId=0);
2013-05-29 15:29:19 +00:00
eap
ccd189545b 0022136: EDF 2345 SMESH: Improving documentation of Quadrangle mapping with the type "Reduced"
1) Send a warning if Reduced transition can't be used.
2) Fix SIGSEGV for the case of nbRows = 1, nbTop = 4, nbBot = 16
2013-05-29 13:41:51 +00:00
eap
cbfe948334 Make ElemEntityType pass nodes through as well 2013-05-28 16:51:03 +00:00
eap
dc9f23c3cd 0022108: EDF 2547 SMESH: Duplicate elements only
+    def DoubleElements(self, theElements, theGroupName=""):
2013-05-28 16:49:24 +00:00
eap
251eb76e54 0022108: EDF 2547 SMESH: Duplicate elements only
Modify UniqueName() to look through all objects (groups, sub-meshes
etc) and not only meshes.
2013-05-28 16:49:06 +00:00
eap
4effbfc0dc 0022108: EDF 2547 SMESH: Duplicate elements only 2013-05-28 16:47:51 +00:00
eap
5cc99bd09d 0022108: EDF 2547 SMESH: Duplicate elements only
1)
+  SMESH::SMESH_Group_ptr DoubleElements(SMESH::SMESH_IDSource_ptr theElements,
+                                        const char*               theGroupName)

2) set mesh to a filter
+  void prepareIdSource(SMESH::SMESH_IDSource_ptr theObject);
2013-05-28 16:46:20 +00:00
eap
2de5e478f7 0022108: EDF 2547 SMESH: Duplicate elements only
1)
+  void _pyGen::addFilterUser( Handle(_pyCommand)& theCmd, const Handle(_pyObject)& user );

2)
+   * \brief Replaces "mesh.GetIDSource([id1,id2])" argument of a given command by
+   *        a list "[id1,id2]" if the list is an accesible type of argument.
+   */
+  void GetIDSourceToList( Handle( _pyCommand)& theCommand )

3)
+   * \brief Replaces "SMESH.PointStruct(x,y,z)" and "SMESH.DirStruct( SMESH.PointStruct(x,y,z))"
+   *        arguments of a given command by a list "[x,y,z]" if the list is accesible
+   *        type of argument.
+   */
+  void StructToList( Handle( _pyCommand)& theCommand )
2013-05-28 16:45:15 +00:00
eap
eb58d6d004 0022108: EDF 2547 SMESH: Duplicate elements only
+  void _pyGen::addFilterUser( Handle(_pyCommand)& theCmd, const Handle(_pyObject)& user );
2013-05-28 16:43:28 +00:00
eap
fec22e7699 0022108: EDF 2547 SMESH: Duplicate elements only
1)
+  void DoubleElements( const TIDSortedElemSet& theElements );

2)
+  template < class ELEM_SET >
+  SMDS_ElemIteratorPtr elemSetIterator( const ELEM_SET& elements );
2013-05-28 16:42:11 +00:00
eap
9d998b2291 0022108: EDF 2547 SMESH: Duplicate elements only
+  void DoubleElements( const TIDSortedElemSet& theElements );
2013-05-28 16:41:32 +00:00
eap
c25ddc7d49 0022108: EDF 2547 SMESH: Duplicate elements only
More filters

+  struct Filter
+  {
+    virtual bool operator()(const SMDS_MeshElement* e) const = 0;
+    ~Filter() {}
+  };
+  struct NonNullFilter: public Filter
2013-05-28 16:41:00 +00:00
eap
c922a9cc64 Fix GetNode() for polyhedron 2013-05-28 16:40:15 +00:00
akl
1227aa421b Fix of 0022218: EDF 2638 SMESH: Issue when importing UNV file:
read the whole line instead of chars set.
2013-05-28 08:52:35 +00:00
eap
d9e7f2c591 0022218: EDF 2638 SMESH: Issue when importing UNV file
-  const size_t theMaxLineLen = 82;
+  const size_t theMaxLineLen = 82; // 80 for text + 2 for "\r\n"
2013-05-28 08:33:47 +00:00
akl
96625f32df Fix of 0022218: EDF 2638 SMESH: Issue when importing UNV file:
set the correct number of symbols to read the given coordinate system data.
2013-05-28 08:16:34 +00:00
vsr
2cbc0e004d Fix regression (SIGSEGV) caused by improvement 0022099 2013-05-27 14:50:33 +00:00
eap
a541c7e70e 0022216: EDF 2613 SMESH: Projection 1D with multi-dimensional algo (Netgen 1D-2D or BLSurf...)
Improve MakeComputed to compute a source sub-mesh using an
 all-dimensional algo of dim greater than dim of the given sub-mesh
2013-05-27 14:04:00 +00:00
eap
6b2c537fcd 0022216: EDF 2613 SMESH: Projection 1D with multi-dimensional algo (Netgen 1D-2D or BLSurf...)
int GetHypotheses(const TopoDS_Shape &                aSubShape,
                   const SMESH_HypoFilter&             aFilter,
                   list <const SMESHDS_Hypothesis * >& aHypList,
                   const bool                          andAncestors,
+                  list< TopoDS_Shape > *              assignedTo=0) const
2013-05-27 14:01:40 +00:00
eap
fce384ca68 Fix a typo nagate -> negate 2013-05-27 14:00:27 +00:00
eap
6a6b89f677 0022216: EDF 2613 SMESH: Projection 1D with multi-dimensional algo (Netgen 1D-2D or BLSurf...)
Fix checkConformIgnoredAlgos() to prevent warning on hiding a local
algo by a local all-dimensional algo of upper dim.
2013-05-27 13:59:56 +00:00
eap
4443257370 Make const GetAppliedHypothesis() and GetUsedHypothesis() 2013-05-27 13:56:30 +00:00
eap
b4fdb7ebde 0022172: [CEA 790] create the groups corresponding to domains
Allow calling Create() and Assign() with geom == None
2013-05-24 12:01:17 +00:00
eap
2c17372e2f 0022172: [CEA 790] create the groups corresponding to domains
Fix treating a warning sent by algorithm.Compute() - print "Warning"
instead of "Error"
2013-05-24 12:00:21 +00:00
eap
401090842f 0022172: [CEA 790] create the groups corresponding to domains
Fix dump of AddHypothesis() in the case w/o geometry
2013-05-24 11:57:38 +00:00