diff --git a/configure.ac b/configure.ac
index a16f24ccf..af9313f9d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,7 +24,7 @@
# Modified by : Alexander BORODIN (OCN) - autotools usage
# Created from configure.in.base
#
-AC_INIT([Salome2 Project GEOM module], [6.3.0], [webmaster.salome@opencascade.com], [SalomeGEOM])
+AC_INIT([Salome2 Project GEOM module], [6.3.1], [webmaster.salome@opencascade.com], [SalomeGEOM])
AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
@@ -416,6 +416,7 @@ AC_OUTPUT([ \
doc/salome/gui/GEOM/doxyfile_py \
doc/salome/gui/GEOM/doxyfile_tui \
doc/salome/gui/GEOM/static/header.html \
+ doc/salome/gui/GEOM/static/header_py.html \
doc/salome/tui/Makefile \
doc/salome/tui/doxyfile \
doc/salome/tui/static/header.html \
diff --git a/doc/salome/gui/GEOM/doxyfile_py.in b/doc/salome/gui/GEOM/doxyfile_py.in
index 68f02fbde..e54f1c3e6 100755
--- a/doc/salome/gui/GEOM/doxyfile_py.in
+++ b/doc/salome/gui/GEOM/doxyfile_py.in
@@ -110,7 +110,7 @@ RECURSIVE = NO
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = geompy_doc
-HTML_HEADER = @builddir@/static/header.html
+HTML_HEADER = @builddir@/static/header_py.html
HTML_FOOTER = @srcdir@/static/footer.html
HTML_STYLESHEET = @srcdir@/static/doxygen.css
TOC_EXPAND = YES
diff --git a/doc/salome/gui/GEOM/images/curve1.png b/doc/salome/gui/GEOM/images/curve1.png
index 3a271f221..5b87ba81f 100644
Binary files a/doc/salome/gui/GEOM/images/curve1.png and b/doc/salome/gui/GEOM/images/curve1.png differ
diff --git a/doc/salome/gui/GEOM/images/curve2.png b/doc/salome/gui/GEOM/images/curve2.png
index 370df7128..a9dd3f0f7 100644
Binary files a/doc/salome/gui/GEOM/images/curve2.png and b/doc/salome/gui/GEOM/images/curve2.png differ
diff --git a/doc/salome/gui/GEOM/images/curve3.png b/doc/salome/gui/GEOM/images/curve3.png
new file mode 100644
index 000000000..7d711c2f3
Binary files /dev/null and b/doc/salome/gui/GEOM/images/curve3.png differ
diff --git a/doc/salome/gui/GEOM/images/curve4.png b/doc/salome/gui/GEOM/images/curve4.png
new file mode 100644
index 000000000..cbb60924d
Binary files /dev/null and b/doc/salome/gui/GEOM/images/curve4.png differ
diff --git a/doc/salome/gui/GEOM/images/glue7.png b/doc/salome/gui/GEOM/images/glue7.png
new file mode 100644
index 000000000..a365ca2c4
Binary files /dev/null and b/doc/salome/gui/GEOM/images/glue7.png differ
diff --git a/doc/salome/gui/GEOM/images/glue8.png b/doc/salome/gui/GEOM/images/glue8.png
new file mode 100644
index 000000000..20e3aec7d
Binary files /dev/null and b/doc/salome/gui/GEOM/images/glue8.png differ
diff --git a/doc/salome/gui/GEOM/input/creating_curve.doc b/doc/salome/gui/GEOM/input/creating_curve.doc
index 3d9a1fcb8..aa3019d69 100644
--- a/doc/salome/gui/GEOM/input/creating_curve.doc
+++ b/doc/salome/gui/GEOM/input/creating_curve.doc
@@ -5,58 +5,93 @@
To create a \b Curve in the Main Menu select New Entity - >
Basic - > Curve
-\n There are three algorithms to create a \b Curve in the 3D space. Each
-time you define it by a list of \b Points through which the curve
-passes. The three Curve Construction menu choices correspond to three
+There are three Curve Construction menu choices corresponding to three
possible types of curves: Polyline, Besier or B-spline (Interpolated).
+The curve is defined by a list of \b Points through which it passes.
+
+
+\n There are two ways to define these Points:
+
+
By Selection manual picking of the points in the Object Browser or 3D Viewer.
+
Analytical parametric definition of the points through
+python expressions.
+
+
\n The \b Result of each operation will be a GEOM_Object (edge).
-\n There are two ways to define Points:
-
-
By Selection choice of the points manually in the Object Browser or 3D Viewer.
-
Analitical parametric definition of the points through python expressions.
-
-ListOfShape is a list of points through which the curve passes.
-If isClosed is True, MakeBezier and MakeInterpol builds a closed edge,
-MakePolyline builds a closed wire. If doReordering is True,
-MakeInterpol does not follow the order of vertices but searches for the
-closest vertex.
-\n XExpr, YExpr, ZExpr python expressions for the X, Y and Z coordinates of the basic points of the curve.
-\n tMin, tMax minimum and maximun values of the parameter \b t.
-\n tStep step of the parameter \b t
-\n curveType type of the curve Polyline, Bezier or Interpolation.
-
-Arguments:
-
-
Name + at least 2 points which will serve as nodes on the curve, or
-
Name + 3 string + 3 values (python expressions for the X, Y and Z coordinates, minimum,
-maximum and step values of the parameter)
-
-
-
-\nAdvanced options \ref preview_anchor "Preview"
-
-\image html curve.png
-\image html curve1.png
-\image html curve2.png
-
-Examples:
+Polyline
\image html polyline.png
-
Polyline
+
+Polyline or polygonal chain is a connected series of line segments. It
+can be defined by the following parameters:
+
+\image html curve2.png
+
+
+
Points at least 2 points which will serve as nodes on the curve.
+
Build a closed wire checkbox allows creating the curve as
+closed wire.
+
+
+\n TUI Command:geompy.MakePolyline(ListOfShapes,isClosed)
+
+Bezier
\image html bezier.png
-
Bezier
+
+Bezier curve is a curve completely contained in a convex hull of its
+control points. It can be defined by the following parameters:
+
+
+\image html curve3.png
+
+
+
Points at least 2 points used to approximate the curve.
+
Build a closed edge checkbox allows creating the curve as
+closed edge.
+
+
+\n TUI Command:geompy.MakeBezier(ListOfShapes,isClosed)
+
+B-spline
\image html interpol.png
-
B-Spline
+
+B-spline is a union of curve segments defined at each node span. It
+can be defined by the following parameters:
+
+\image html curve4.png
+
+
+
Points at least 2 points which will serve as nodes on the curve.
+
Build a closed edge checkbox allows creating the curve as
+closed edge.
+
If Reorder vertices taking into account distances is
+checked, the interpolation algorithm does not follow the order of
+vertices but searches for the closest vertex.
+
+
+\n TUI Command:
+geompy.MakeInterpol(ListOfShapes,isClosed,doReordering)
+
+Analytical Definition
+
+The input parameters for analytical definition are common for all
+types of curves.
+
+\image html curve1.png
+
+
+
X(t)equation, Y(t)equation, Z(t)equation are python
+expressions for X, Y and Z coordinates of the basic points of the curve.
+
Min t, Max t are minimum and maximum values of the parameter \b t.
+
Step is the step of the parameter \b t.
+
+
+\n TUI Command:geompy.MakeCurveParametric(XExpr, YExpt, ZExpt, tMin, tMax, tStep, curveType)
+
+\nAdvanced options \ref preview_anchor "Preview"
Our TUI Scripts provide you with useful examples of creation of
\ref tui_creation_curve "Basic Geometric Objects".
diff --git a/doc/salome/gui/GEOM/input/creating_edge.doc b/doc/salome/gui/GEOM/input/creating_edge.doc
index ce4f7b8b0..f22f4c495 100644
--- a/doc/salome/gui/GEOM/input/creating_edge.doc
+++ b/doc/salome/gui/GEOM/input/creating_edge.doc
@@ -41,17 +41,21 @@ the connection points (sharp bend) is not processed.
\image html edge2.png "Create edge from wire"
-The third case allows building edges of desired length on any existing
-curve (selected existing edge). Start Point parameter is optional.
-Any point can be selected for it, the new edge will begin at the end
-of initial edge, close to the selected point. Length can exceed
-the initial edge's length or be negative to extrapolate existing edge
-along its curve (except bezier and b-spline curves).
+Thirdly, it is possible to build an edge of required \b Length on any existing
+\b Edge.
+
+Start Point parameter is optional:
+- if used, it allows selecting any existing point - in such a case the start point
+of the new edge will be chosen as start or end point of the selected \b Edge
+whatever is closest to the selected Start Point
+- if it is missed, the start point of the initial edge is used
+
+Length can exceed the length of the initial edge length or be
+negative. In this case the existing edge is extrapolated
+along its curve (except for bezier and b-spline curves).
TUI Command:geompy.MakeEdgeOnCurveByLength(Edge, Length, StartPoint = None) Arguments: Name + 1 edge + Length + 1 Vertex
-(StartPoint parameter is optional, it allows switching from one end of
-initial edge to another. Length can exceed the initial edge's length or be negative).
\image html edge3.png "Create edge on curve"
diff --git a/doc/salome/gui/GEOM/input/creating_explode.doc b/doc/salome/gui/GEOM/input/creating_explode.doc
index dfda1d384..fd90a0383 100644
--- a/doc/salome/gui/GEOM/input/creating_explode.doc
+++ b/doc/salome/gui/GEOM/input/creating_explode.doc
@@ -16,7 +16,7 @@ obtain from it.
variety of ways:
geompy.ExtractShapes(Shape, Type, isSorted) explodes a
-Shape on subshapes of a given Type and returns a List of sub-shapes.
+Shape into subshapes of a given Type and returns a List of sub-shapes.
This method does not return the Shape itself if it matches the
Type.
geompy.SubShapeAll(Shape, Type) explodes a Shape on
diff --git a/doc/salome/gui/GEOM/input/creating_point.doc b/doc/salome/gui/GEOM/input/creating_point.doc
index 7b3e4cba9..9844a3cff 100644
--- a/doc/salome/gui/GEOM/input/creating_point.doc
+++ b/doc/salome/gui/GEOM/input/creating_point.doc
@@ -33,15 +33,17 @@ point is located in the middle of the edge.
position of the point on the given edge.
\image html point3.png
-Alternatively, it is possible to define the point by \b Edge and \b Length,
-the given length can exceed the length of the edge or be negative
-(except bezier and b-spline curves). The orientation of the edge can
-be reversed by the \b StartPoint selection.
-\n TUI Command:geompy.MakeVertexOnCurveByLength(Edge,Length,StartPoint=None).
-\n Arguments: Name + 1 edge + 1 Length defining the position
-of the point on the given edge + 1 Point defining the direction for
-the calculation of the length (if not defined, the first vertex of
+Alternatively, it is possible to define a point by an \b Edge and a \b Length.
+The \b Length defines the position of the point on the given edge. It
+can exceed the length of the edge or be negative. In this case the edge
+is extrapolated along its curve (except for bezier and b-spline
+curves).
+The Start Point defines the direction for the length
+calculation (if not defined, the first vertex of
Edge is used, else the vertex of Edge closest to StartPoint is used).
+\n TUI Command:geompy.MakeVertexOnCurveByLength(Edge,Length,StartPoint=None).
+\n Arguments: Name + 1 edge + 1 Length + 1 Point.
+
\image html point3_3.png
It is also possible to define 3D coordinates of the point
diff --git a/doc/salome/gui/GEOM/input/glue_edges_operation.doc b/doc/salome/gui/GEOM/input/glue_edges_operation.doc
new file mode 100644
index 000000000..3f82fc53c
--- /dev/null
+++ b/doc/salome/gui/GEOM/input/glue_edges_operation.doc
@@ -0,0 +1,60 @@
+/*!
+
+\page glue_edges_operation_page Glue Edges
+
+\n To Glue Edges in the Main Menu select Repair - > Glue Edges.
+
+\n This operation glues edges that are coincident with respect to the
+given tolerance value.
+
+\n Arguments: Name + Compound of shapes + Tolerance value.
+\n Advanced option:
+ \ref restore_presentation_parameters_page "Set presentation parameters and subshapes from arguments".
+\n The \b Result will be a \b GEOM_Object.
+
+
+\image html glue4.png
+
+\n TUI Command:
+\n geompy.MakeGlueEdges(theShape,theTolerance),
+\n where \em theShape is a compound of shapes to be glued, and \em
+ theTolerance is a maximum distance between two faces/edges, which can
+ be considered as coincident.
+
+\n It is also possible to manually select the edges that will be
+glued - select the shape, specify the tolerance and press \b Detect button.
+
+\image html glue5.png
+
+\n \b Geometry module detects the edges where gluing can be
+performed and displays a notification.
+
+\image html glue7.png
+
+\n The edges that can be glued are colored in red. It is
+possible to select the edges for gluing in the 3D viewer.
+The selected edges will be marked in white.
+
+\n TUI Command:
+\n geompy.GetGlueEdges(theShape,theTolerance),
+\n where \em theShape is a compound of shapes to be glued, \em
+ theTolerance is a maximum distance between two edges, which can
+ be considered as coincident. The \b Result will be a list of \b
+ GEOM_Objects, containing one sub shape per each detected set of
+ coincident sub shapes.
+
+\n geompy.MakeGlueEdgesByList(theShape,theTolerance,theEdges),
+\n where \em theShape is a compound of shapes to be glued, \em
+ theTolerance is a maximum distance between two edges, which can
+ be considered as coincident, \em theEdges is a list of
+ subshapes to be glued.
+
+\n Example:
+
+\image html glue8.png
+
Box with an edge that can be glued
+
+Our TUI Scripts provide you with useful examples of the use of
+Repairing Operations \ref tui_glue_edges "Glue Edges".
+
+*/
diff --git a/doc/salome/gui/GEOM/input/glue_faces_operation.doc b/doc/salome/gui/GEOM/input/glue_faces_operation.doc
index 435a303fa..5e887d1d9 100644
--- a/doc/salome/gui/GEOM/input/glue_faces_operation.doc
+++ b/doc/salome/gui/GEOM/input/glue_faces_operation.doc
@@ -1,11 +1,11 @@
/*!
-\page glue_faces_operation_page Glue Faces / Edges
+\page glue_faces_operation_page Glue Faces
\n To Glue Faces in the Main Menu select Repair - > Glue Faces.
-\n To Glue Edges in the Main Menu select Repair - > Glue Edges.
-\n This operation glues faces/edges that are coincident with respect to the
+
+\n This operation glues faces that are coincident with respect to the
given tolerance value.
\n Arguments: Name + Compound of shapes + Tolerance value.
@@ -14,51 +14,46 @@ given tolerance value.
\n The \b Result will be a \b GEOM_Object.
\image html glue1.png
-\n \image html glue4.png
+
\n TUI Commands:
- geompy.MakeGlueFaces(theShape,theTolerance,doKeepNonSolids) and
- geompy.MakeGlueEdges(theShape,theTolerance),
- where \em theShape is a compound of shapes to be glued, \em
- theTolerance is a maximum distance between two faces/edges, which can
+\n geompy.MakeGlueFaces(theShape,theTolerance,doKeepNonSolids),
+\n where \em theShape is a compound of shapes to be glued, \em
+ theTolerance is a maximum distance between two faces, which can
be considered as coincident. The \em doKeepNonSolids flag allows to
throw away non-solids from the result, if false. The \b Result will
be a new \b GEOM_Object.
-\n It is also possible to manually select the faces/edges that will be
+\n It is also possible to manually select the faces that will be
glued - select the shape, specify the tolerance and press \b Detect button.
\image html glue2.png
-\n \image html glue5.png
-\n \b Geometry module detects the faces/edges where gluing can be
+\n \b Geometry module detects the faces where gluing can be
performed and displays a notification.
\image html glue3.png
-\n The faces/edges that can be glued are colored in red. It is
-possible to select the faces/edges for gluing in the 3D viewer.
-The selected faces/edges will be marked in white.
+\n The faces that can be glued are colored in red. It is
+possible to select the faces for gluing in the 3D viewer.
+The selected faces will be marked in white.
-\n For faces gluing their edges are also glued. By default, other
-edges are not glued (this concerns only Glue Faces, of course).
-To force all edges gluing, check the "Glue all coincident edges"
+\n When the faces are glued their edges are glued as well. By default, other
+edges are not glued. To force gluing of all edges, check Glue all coincident edges
checkbox.
\n TUI Commands:
- geompy.GetGlueFaces(theShape,theTolerance) and
- geompy.GetGlueEdges(theShape,theTolerance),
- where \em theShape is a compound of shapes to be glued, \em
- theTolerance is a maximum distance between two faces/edges, which can
+\n geompy.GetGlueFaces(theShape,theTolerance),
+\n where \em theShape is a compound of shapes to be glued, \em
+ theTolerance is a maximum distance between two faces, which can
be considered as coincident. The \b Result will be a list of \b
GEOM_Objects, containing one sub shape per each detected set of
coincident sub shapes.
-\n geompy.MakeGlueFacesByList(theShape,theTolerance,theFaces,doKeepNonSolids,doGlueAllEdges)
- and geompy.MakeGlueEdgesByList(theShape,theTolerance,theEdges),
- where \em theShape is a compound of shapes to be glued, \em
- theTolerance is a maximum distance between two faces/edges, which can
- be considered as coincident, \em theFaces/theEdges is a list of
+\n geompy.MakeGlueFacesByList(theShape,theTolerance,theFaces,doKeepNonSolids,doGlueAllEdges),
+\n where \em theShape is a compound of shapes to be glued, \em
+ theTolerance is a maximum distance between two faces, which can
+ be considered as coincident, \em theFaces is a list of
subshapes to be glued. The \em doKeepNonSolids flag allows to throw
away non-solids from the result, if false. The \em doGlueAllEdges
allows to glue all edges, not only owned by glued faces. The \b
@@ -76,7 +71,6 @@ checkbox.
Manual selection of faces for gluing
Our TUI Scripts provide you with useful examples of the use of
-Repairing Operations \ref tui_glue_faces "Glue Faces" and \ref
-tui_glue_edges "Glue Edges".
+Repairing Operations \ref tui_glue_faces "Glue Faces".
*/
diff --git a/doc/salome/gui/GEOM/input/repairing_operations.doc b/doc/salome/gui/GEOM/input/repairing_operations.doc
index 592c1b653..3e10dcd07 100644
--- a/doc/salome/gui/GEOM/input/repairing_operations.doc
+++ b/doc/salome/gui/GEOM/input/repairing_operations.doc
@@ -17,6 +17,8 @@ holes with free boundaries on a selected face.
\subpage sewing_operation_page "Sewing" - sews faces or shells.
\subpage glue_faces_operation_page "Glue faces" - unites
coincident faces within the given tolerance.
+
\subpage glue_edges_operation_page "Glue edges" - unites
+coincident edges within the given tolerance.
\subpage limit_tolerance_operation_page "Limit Tolerance" - tries
to set new tolerance value for the given shape.
\subpage add_point_on_edge_operation_page "Add point on edge" -
diff --git a/doc/salome/gui/GEOM/input/restore_presentation_parameters.doc b/doc/salome/gui/GEOM/input/restore_presentation_parameters.doc
index ff7d59c6f..fd26d05e2 100644
--- a/doc/salome/gui/GEOM/input/restore_presentation_parameters.doc
+++ b/doc/salome/gui/GEOM/input/restore_presentation_parameters.doc
@@ -4,7 +4,7 @@
Set presentation parameters and subshapes from arguments
-\n This option allows the operation result to inherit colour
+\n This option allows the operation result to inherit color
and subshapes from its arguments.
\n To activate this functionality, check in "Set
@@ -17,7 +17,7 @@ faces and Cylinder_1 with free published edges.
\image html restore-ss-viewer-before.png "The initial box and cylinder"
First, we examine the case when the resulting shape corresponds to one argument (after transformation,
-after the boolean operation Cut, or after the partiton with one object shape).
+after the Boolean operation Cut, or after the partiton with one object shape).
We create a Cut of Box_1 with Cylinder_1.
@@ -28,7 +28,7 @@ The resulting shape inherits the subshapes and the colour of Box_1.
\image html restore-ss-viewer-cut.png "The resulting shape"
Second, we examine the case when the resulting shape is composed from multiple arguments
-(after all boolean operations, except for Cut, or after the partition with
+(after all Boolean operations, except for Cut, or after the partition with
several object shapes, or if the resulting shape is a compound).
We create a Common of Box_1 and Cylinder_1.
@@ -37,7 +37,7 @@ We create a Common of Box_1 and Cylinder_1.
\n The resulting object is created with several subshapes that correspond to the
operation arguments and their published subshapes. The resulting shape
-has a default colour, but its subshapes inherit colors corresponding
+has a default color, but its subshapes inherit colors corresponding
to arguments and their subshapes.
\image html restore-ss-viewer-after.png "The resulting shape"
@@ -62,6 +62,6 @@ restored sub-shapes, and the prefix "from_subshapes_of_" to the names of partial
By default this option is On.
\anchor preview_anchor
Preview
-Preview checkbox allows display/erase simulation of the Result in the viewer.
+Preview checkbox allows displaying/erasing simulation of the Result in the viewer.
*/
diff --git a/doc/salome/gui/GEOM/static/header_py.html.in b/doc/salome/gui/GEOM/static/header_py.html.in
new file mode 100644
index 000000000..36e6a0c38
--- /dev/null
+++ b/doc/salome/gui/GEOM/static/header_py.html.in
@@ -0,0 +1,23 @@
+
+
+
+
+$title
+
+
+
+
+
+
+
+
+
+
+
+