Commit Graph

1078 Commits

Author SHA1 Message Date
vsr
2343a5b385 Fix bug of NodeSearcher: search fails if point is outside the mesh on the distance more than octree node precision value. Version 2 with improved performance. 2010-06-21 07:29:04 +00:00
vsr
97577f2731 Fix bug of NodeSearcher: search fails if point is outside the mesh on the distance more than octree node precision value 2010-06-17 19:00:18 +00:00
vsr
6ea1e8f320 Merge from V5_1_4_BR (5_1_4rc2) 09/06/2010 2010-06-10 06:51:07 +00:00
eap
452d18f670 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* In GetFaceWires(), create a separate wire for each internal edge
2010-06-08 11:33:26 +00:00
eap
dd4eae00e6 - return ( e && e->NbNodes() == ( e->IsQuadratic() ? 8 : 4 ));
+    return ( e && e->NbCornerNodes() == 4 );
2010-05-20 10:23:56 +00:00
eap
17aeb4f3c7 0020855: [CEA] Problem with ijk algo ---------- KO.med file 2010-05-20 10:04:19 +00:00
eap
5dad3ddd64 0020855: [CEA] Problem with ijk algo
* Fix detection of block corners
  * Fix selection of sides
2010-05-19 08:16:18 +00:00
eap
0611264223 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
## Computes the mesh and returns the status of the computation
+    #  @param discardModifs if True and the mesh has been edited since
+    #         a last total re-compute and that may prevent successful partial re-compute,
+    #         then the mesh is cleaned before Compute()
     #  @return True or False
     #  @ingroup l2_construct
-    def Compute(self, geom=0):
+    def Compute(self, geom=0, discardModifs=False):
2010-05-13 06:24:13 +00:00
eap
475c43c868 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
* set _isModified attribute of the mesh to true
2010-05-13 06:23:03 +00:00
eap
fdac3f59c5 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
* save/restore _isModified attribute of the mesh
2010-05-13 06:22:26 +00:00
eap
38824d786e 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+    if ( myMesh->HasModificationsToDiscard() && // issue 0020693
+         SUIT_MessageBox::question( desktop(), tr( "SMESH_WARNING" ),
+                                    tr( "FULL_RECOMPUTE_QUESTION" ),
+                                    tr( "SMESH_BUT_YES" ), tr( "SMESH_BUT_NO" ), 1, 0 ) == 0 )
+      myMesh->Clear();
2010-05-13 06:20:35 +00:00
eap
a5103fc7f7 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+            <source>FULL_RECOMPUTE_QUESTION</source>
+            <translation>
+The mesh has been edited since a last total re-compute
+that may prevent successful computation.
+Do you wish to re-compute the mesh totally to discard the modifications?
+            </translation>
+        </message>
+        <message>
2010-05-13 06:20:02 +00:00
eap
dc9f7a0708 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+    /*!
+     * Return true if the mesh has been edited since a total re-compute
+     * and those modifications may prevent successful partial re-compute
+     */
+    boolean HasModificationsToDiscard()
+      raises (SALOME::SALOME_Exception);
2010-05-13 06:18:57 +00:00
eap
d0e4aacc56 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+  void SetIsModified(bool isModified);
+  bool GetIsModified() const { return _isModified; }
+  bool HasModificationsToDiscard() const;
+  bool                       _isModified; //!< modified since last total re-compute, issue 0020693
2010-05-13 06:18:02 +00:00
vsr
6650dea1f8 Merge from V5_1_4_BR 07/05/2010 2010-05-07 15:08:23 +00:00
eap
4a1881f9c1 0020855: [CEA] Problem with ijk algo
* Fix difining sharing of block sides
  * Fix selection of adjacent side
2010-05-06 08:48:21 +00:00
eap
46390b4393 0020855: [CEA] Problem with ijk algo
* Fix uninitialized gravity center
-      gp_XYZ gc;
+      gp_XYZ gc(0,0,0);
2010-04-30 06:45:50 +00:00
eap
8ebb31bcc9 0020849: [CEA] Projection 2D fails
* project by transformation in case if TopoDS_TFace's are different
2010-04-26 10:39:30 +00:00
dmv
42e7938ff9 Improve Documentation style. 2010-04-08 11:04:09 +00:00
dmv
0fe4350ada IPAL21668 Call of Edit Group leads to Crash. 2010-04-08 07:52:18 +00:00
caremoli
df652e4ebf CCAR: wrong type id 2010-04-08 06:36:12 +00:00
dmv
3409f9be6c Improve documentation 2010-04-07 14:12:04 +00:00
san
845309d919 Issue 0020580: improved validation in integer and double spin boxes, possibility to adjust input field precision through preferences 2010-04-05 11:43:42 +00:00
eap
da4a6470be Rename to avoid clash with same name class from GEOM_Engine
-class ObjectStates{
+class SMESH_ObjectStates{
2010-03-31 05:56:30 +00:00
eap
204b3f755c Remove useless extra dump in DEBUG mode 2010-03-31 05:55:11 +00:00
eap
a232cd7e03 0020672: EDF 1243 SMESH : Be able to transform mixed mesh
+    void SplitVolumesIntoTetra(in SMESH_IDSource elems, in short methodFlags)
2010-03-30 12:38:16 +00:00
eap
01d2cde96d 0020672: EDF 1243 SMESH : Be able to transform mixed mesh
* Add "Split into Tetrahedra" operation
2010-03-30 12:36:23 +00:00
eap
0e2bac7865 0020672: EDF 1243 SMESH : Be able to transform mixed mesh
+  virtual int  NbCornerNodes() const;
2010-03-30 12:33:10 +00:00
eap
1f50f137e3 0020672: EDF 1243 SMESH : Be able to transform mixed mesh
* Implement GetFaceNodesIndices() for polyhedrons
2010-03-30 12:32:41 +00:00
eap
2705c10eb5 Move #include "SMESH_Algo.hxx" from hxx to cxx 2010-03-30 12:30:12 +00:00
eap
1d2d0b2f0a Use TXyzIterator in Preparation() 2010-03-30 12:29:24 +00:00
eap
8abf245a59 /*!
+     * Returns nodes of given face (counted from zero) for given volumic element.
+     */
+    long_array GetElemFaceNodes(in long elemId, in short faceIndex);
+
+    /*!
+     * Returns an element based on all given nodes.
+     */
+    long FindElementByNodes(in long_array nodes);
2010-03-30 12:27:31 +00:00
ouv
fa7f73d6bd Bug IPAL21655 - Points representation works incorrectly with white background 2010-03-29 08:24:47 +00:00
eap
aa031dbe39 untabify 2010-03-25 14:51:26 +00:00
ouv
4d33eed28b Issue 0020613: EDF 1106 : Modify Node Marker in SMESH and VISU 2010-03-25 13:55:29 +00:00
eap
c3b2640450 Move StdMeshers_ProjectionUtils::IsSubShape() to SMESH_MesherHelper 2010-03-23 14:33:16 +00:00
eap
8951a46238 Move from StdMeshers_ProjectionUtils
+  static bool IsSubShape( const TopoDS_Shape& shape, const TopoDS_Shape& mainShape );
+
+  static bool IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMesh );
2010-03-23 14:32:26 +00:00
eap
3a82c6685b 020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* Cash GeomAPI_ProjectPointOnSurf's
 * Make applyFunc() public under name applyIn2D()


+   * \brief Define a pointer to wrapper over a function of gp_XY class,
+   *       suitable to pass as xyFunPtr to applyIn2D().
+   *       For exaple gp_XY_FunPtr(Added) defines pointer gp_XY_Added to function
+   *       calling gp_XY::Added(gp_XY), which is to be used like following
+   *       applyIn2D(surf, uv1, uv2, gp_XY_Added)
+   */
+#define gp_XY_FunPtr(meth) \
+  static gp_XY __gpXY_##meth (const gp_XY& uv1, const gp_XY& uv2) { return uv1.meth( uv2 ); } \
+  static xyFunPtr gp_XY_##meth = & __gpXY_##meth

+  /*!
+   * \brief Perform given operation on two 2d points in parameric space of given surface.
+   *        It takes into account period of the surface. Use gp_XY_FunPtr macro
+   *        to easily define pointer to function of gp_XY class.
+   */
+  static gp_XY applyIn2D(const Handle(Geom_Surface)& surface,
+                         const gp_XY&                uv1,
+                         const gp_XY&                uv2,
+                         xyFunPtr                    fun,
+                         const bool                  resultInPeriod=true);
+
2010-03-23 08:04:58 +00:00
vsr
6468f538ec Issue 0020788: EDF 1339 SMESH : Crash after enabling "Auto Color" feature in attached MED file 2010-03-22 15:15:49 +00:00
vsr
e9aead38a5 Issue 0020788: EDF 1339 SMESH : Crash after enabling "Auto Color" feature in attached MED file 2010-03-22 15:08:53 +00:00
dmv
9e0ab432cc 0020799: [CEA] Smesh script fails 2010-03-22 14:48:33 +00:00
vsr
db9ba2e978 0020801: EDF 1343 SMESH : Segmentation violation during compound od Mesh with 0D elements 2010-03-22 14:30:36 +00:00
dmv
736b66759f 0020788: EDF 1339 SMESH : Crash after enabling "Auto Color" feature in attached MED file 2010-03-22 12:17:15 +00:00
eap
8a6ef93bb1 SMESH_IDSource can be not-published object
+    operator<<(SMESH::SMESH_IDSource_ptr theArg);
2010-03-19 14:56:03 +00:00
eap
43cfddbeaa 0020771: EDF 1322 SMESH : Quadratic/Linear conversion with Medium Nodes on Geometry issue
* Care of period when performing operations on points in parametric space
2010-03-19 14:21:48 +00:00
eap
3b0695799f 0020781: EDF 1326 SMESH : Documentation missing
more detail for "Orientation of faces"
2010-03-19 07:25:55 +00:00
eap
d5768a3f63 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* fix pb of CheckNodeUV() with INTERNAL shapes

+  /*!
+   * \brief Return iterator on ancestors of the given type
+   */
+  static PShapeIteratorPtr GetAncestors(const TopoDS_Shape& shape,
+                                        const SMESH_Mesh&   mesh,
+                                        TopAbs_ShapeEnum    ancestorType);
2010-03-18 09:47:58 +00:00
eap
b51a02ed24 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
-  TopoDS_Shape GetSubShape() const  { return myShape; }
+  const TopoDS_Shape& GetSubShape() const  { return myShape; }

+typedef SMDS_Iterator<const TopoDS_Shape*>  PShapeIterator;
+typedef boost::shared_ptr< PShapeIterator > PShapeIteratorPtr;

+  /*!
+   * \brief Return iterator on ancestors of the given type
+   */
+  static PShapeIteratorPtr GetAncestors(const TopoDS_Shape& shape,
+                                        const SMESH_Mesh&   mesh,
+                                        TopAbs_ShapeEnum    ancestorType);
2010-03-18 09:46:14 +00:00
eap
331cc524a8 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* In GetOrderedEdges(), preview presence of the internal vertex within the face
2010-03-18 09:42:08 +00:00
dmv
6339de2d04 IPAL21631 Incorrect Help link. 2010-03-17 07:52:51 +00:00