diff --git a/src/Mod/Part/App/ShapeFix/ShapeFix_EdgePy.xml b/src/Mod/Part/App/ShapeFix/ShapeFix_EdgePy.xml
index f2899e35fc..602230b643 100644
--- a/src/Mod/Part/App/ShapeFix/ShapeFix_EdgePy.xml
+++ b/src/Mod/Part/App/ShapeFix/ShapeFix_EdgePy.xml
@@ -18,37 +18,118 @@
- Removes pcurve(s) if not matching vertices.
+ Removes the pcurve(s) of the edge if it does not match the
+ vertices
+ Check is done
+ Use : It is to be called when pcurve of an edge can be wrong
+ (e.g., after import from IGES)
+ Returns: True, if does not match, removed (status DONE)
+ False, (status OK) if matches or (status FAIL) if no pcurve,
+ nothing done.
- Removes 3d curve if not matching vertices.
+ Removes 3d curve of the edge if it does not match the vertices
+ Returns: True, if does not match, removed (status DONE)
+ False, (status OK) if matches or (status FAIL) if no 3d curve,
+ nothing done.
- Adds missing pcurve(s) by projecting 3d curve.
+ Adds pcurve(s) of the edge if missing (by projecting 3d curve)
+ Parameter isSeam indicates if the edge is a seam.
+ The parameter 'prec' defines the precision for calculations.
+ If it is 0 (default), the tolerance of the edge is taken.
+ Remark : This method is rather for internal use since it accepts parameter
+ 'surfana' for optimization of computations
+ Use : It is to be called after FixRemovePCurve (if removed) or in any
+ case when edge can have no pcurve
+ Returns: True if pcurve was added, else False
+ Status :
+ OK : Pcurve exists
+ FAIL1: No 3d curve
+ FAIL2: fail during projecting
+ DONE1: Pcurve was added
+ DONE2: specific case of pcurve going through degenerated point on
+ sphere encountered during projection (see class
+ ShapeConstruct_ProjectCurveOnSurface for more info).
- Tries to build missing 3d curve.
+ Tries to build 3d curve of the edge if missing
+ Use : It is to be called after FixRemoveCurve3d (if removed) or in any
+ case when edge can have no 3d curve
+ Returns: True if 3d curve was added, else False
+ Status :
+ OK : 3d curve exists
+ FAIL1: BRepLib::BuildCurve3d() has failed
+ DONE1: 3d curve was added.
- Increases tolerances of edge vertices.
+ Increases the tolerances of the edge vertices to comprise
+ the ends of 3d curve and pcurve on the given face
+ (first method) or all pcurves stored in an edge (second one)
+ Returns: True, if tolerances have been increased, otherwise False
+ Status:
+ OK : the original tolerances have not been changed
+ DONE1: the tolerance of first vertex has been increased
+ DONE2: the tolerance of last vertex has been increased.
- Fixes edge if pcurve is opposite to 3d curve.
+ Fixes edge if pcurve is directed opposite to 3d curve
+ Check is done by call to the function
+ ShapeAnalysis_Edge::CheckCurve3dWithPCurve()
+ Warning: For seam edge this method will check and fix the pcurve in only
+ one direction. Hence, it should be called twice for seam edge:
+ once with edge orientation FORWARD and once with REVERSED.
+ Returns: False if nothing done, True if reversed (status DONE)
+ Status: OK - pcurve OK, nothing done
+ FAIL1 - no pcurve
+ FAIL2 - no 3d curve
+ DONE1 - pcurve was reversed.
- Makes edge SameParameter and sets tolerance.
+ Tries to make edge SameParameter and sets corresponding
+ tolerance and SameParameter flag.
+ First, it makes edge same range if SameRange flag is not set.
+ If flag SameParameter is set, this method calls the
+ function ShapeAnalysis_Edge::CheckSameParameter() that
+ calculates the maximal deviation of pcurves of the edge from
+ its 3d curve. If deviation > tolerance, the tolerance of edge
+ is increased to a value of deviation. If deviation < tolerance
+ nothing happens.
+
+ If flag SameParameter is not set, this method chooses the best
+ variant (one that has minimal tolerance), either
+ a. only after computing deviation (as above) or
+ b. after calling standard procedure BRepLib::SameParameter
+ and computing deviation (as above). If 'tolerance' > 0, it is
+ used as parameter for BRepLib::SameParameter, otherwise,
+ tolerance of the edge is used.
+
+ Use : Is to be called after all pcurves and 3d curve of the edge are
+ correctly computed
+ Remark : SameParameter flag is always set to True after this method
+ Returns: True, if something done, else False
+ Status : OK - edge was initially SameParameter, nothing is done
+ FAIL1 - computation of deviation of pcurves from 3d curve has failed
+ FAIL2 - BRepLib::SameParameter() has failed
+ DONE1 - tolerance of the edge was increased
+ DONE2 - flag SameParameter was set to True (only if
+ BRepLib::SameParameter() did not set it)
+ DONE3 - edge was modified by BRepLib::SameParameter() to SameParameter
+ DONE4 - not used anymore
+ DONE5 - if the edge resulting from BRepLib has been chosen, i.e. variant b. above
+ (only for edges with not set SameParameter).