Salome HOME
Fix Python dump of ExportPartToMED()
[modules/smesh.git] / src / SMESH / SMESH_MesherHelper.hxx
index cf3506fea7af1d83ed6c12f37debde26c5b88622..3b516baa01615d717c74363a5e0f0d8613acad4a 100644 (file)
@@ -52,7 +52,7 @@ typedef std::map<SMESH_TLink, const SMDS_MeshNode*>::iterator ItTLinkNode;
 
 typedef SMDS_Iterator<const TopoDS_Shape*>  PShapeIterator;
 typedef boost::shared_ptr< PShapeIterator > PShapeIteratorPtr;
-  
+
 typedef std::vector<const SMDS_MeshNode* > TNodeColumn;
 typedef std::map< double, TNodeColumn >    TParam2ColumnMap;
 
@@ -300,7 +300,7 @@ public:
 
   /*!
    * \brief To set created elements on the shape set by IsQuadraticSubMesh()
-   *        or the next methods. By defaul elements are set on the shape if
+   *        or the next methods. By default elements are set on the shape if
    *        a mesh has no shape to be meshed
    */
   bool SetElementsOnShape(bool toSet)
@@ -539,7 +539,7 @@ public:
   bool GetNodeUVneedInFaceNode(const TopoDS_Face& F = TopoDS_Face()) const;
 
   /*!
-   * \brief Return projector intitialized by given face without location, which is returned
+   * \brief Return projector initialized by given face without location, which is returned
    */
   GeomAPI_ProjectPointOnSurf& GetProjector(const TopoDS_Face& F,
                                            TopLoc_Location&   loc,
@@ -561,9 +561,15 @@ public:
   /*!
    * \brief Check if the shape set through IsQuadraticSubMesh() or SetSubShape()
    *        has a degenerated edges
-    * \retval bool - true if it has
+   *  \retval bool - true if there are degenerated edges
    */
   bool HasDegeneratedEdges() const { return !myDegenShapeIds.empty(); }
+  /*!
+   * \brief Return a number of degenerated edges in the shape set through
+   *        IsQuadraticSubMesh() or SetSubShape()
+   *  \retval size_t - nb edges
+   */
+  size_t NbDegeneratedEdges() const { return myDegenShapeIds.size(); }
 
   /*!
    * \brief Check if shape is a seam edge or it's vertex
@@ -571,7 +577,7 @@ public:
     * \retval bool - true if subShape is a seam shape
     *
     * It works only if IsQuadraticSubMesh() or SetSubShape() has been called.
-    * Seam shape has two 2D alternative represenations on the face
+    * Seam shape has two 2D alternative representations on the face
    */
   bool IsSeamShape(const int subShape) const
   { return mySeamShapeIds.find( subShape ) != mySeamShapeIds.end(); }
@@ -581,7 +587,7 @@ public:
     * \retval bool - true if subShape is a seam shape
     *
     * It works only if IsQuadraticSubMesh() or SetSubShape() has been called.
-    * Seam shape has two 2D alternative represenations on the face
+    * Seam shape has two 2D alternative representations on the face
    */
   bool IsSeamShape(const TopoDS_Shape& subShape) const
   { return IsSeamShape( ShapeToIndex( subShape )); }
@@ -610,6 +616,12 @@ public:
    *  \retval bool - true if it has
    */
   bool HasRealSeam() const { return HasSeam() && ( *mySeamShapeIds.begin() < 0 ); }
+  /*!
+   * \brief Return a number of real seam edges in the shape set through
+   *        IsQuadraticSubMesh() or SetSubShape(). A real seam edge encounters twice in a wire
+   *  \retval size_t - nb of real seams
+   */
+  size_t NbRealSeam() const;
   /*!
    * \brief Return index of periodic parametric direction of a closed face
    *  \retval int - 1 for U, 2 for V direction