Salome HOME
Fix compilation error (conflict of OK name between OCCT Plate_Plate.hxx and GEOM...
[modules/geom.git] / doc / salome / gui / GEOM / input / creating_point.doc
1 /*!
2
3 \page create_point_page Point
4
5 To create a \b Point in the <b>Main Menu</b> select <b>New Entity - >
6 Basic - > Point</b>
7
8 \n There are five algorithms to create a \b Point in the 3D space.
9 \n Each time the \b Result of the operation will be a GEOM_Object
10 (vertex).
11
12 \n Firstly, we can define a point by setting its X, Y and Z \b Coordinates. 
13 \n <b>TUI Command:</b> <em>geompy.MakeVertex(X, Y, Z)</em>
14 \n \b Arguments: Name (Vertex_n by default) + X, Y and Z coordinates of
15 the point.
16
17 \image html point1.png
18
19 \n Secondly,  we can define a point by a \b Reference to another point
20 and the shift of the coordinates of the new point regarding the
21 coordinates of the old one.
22 \n <b>TUI Command:</b> <em>geompy.MakeVertexWithRef(Reference, X,Y,Z).</em>
23 \n <b>Arguments:</b> Name + 1 reference point + 3 coordinates defining
24 the position of this point regarding the reference one.
25
26 \image html point2.png
27
28 \n Thirdly, we can define a point by an \b Edge and a \b Parameter
29 indicating its position on the Edge, ranging from 0.0 to 1.0. For example, 0.5 means that the
30 point is located in the middle of the edge.
31 \n <b>TUI Command:</b> <em>geompy.MakeVertexOnCurve(Edge,Parameter,takeOrientationIntoAccount).</em>
32 \n <b>Arguments:</b> Name + 1 edge  + 1 Parameter defining the
33 position of the point on the given edge + flag that tells if it is necessary
34 to take the edge orientation into account.
35 \image html point3.png
36
37 Alternatively, it is possible to define a point by an \b Edge and a \b Length.
38 The \b Length defines the position of the point on the given edge. It
39 can exceed the length of the edge or be negative. In this case the edge
40 is extrapolated along its curve (except for bezier and b-spline
41 curves). 
42 The <b>Start Point</b> defines the direction for the length
43 calculation (if not defined, the first vertex of the 
44 Edge is used, else the vertex of the Edge, which is closest to the Start Point).
45 \n <b>TUI Command:</b> <em>geompy.MakeVertexOnCurveByLength(Edge,Length,StartPoint=None).</em>
46 \n <b>Arguments:</b> Name + 1 edge  + 1 Length  + 1 Point.
47
48 \image html point3_3.png
49
50 It is also possible to define 3D coordinates of the point
51 projected on the given edge to produce the resulting point.
52 \n <b>TUI Command:</b> <em>geompy.MakeVertexOnCurveByCoord(Edge,X,Y,Z).</em>
53 \n <b>Arguments:</b> Name + 1 edge  + 3 coordinate values of the
54 projected point.
55 \image html point3_2.png
56
57 \n Fourthly, we can define a point by intersection of two \b Lines or \b Wires (or a Wire and a Line).
58 If they intersect only once, a point will be created. If there are several intersections, a compound of points will be created.
59 \n <b>TUI Command:</b> <em>geompy.MakePointOnLinesIntersection(myLine1,myWire1).</em>
60 \n <b>Arguments:</b> Name + 2 1D objects
61
62 \image html point4.png
63
64 \n Finally, we can define a point located on a \b Face. 
65 The position of the point on it can be defined in one of two ways:
66
67 - by two <b> Parameters: U </b> and \b V, ranging from 0.0 to 1.0. For example, (0.5; 0.5) means that the point is located in the middle of the face.
68 \n <b>TUI Command:</b> <em>geompy.MakeVertexOnSurface(myFace,myUParameter,myVParameter).</em>
69 \n <b>Arguments:</b> Name + 1 face + 2 Parameters defining the position of the point on the given face.
70
71 \image html point5.png
72
73 - by three coordinates of the point projected on the given face.
74 \n <b>TUI Command:</b> <em>geompy.MakeVertexOnSurfaceByCoord(myFace,X,Y,Z).</em>
75 \n <b>Arguments:</b> Name + 1 face  + 3 coordinate values to project point on the given face.
76
77 \image html point5_2.png
78
79 \note This dialog supports navigation through the selectable objects (in OCC 3D viewer only):
80 - Scroll mouse wheel with pressed \em Ctrl key or press \em "S", \em "P" keys when input focus is
81 in the viewer to navigate between selectable objects.
82 - Press left mouse button to select an appropriate object to the dialog box.
83 .
84 For more details, please refer to the \em "Functionality common for OCC and VTK viewers" chapter
85 of the GUI module's documentation.
86
87 <b>Example:</b>
88
89 \image html points.png "Points by edge and parameter and by coordinates"
90
91 Our <b>TUI Scripts</b> provide you with useful examples of creation of \ref tui_creation_point "Basic Geometric Objects".
92
93 */