Commit Graph

1037 Commits

Author SHA1 Message Date
eap
758a69ebf0 0020951: EDF 1501 SMESH: Conversion linear/quadratic with medium nodes on geometry fails with GHS3D
* Fix splitTrianglesIntoChains()
2010-08-04 12:05:37 +00:00
eap
da13b7ebd3 0020951: EDF 1501 SMESH: Conversion linear/quadratic with medium nodes on geometry fails with GHS3D
* Fix for usecase: open the atached study, convert Mesh_1 from
   quadratic, unassign GHS3D algo -> SIGSEGV. Reason is that the same
   SMDS_SpacePosition is shared by all nodes in different solids.
2010-08-04 12:02:49 +00:00
eap
cb58ff9fa4 untabify 2010-07-27 13:06:18 +00:00
eap
52be03b564 0020951: EDF 1501 SMESH: Conversion linear/quadratic with medium nodes on geometry fails with GHS3D
* Fix GetNodeUV() for a node on seam edge: enable projection of node in face
 * Fix GetMediumNode(): set a node in volume #1 as well
 * Fix QFace::GetLinkChain(), case of triangles
2010-07-27 13:05:28 +00:00
eap
4ea8012155 0020920: EDF 1478 SMESH: Conversion linear to quadratic fails (BLSURF Mesh)
* fix FixQuadraticElements(): ignore internal chains
2010-07-21 05:45:17 +00:00
eap
cc0f9654b4 0020919: EDF 1472 SMESH: Linear to quadratic conversion fails with hexaedron algorithm
* fix FixQuadraticElements()
2010-07-20 06:06:38 +00:00
eap
90bfbd9c1e improve comment 2010-07-20 06:05:22 +00:00
adam
92931e254a Patch from Anthony to be compliant with MED 2010-07-19 15:18:39 +00:00
eap
99adc043fe untabify 2010-07-19 07:57:32 +00:00
vsr
420d105fdb Issue 0020921: EDF 1462 SMESH: Regression in 5.1.4. a quadrangle meshing fails 2010-07-08 06:51:11 +00:00
vsr
32a86c1f4a 0020742: EDF 1270 SMESH : Delete Group with contents and remove Orphan Nodes 2010-07-07 05:32:15 +00:00
adam
3cd9dd3663 windows port 2010-07-06 10:17:30 +00:00
dmv
4d43188368 IPAL21820 TC6.1.0: Lost new nodes 2010-07-05 13:58:35 +00:00
dmv
e3ffb861ce IPAL21831 Can't load the Python dump after Export to MED 2010-06-30 11:40:12 +00:00
vsr
9862fa66b4 Bug IPAL21801: preferences for SMESH: color of Group name text should be added
EDF 703 SMESH VISU : Display Mesh Groups names in viewer (as a caption)
Additional fix: add preferences for the names groups color
2010-06-23 13:19:50 +00:00
vsr
8c1e153907 0020752: EDF 1303 SMESH : Add a 'Select All' button in Create Group dialog box 2010-06-22 15:24:40 +00:00
jfa
946f0a4e5c Mantis issue 0020812: Register() and Destroy() of the GenericObj. 2010-06-22 14:43:41 +00:00
ouv
e533bcb1d7 Issue 0020755: EDF 1279 MESH : 'Mesh to Pass Through a Point' enhancement 2010-06-21 10:30:03 +00:00
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
0fe4350ada IPAL21668 Call of Edit Group leads to Crash. 2010-04-08 07:52:18 +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
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
ana
1839653e13 Windows compatibility 2010-03-16 13:04:00 +00:00
ana
a4a1062443 Windows compatibility 2010-03-15 14:45:59 +00:00
dmv
2f541de569 0020727: EDF 1276 SMESH : add a Method RadialQuadrangle to the Mesh class in smeshDC.py 2010-03-15 13:56:52 +00:00
vsr
e2018c0393 Fix compilation problem on Debian Sarge 2010-03-15 09:31:54 +00:00
eap
8baf98a974 +//=======================================================================
+/*!
+ * \brief SMESH_TLink knowing its orientation
+ */
+//=======================================================================
+
+struct SMESH_OrientedLink: public SMESH_TLink
+{
+  bool _reversed;
+  SMESH_OrientedLink(const SMDS_MeshNode* n1, const SMDS_MeshNode* n2 )
+    : SMESH_TLink( n1, n2 ), _reversed( n1 != node1() ) {}
+};
2010-03-12 08:30:20 +00:00
eap
22395fddea /*!
* \brief High level util for effective file reading and other file operations
 */
2010-03-12 08:26:13 +00:00
skl
3e93aa815a Changes for bug 0020671. 2010-03-12 05:38:02 +00:00
skl
25722a6cdd Changes for bug 0020734. 2010-03-11 09:36:56 +00:00
eap
0e70fe931b fix FindFace() after the previous integration 2010-03-10 13:21:56 +00:00
eap
f4bf7b006c - const SMDS_MeshFace *FindFace(std::vector<int> nodes_ids) const;
+  const SMDS_MeshFace *FindFace(const std::vector<int>& nodes_ids) const;

-  static const SMDS_MeshFace* FindFace(std::vector<const SMDS_MeshNode *> nodes);
+  static const SMDS_MeshFace* FindFace(const std::vector<const SMDS_MeshNode *>& nodes);
2010-03-10 06:43:17 +00:00
eap
57a36ac547 0020682: EDF 1222 SMESH: 3D mesh from a skin mesh and with volumic cells
* Fix regression made at redesigning
2010-03-09 13:26:18 +00:00
eap
0811f1f0ea a little optimize FindFace (std::vector<const SMDS_MeshNode *> nodes) 2010-03-09 08:17:43 +00:00
eap
78364113e1 0020714: EDF GHS3DPLUGIN: shapeToMesh when creating 3D mesh from 2D mesh
* Fix GetPointState()
2010-03-05 11:13:07 +00:00
eap
8781de04b7 set Kernel_Utils::Localizer before calling algo->Compute() 2010-03-05 07:42:20 +00:00
eap
e1e680f157 0020714: EDF GHS3DPLUGIN: shapeToMesh when creating 3D mesh from 2D mesh
* Add function to find out if the given point is out of closed 2D mesh.

+  virtual TopAbs_State GetPointState(const gp_Pnt& point);
2010-03-04 14:05:05 +00:00
eap
4fadfe037a 0020714: EDF GHS3DPLUGIN: shapeToMesh when creating 3D mesh from 2D mesh
* Fix FaceNormal()
* Add
+  static std::vector< const SMDS_MeshNode*> GetCommonNodes(const SMDS_MeshElement* e1,
+                                                           const SMDS_MeshElement* e2);
2010-03-04 13:57:50 +00:00
eap
8ac52f19a5 remove commented code 2010-03-04 09:59:01 +00:00
eap
a59cbfc28e Add a function to know kind of mesh element
+    EntityType GetElementGeomType( in long id )
2010-03-04 08:08:21 +00:00
eap
c0c6cee1a5 0020737: [CEA] Computing mesh fails
* Fix constructor from regression made in frames of issue 0020676
2010-03-04 07:30:41 +00:00
eap
859674eaf0 prevent MakeMesh() from crash if myShapeIDMap.IsEmpty() 2010-03-03 13:58:32 +00:00
skl
00c9fb50be Changes for bug 0020753. 2010-03-03 11:01:36 +00:00
eap
f4222ec705 roll back 2010-03-03 09:07:23 +00:00
eap
f01d6dacd5 0020725: EDF 1242 SMESH : Crash avec Convert lin--> quad avec BLSURF/GHS3D on 64bits
0020721: EDF 1233 SMESH : Crash/bad behavior of 'Convert linear Quadratic with Medium Nodes on Geometry' feature with BLSurf/Ghs3D
* Fix GetNodeUV() for the case of surface both U and V periodic.
* Protect QFace::GetBoundaryLink() from infinite recursion.
* Protect QFace::GetLinkChain() from stack overflow.
2010-03-03 09:03:47 +00:00
eap
d5df7d3273 0020725: EDF 1242 SMESH : Crash avec Convert lin--> quad avec BLSURF/GHS3D on 64bits
0020721: EDF 1233 SMESH : Crash/bad behavior of 'Convert linear Quadratic with Medium Nodes on Geometry' feature with BLSurf/Ghs3D
* Fix GetNodeUV() for the case of surface both U and V periodic.
* Protect QFace::GetBoundaryLink() from infinite recursion.
* Protect QFace::GetLinkChain() from stack overflow.
2010-03-03 07:48:07 +00:00
skl
0af7b3cb3d Changes for bug 0020671. 2010-03-03 07:23:24 +00:00
eap
26a6f60422 fix comment 2010-03-02 06:47:35 +00:00
adam
45fd4efb6f windows port 2010-03-01 14:15:48 +00:00
adam
226dd03db2 *** empty log message *** 2010-03-01 14:14:38 +00:00
dmv
12cb4bfcdd Correct implementation of Max Subshape limiter. 2010-03-01 14:00:46 +00:00
adam
99c3d13441 *** empty log message *** 2010-02-26 16:08:53 +00:00
eap
c73dc0e564 + /*!
+     * \brief Wrap a sequence of ids in a SMESH_IDSource
+     */
+    SMESH_IDSource MakeIDSource(in long_array IDsOfElements);
2010-02-26 08:15:02 +00:00
eap
9ed3242565 0020611: [CEA] Algo lacking when editing MED meshing
* Generate hexahedrons from 2D skin mesh:

+	StdMeshers_HexaFromSkin_3D.cxx
2010-02-24 12:46:38 +00:00
eap
039a4f4346 + SMESH_Comment & operator=(const SMESH_Comment& c) {
+    _s << c.c_str() ;
+    this->string::operator=( _s.str() );
+    return *this;
+  }
+
2010-02-24 12:44:11 +00:00
eap
a34eac9276 + static bool FaceNormal(const SMDS_MeshElement* F, gp_XYZ& normal, bool normalized=true); 2010-02-24 12:43:56 +00:00
skl
1ac99281d8 Changes for bug 0020705. 2010-02-19 14:38:11 +00:00
eap
da57c65070 fix pb with GetName() in case of meshing imported 2D skin 2010-02-19 08:43:22 +00:00
dmv
7ca0689d93 0020701: Additional fix concerned to the GetName Method changes. 2010-02-18 11:28:58 +00:00
eap
a710674f83 020697: EDF 1248 SMESH: Sub-mesh on group of face not taken into account
* Correct adding geom groups into map of ansestors
2010-02-18 08:29:00 +00:00
eap
b3a24eca49 0020680: EDF 1252 SMESH: Bad cell created by Radial prism in center of torus
1) Try to build nodes using transformation before using block approach
2) workaround for wrong surface.Value(u,v) for UV near boundary of BSline surface
2010-02-17 14:59:19 +00:00
eap
0719fe6424 0020680: EDF 1252 SMESH: Bad cell created by Radial prism in center of torus
+  /*!
+   * \brief Return transformations to get coordinates of nodes of each internal layer
+   *        by nodes of the bottom. Layer is a set of nodes at a certain step
+   *        from bottom to top.
+   */
+  bool GetLayersTransformation(std::vector<gp_Trsf> & trsf) const;
2010-02-17 14:56:40 +00:00
eap
db9b76d342 1)
+    ## Defines "QuadrangleParams" hypothesis
+    #  @param vertex: vertex of a trilateral geometrical face, around which triangles
+    #                 will be created while other elements will be quadrangles.
+    #                 Vertex can be either a GEOM_Object or a vertex ID within the
+    #                 shape to mesh
+    #
+    def TriangleVertex(self, vertex, UseExisting=0):

2) in FixedPoints1D(), convert geom reversed edges into IDs
2010-02-17 14:54:30 +00:00
skl
e096680dda Changes for bug 0020681. 2010-02-16 11:07:53 +00:00
eap
ae8e36cc4a fix Save() and Load() 2010-02-16 09:32:14 +00:00
vsr
97a2f52e50 0020702: [CEA] Problem with Segment function of SMESH module
0020701: EDF SMESH : GetName Method of smeshDC.py
Additional fix
2010-02-16 09:20:56 +00:00
skl
68b6c38588 Changes for bug 0020681. 2010-02-16 09:19:59 +00:00
dmv
4bb95af61f 0020702: [CEA] Problem with Segment function of SMESH module 2010-02-15 09:35:36 +00:00
eap
3d1a536674 protect IndexToShape() from Standard_OutOfRange exception 2010-02-15 07:11:44 +00:00
eap
8d6ad56522 report error reasons in case of trilateral face 2010-02-12 14:27:33 +00:00
vsr
2029d91e2f Issue 20509: EDF 1065 OTHER : Add the Salome version in the header of the dump 2010-02-12 08:37:10 +00:00
eap
2cd3dfdd08 fix case of 2 edges 2010-02-12 08:15:06 +00:00
maintenance team
d7d3916c31 Fix compilation problem on Debian Sarge 2010-02-12 08:03:53 +00:00
eap
4e29225bc5 precise error message 2010-02-12 07:41:39 +00:00
vsr
8321c7460e Issue 0020701: EDF SMESH : GetName Method of smeshDC.py 2010-02-12 06:07:26 +00:00
eap
84dcc4efcf 0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
* Add CheckNodeU()
* Compute parameters of created medium nodes even in force3d mode
* Leave doxygen-style comments of functions only in the header
2010-02-11 13:16:51 +00:00
dmv
9e7387ef24 0020631: EDF 1195 SMESH : Merge Node : Optional display of the nodes of the mesh 2010-02-11 12:08:34 +00:00
eap
13623edbcc 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* Fix for internal edges
2010-02-11 08:26:40 +00:00
eap
7be9f329c4 0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* Fix GetOrderedEdges(): workaroud for BRepTools_WireExplorer, which return no edges if they are internal
2010-02-11 08:25:06 +00:00
eap
04efa6b9dc clear auxiliary data after Compute() 2010-02-10 07:36:45 +00:00
eap
2169f74278 0020682: EDF 1222 SMESH: 3D mesh from a skin mesh and with volumic cells
* Redesign in order to bind two pyramids to one base quadrangle.
 * Check presence of 3D elements sharing the base quadrangle.
2010-02-09 11:17:06 +00:00
eap
2536cb0c1b Make TNodeXYZ public, which together with SMDS_StdIterator allows getting coordinates of all nodes of mesh element in a couple of lines of code:
typedef SMDS_StdIterator< SMESH_MeshEditor::TNodeXYZ, SMDS_ElemIteratorPtr > TXyzIterator;
  vector<gp_Pnt> coords( TXyzIterator( elem->nodesIterator()), TXyzIterator() );



class SMESH_EXPORT SMESH_MeshEditor
{
public:
+  //------------------------------------------
+  /*!
+   * \brief SMDS_MeshNode -> gp_XYZ convertor
+   */
+  //------------------------------------------
+  struct TNodeXYZ : public gp_XYZ
2010-02-09 11:13:23 +00:00
eap
c8050ec0d5 + // std-like iteration on nodes
+  typedef SMDS_StdIterator< const SMDS_MeshNode*, SMDS_ElemIteratorPtr > iterator;
+  iterator begin_nodes() const { return iterator( nodesIterator() ); }
+  iterator end_nodes()   const { return iterator(); }
2010-02-09 11:03:51 +00:00
eap
1088385e70 const SMDS_MeshElement* next()
{
+    if ( !more() ) return 0;
2010-02-09 11:03:15 +00:00
eap
48378761b2 Add iterator, wrapper over SMDS_Iterator, adding std-like operators *, ++ etc
+	SMDS_StdIterator.hxx
2010-02-09 11:02:53 +00:00
eap
1fd762e26c - SMDS_MeshElement * MeshElement(int ID);
+  SMDS_MeshElement * MeshElement(int ID) const;
2010-02-09 07:02:21 +00:00
eap
b90c9d785d Write nodes in the order of increasing ids
-      SMDS_NodeIteratorPtr aNodesIter = myMesh->nodesIterator();
+      SMDS_NodeIteratorPtr aNodesIter = myMesh->nodesIterator(/*idInceasingOrder=*/true);
2010-02-08 14:39:14 +00:00
eap
509187908d Add an utility to iterate on nodes in the order of increasing ids
-  SMDS_NodeIteratorPtr nodesIterator() const;
+  SMDS_NodeIteratorPtr nodesIterator(bool idInceasingOrder=false) const;
2010-02-08 14:38:03 +00:00
vsr
d06764f347 0020691: EDF SMESH : Export STL always in binary 2010-02-08 11:22:48 +00:00
maintenance team
8abff026bc import salome 2010-02-08 10:28:23 +00:00
eap
172b75f1d3 follow modif for IPAL21558 (In Group creation dialog, selection of sub-shapes in OB, viewer and dialog is not well syncronized)
-  virtual void            processOwner( const LightApp_DataOwner* );
+  virtual bool            processOwner( const LightApp_DataOwner* );
2010-02-08 07:14:33 +00:00
eap
a3b1bac8a0 020674: EDF 870 SMESH: Mesh generated by Netgen not usable by GHS3D
* Rename HasDegenenaratedEdges() -> HasDegeneratedEdges()
2010-02-01 14:26:09 +00:00
eap
696fa5df7f 020674: EDF 870 SMESH: Mesh generated by Netgen not usable by GHS3D
+   * \brief Check if the shape set through IsQuadraticSubMesh() or SetSubShape()
+   *        has a degenerated edges
+    * \retval bool - true if it has
+   */
+  bool HasDegenenaratedEdges() const { return !myDegenShapeIds.empty(); }
2010-02-01 14:19:06 +00:00
eap
2998fad1e1 minor change 2010-02-01 13:30:15 +00:00
eap
8d2789db83 020674: EDF 870 SMESH: Mesh generated by Netgen not usable by GHS3D
avoid creating degenetrated faces
2010-02-01 13:29:23 +00:00
eap
d7c779851c fix comment 2010-02-01 13:28:11 +00:00
eap
0cadad987c 0019296: EDF 681 SMESH - Pre-evaluation of the number of elements before mesh
* Evaluate():
  ** do not read from out of vector range
  ** report error if algo->Evaluate() returns negative number
2010-02-01 11:12:17 +00:00
eap
8d99b0dffe 0019296: EDF 681 SMESH - Pre-evaluation of the number of elements before mesh
* Evaluate(): do not call algo->Evaluate() if needed submeshes failed to evaluate
2010-02-01 11:09:38 +00:00
nge
cbc21f731e Revert last modification 2010-01-27 14:22:19 +00:00
nge
a2f5fa75bd Add missing import StdMeshers 2010-01-27 13:43:29 +00:00
nge
a63ab6b7e1 import salome missing on some scripts 2010-01-27 11:08:25 +00:00
eap
8726d7811f 0019296: EDF 681 SMESH - Pre-evaluation of the number of elements before mesh
Assure that this submesh is evaluated once
2010-01-27 10:09:15 +00:00
gdd
f3ede5f066 Small correction 2010-01-23 09:00:59 +00:00
eap
4104f26589 0020431: EDF 1020 SMESH : Radial Mesh of a cylinder
* Algorith behavior has changed - default hyps have appeared
2010-01-22 11:38:25 +00:00
eap
fd1dc99bb5 shorten code 2010-01-22 11:37:48 +00:00
eap
188c7b742c unused variables 2010-01-22 11:36:53 +00:00
eap
9a6c1bd34d 0020431: EDF 1020 SMESH : Radial Mesh of a cylinder
* Learn Quadrangle() create Mesh_RadialQuadrangle1D2D algo

+QUARDANGLE = 0
+RADIAL_QUAD = 1
2010-01-22 11:36:02 +00:00
eap
035f2b519d - if ( theNbSegments )
+  if ( theNbSegments > 0 )
     myGen.SetDefaultNbSegments( int(theNbSegments) );
   else
     THROW_SALOME_CORBA_EXCEPTION( "non-positive number of segments", SALOME::BAD_PARAM );
2010-01-22 11:34:11 +00:00