Commit Graph

2439 Commits

Author SHA1 Message Date
eap
d0b4e3c141 22261: EDF 2698 SMESH: Memory leak when displaying 2D quadratic elements as arcs
Fix a leak of a CORBA object
2013-07-23 14:20:46 +00:00
eap
7608df4ad1 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
Make Quality Info dialog look same as Quality Info tab of Mesh Info
dialog: add Help and Dump buttons
2013-07-23 12:35:23 +00:00
eap
eeba8f9c90 Fix treatment of filters after starting usage of AddArgCmd() 2013-07-23 11:41:20 +00:00
eap
60b71b1c6c SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
Avoid leaks of CORBA objects at calling TPythonDump() << _this()
Avoid leaks of SMESH_MeshEditor_i
2013-07-22 15:25:50 +00:00
eap
c9d7623239 Avoid leaks of CORBA objects at calling TPythonDump() << _this() 2013-07-22 14:42:25 +00:00
eap
74d40c014d SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
Now UnRegister(), corresponding to the Register() called by AttributeIOR,
is invoked by an object publisher i.e. by SMESH_Gen_i::publish() but not by GUI
because GUI is unable to track publication of all objects created by the Engine:
for example groups can be created while mesh.Compute() is called.
2013-07-22 14:40:00 +00:00
eap
5b15666f93 untabify 2013-07-22 14:38:09 +00:00
eap
eb3c0cb3a3 SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
Fix loading a group on filter:

+                filter->UnRegister();
2013-07-22 14:37:06 +00:00
eap
26d878fd9f SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
in SetCriteria():

+  aResPredicate->UnRegister();
2013-07-22 14:36:12 +00:00
eap
997c16d89d SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
1) call myFilterDlg->UnRegisterFilters();
2) re-create an actor after converting a group to standalone as a
CORBA object becomes different from that held by the actor
2013-07-22 14:35:30 +00:00
eap
6a8e2f83ff SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
+  void                      UnRegisterFilters();
2013-07-22 14:29:04 +00:00
eap
91084ee58a SALOME Forum bug: sub-mesh removal leads to an Exception in a re-opened study.
Now UnRegister(), corresponding to the Register() called by AttributeIOR,
is invoked by an object publisher i.e. by SMESH_Gen_i::publish() but not by GUI
because GUI is unable to track publication of all objects created by the Engine:
for example groups can be created while mesh.Compute() is called.
2013-07-22 14:27:40 +00:00
eap
e74e528833 In RemoveElement(), find sub-mesh by elt->getshapeId() 2013-07-22 14:08:46 +00:00
inv
5bdade8015 RNV: Fix link errors. 2013-07-22 12:59:01 +00:00
inv
128dba9aef Fix link errors. 2013-07-22 12:55:58 +00:00
rnc
094287b4df BUG: EDF 2655: Hexa splitting into tetra low performance
A better fix has been found by improving the getNextFree() method in ObjectPool.hxx. When there is no "hole" in the ID list we don't iterate on the _freeList to find the next free ID. We jump straight to the last occupied ID.
This fix is simpler and can benefit to other methods of SMESH_Editor like QuadTo4Tri for example.
2013-07-22 08:46:57 +00:00
rnc
3f3beb8b95 BUG: EDF 2655: Low performance of hexa to tetra splitting
The whole procedure performance was almost O(n^2) due to insertion of for example 5 elements in a mesh with a free ID at the beginning. The second element is then inserted with a O(n) complexity.
The hexas are now removed after all tetra insertions, which guarantees a O(n) complexity for the whole procedure at a limited memory cost (transient additional cost of 1/5 of total memory occupation at the end).
2013-07-19 16:01:27 +00:00
eap
1fa8c22987 untabify 2013-07-17 14:53:51 +00:00
eap
07ba88a295 In ExtrusionAlongPathX() allow defining RefPoint as [x,y,z] 2013-07-17 14:38:25 +00:00
eap
85aae58ead 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
1) New general mechanism to avoid dump of functors not used later as arguments
2) Use the New general mechanism to filters and sub-meshes
3) Erase the 1st incarnation of re-created objects.
A re-created object appears e.g. as follows:
- create a mesh
- remove the mesh
- save and re-open the study
- create another mesh -> ( two meshes have same Entry ) == ( the 1st mesh is re-created )
2013-07-17 14:27:42 +00:00
eap
94ce6f40fc 22252: EDF 2684 SMESH: Extrusion along a path with a curvilinear edge
Activate selection of the Base Point right at checking its check-box
2013-07-17 08:26:43 +00:00
eap
667c4a210e 22252: EDF 2684 SMESH: Extrusion along a path with a curvilinear edge
Allow selecting any node as a Base Point
2013-07-16 14:31:10 +00:00
eap
e7dbe802e0 22252: EDF 2684 SMESH: Extrusion along a path with a curvilinear edge
Some decorations in ExtrusionAlongTrack()
2013-07-16 14:30:30 +00:00
eap
29c8bbb275 22252: EDF 2684 SMESH: Extrusion along a path with a curvilinear edge 2013-07-16 14:29:44 +00:00
eap
974969c9ef 22252: EDF 2684 SMESH: Extrusion along a path with a curvilinear edge 2013-07-16 13:44:28 +00:00
eap
64406b6655 Avoid clashing namesake files in GEOM and SMESH 2013-07-16 13:19:00 +00:00
rnv
5c69524642 Add MedWrapper to dist_dir 2013-07-10 13:31:04 +00:00
eap
c96730d0aa Compute Progress bar 2013-07-09 11:59:40 +00:00
eap
42d136bcdc Compute Progress bar
+  bool DependsOn( const SMESH_subMesh* other ) const;
+  int                   _realComputeCost; // _computeCost depending on presence of needed hypotheses
2013-07-09 11:59:18 +00:00
eap
a311b5af11 Compute Progress bar
-  int& GetComputeCost() { return _computeCost; }
+  std::vector<SMESH_subMesh*>& SubMeshesToCompute() { return _smToCompute; }
2013-07-09 11:58:41 +00:00
eap
f4ec60b8ca make Cancel button checkable 2013-07-09 11:57:50 +00:00
akl
7c7b4b0636 0021708: [CEA 586] Object browser sort only children:
+ Add Use Case browser data tree management
+ Add "Sort children" contextual menu popup item
+ Update user documentation
2013-07-09 08:32:08 +00:00
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
29d50dfec3 1) 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
interface SMESH_IDSource
   {
+    long_array GetNbElementsByType();

2) Compute progress bar

  interface SMESH_Mesh
  {
+    double GetComputeProgress();
2013-07-03 16:00:19 +00:00
eap
6cd017c643 0020976: EDF 1471 SMESH: New ergonomy to display quality controls
interface Predicate: Functor
   {
+    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 15:58:19 +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