Salome HOME
Fix compilation error (conflict of OK name between OCCT Plate_Plate.hxx and GEOM...
[modules/geom.git] / doc / salome / gui / GEOM / input / add_point_on_edge_operation.doc
1 /*!
2
3 \page add_point_on_edge_operation_page Add Point on Edge
4
5 \n To <b>Add Point on Edge</b> in the <b>Main Menu</b> select
6 <b>Repair - > Add Point on Edge</b>.
7
8 This operation splits an edge in two or more new edges.
9 This operation is available in <b>OCC Viewer</b> only.
10
11 The \b Result will be a \b GEOM_Object.
12
13 \n The location of a new vertex on the selected edge can be defined in two ways:
14 <ol>
15   <li> By specifying the position (ranging from 0.0 to 1.0) by length or by parameter.
16     <p>
17     <b>TUI Command:</b> <em>geompy.DivideEdge(Shape, EdgeID, Value,
18       IsByParameter)</em>
19     <ul>
20       <li> \em Shape is a shape, which contains an edge to be divided;</li>
21       <li>\em EdgeID is the ID of the edge to be divided, if it is = -1,
22         then \em Shape should be an edge itself;</li>
23       <li> \em Value is a value of parameter on edge or length parameter,
24         depending on \em IsByParameter;</li>
25       <li> \em IsByParameter is a boolean flag, specifying the operation mode:
26         - \c True: \em Value is treated as a curve parameter; [0..1]
27         - \c False: \em Value is treated as a length parameter. [0..1] </li>
28     </ul>
29     \b Arguments: Name + 1 Edge + 1 Value setting the position of
30     the point according to the selected mode.
31
32     The difference between "by parameter" and "by length" modes becomes
33     apparent on the edges with irregular parametrization (for example,
34     b-splines which usually have irregular density by the length).
35     For example, value 0.5 "by length" on such edge will produce the point
36     in the middle of this edge (equidistant from both its ends); the same
37     0.5 value "by parameter" will result in the point situated closer to
38     one of the ends (depending on the actual parametrization).
39
40     \image html repair8.png
41     \n\n
42   </li>
43   <li> By selecting several points that will be projected to the selected
44     edge to find the location of new vertices.
45     <p>
46     <b>TUI Command:</b> <em>geompy.DivideEdgeByPoint(Shape, Edge, Points):</em>
47     <ul>
48       <li> \em Shape is a shape, which contains an edge to be divided;</li>
49       <li>\em Edge is an edge to be divided (or its ID, if it is = -1,
50         then \em Shape should be an edge itself);</li>
51       <li> \em Points is a list of points to be projected to the \a Edge.</li>
52     </ul>
53     \b Arguments: Name + 1 Edge + 1 or more Points.
54
55     \image html divedgebypoint.png
56
57   </li>
58 </ol>
59
60 \n <b>Example:</b>
61
62 \image html image167.png "The initial edge"
63
64 \image html image168.png "The edge split in two segments"
65
66 Our <b>TUI Scripts</b> provide you with useful examples of the use of
67 \ref tui_add_point_on_edge "Repairing Operations".
68
69 */