Commit Graph

772 Commits

Author SHA1 Message Date
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
6609664fc3 Some improvements 2013-05-29 13:36:40 +00:00
eap
e9f23d7589 0022136: EDF 2345 SMESH: Improving documentation of Quadrangle mapping with the type "Reduced" 2013-05-29 13:34:03 +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
85ee212909 0022108: EDF 2547 SMESH: Duplicate elements only
+    SMESH_Group DoubleElements( in SMESH_IDSource theElements,
+                                in string         theGroupName )
2013-05-28 16:47:10 +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
eap
13b8c96957 0022108: EDF 2547 SMESH: Duplicate elements only 2013-05-28 16:39:28 +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
eap
0f7414545b 0022172: [CEA 790] create the groups corresponding to domains
1) Do not erase "mesh.Compute()" command if the next command
   "[ group1, group2 ] = mesh.GetGroups()" dumps groups created by some algorithm.

2) Clear "mesh.RemoveGroup( group )" command
3) Clear "[ group1, group2 ] = mesh.GetGroups()" command if the groups
   are removed later.
2013-05-24 11:55:12 +00:00
eap
7b5176ec4d 0022172: [CEA 790] create the groups corresponding to domains
Prepend "Warning" to error description with code==COMPERR_WARNING
2013-05-24 11:49:50 +00:00
eap
10a6101340 0022172: [CEA 790] create the groups corresponding to domains
1) Reset _algo = 0 if ( event == REMOVE_ALGO || event == REMOVE_FATHER_ALGO )

2) Avoid erasing _computeError holding a WARNING is algo->Compute() returns true

-          if ( !_computeError || ( !ret && _computeError->IsOK() ) )
+          if ( !_computeError || (/* !ret && */_computeError->IsOK() ) )
             _computeError = algo->GetComputeError();

3) Fix notifyListenersOnEvent():

-      if ( !isDeletable || !_eventListeners.count( li_da.first ))
+      if ( !isDeletable || _eventListeners.count( li_da.first ))
         li_da.first->myBusySM.erase( this ); // a listener is hopefully not dead
2013-05-24 11:46:27 +00:00
eap
610978f5f6 Treat Scale commands 2013-05-22 16:05:06 +00:00
vsr
5de80d5f32 0022101: EDF 2492 SMESH: Update Destination field when "Find closest to destination" is unchecked in "Move node" 2013-05-22 15:48:24 +00:00
eap
5dcf8c6597 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles 2013-05-22 15:36:05 +00:00
eap
f96a5f853b 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
+    def QuadTo4Tri (self, theElements=[]):
2013-05-22 15:35:28 +00:00
eap
b2bb39a768 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
+    void QuadTo4Tri (in SMESH_IDSource theQuads) raises (SALOME::SALOME_Exception);
2013-05-22 15:34:55 +00:00
eap
741e8ae522 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
Treat SMESH_MeshEditor::QuadTo4Tri()
2013-05-22 15:34:17 +00:00
eap
ba9f67eab1 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
+  void           QuadTo4Tri      (SMESH::SMESH_IDSource_ptr   theObject)
2013-05-22 15:33:27 +00:00
vsr
b07f27826f 0022099: EDF 2307 SMESH: Apply a transformation to several meshes, sub-meshes or groups 2013-05-22 15:25:18 +00:00
eap
751d20eca2 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
+  void QuadTo4Tri (TIDSortedElemSet & theElems);
2013-05-22 14:58:32 +00:00
eap
8506f58d10 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles
Fix position of a central node of a distorted bi-quadratic triangle

+   * \brief Return UV for the central node of a biquadratic triangle
+   */
+  static gp_XY GetCenterUV(const gp_XY& uv1,
+                           const gp_XY& uv2,
+                           const gp_XY& uv3,
+                           const gp_XY& uv12,
+                           const gp_XY& uv23,
+                           const gp_XY& uv31,
+                           bool *       isBadTria=0);
2013-05-22 14:58:06 +00:00
eap
8ae0b0b315 0022106: EDF 2464 SMESH : Split quadrangles in 4 triangles 2013-05-22 14:55:42 +00:00
eap
82b050103f + void SetParameters(double aUparam, double aVparam); 2013-05-22 14:54:20 +00:00