Salome HOME
c8e4b9b7df9ac66f4aed804f1a4146f731a1da51
[modules/shaper.git] / src / SketchPlugin / doc / SketchPlugin.rst
1
2 .. _sketchPlugin:
3 .. |SketchButton.icon|    image:: images/SketchButton.png
4
5
6 Sketch plug-in
7 ================
8
9 Sketch plug-in includes features for creation of 2D shapes.
10
11 The sketch creation takes the following steps:
12
13 - definition of sketch plane;
14 - creation of sketch objects from scratch;
15 - generation of sketch objects via operations on the existing operations;
16 - definition of constraints.
17
18 Sketch can be created in the active part or in a partset (if there is no active part).
19
20 To create a Sketch:
21
22 #. select in the Main Menu *Sketch - > Sketch* item  or
23 #. click |SketchButton.icon| **Sketch** button in Sketch toolbar:
24
25 First define a plane for the sketch:
26
27 .. image:: images/PlaneDefinition.png
28    :align: center
29
30 - specify plane size (equal to 25 in the example above);
31 - select the appropriate plane in the viewer.
32
33 Note that coordinate planes will be suggested for selection if no convenient objects for plane selection are displayed in the viewer:
34
35 .. image:: images/CoordinatePlanes.png
36    :align: center
37
38 After the plane for sketch is selected, the following property panel will be opened:
39
40 .. image:: images/SketchPanel.png
41    :align: center
42
43 .. centered::
44   Sketch general panel
45
46 - **Reversed** check box - allows reversing the sketch plane normal;
47 - **Set plane view** button - switches the viewer to the top view for the sketch plane;
48 - **Show geometrical constraints** check box - displays/hides geometrical constraints:
49 - **Show dimensional constraints** check box - displays/hides dimensional constraints; 
50 - **Show existing expressions** check box - displays/hides expressions.
51 - **Show free points** check box - highlights free points in the current sketch if it is checked.
52 - **Automatic constraints** - automatically create horizontal or vertical constraints if angle between created line and horizontal or vertical less then angular tolerance (defined in preferences).
53 - **Change sketch plane** button - allows to change working plane of the current sketch.
54 - **Show remaining DoFs** button - highlights all sketch edges which are not fully constrained.
55
56 Now it is possible to:
57
58 - create :ref:`sketch objects <sketch_objects>`
59 - create :ref:`constraints <sketch_constraints>`
60 - perform :ref:`sketch operations <sketch_operations>`
61
62 To apply or cancel sketch creation use Apply and Cancel buttons from the
63 Sketch panel as well as equivalent buttons from Sketch toolbar.
64
65 The Result of operation will be a COMPOUND. In the object tree, Result node is located in
66 **Constructions** folder.
67
68 The Name is assigned automatically: **Sketch_1**, **Sketch_2**, ... both for Feature and Result.
69
70 **TUI Command**:
71
72 .. py:function:: model.addSketch(PartOrPartSet, plane)
73
74     :param part: The current part object.
75     :param object: A plane.
76     :return: Result object.
77
78 .. _sketch_objects:
79
80 Sketch objects
81 --------------
82
83 The plug-in includes the following features for creation of 2D objects:
84
85 .. toctree::
86    :maxdepth: 1
87
88    pointFeature.rst
89    lineFeature.rst
90    rectangleFeature.rst
91    circleFeature.rst
92    arcFeature.rst
93    ellipseFeature.rst
94    arcEllipseFeature.rst
95
96 .. _sketch_constraints:
97
98 Constraints
99 -----------
100
101 Constraints are available and viewable during sketch creation or editing.
102
103 The goal of constraints creation is to fix sketch geometry, i.e. set degrees of freedom to zero.
104
105 If all degrees of freedom are eliminated, the sketch is fixed and displayed with green color.
106
107 .. image:: images/Sketch_fixed.png
108    :align: center
109
110 .. centered::
111   Fixed Sketch
112
113 If any degrees of freedom remain unsolved, the sketch is under-constrained and displayed with red color.
114
115 .. image:: images/Sketch_underconstrained.png
116    :align: center
117
118 .. centered::
119   Underconstrained Sketch
120
121 The plug-in includes the following constraints:
122
123 .. toctree::
124    :maxdepth: 1
125
126    distanceFeature.rst
127    horizontalDistFeature.rst
128    verticalDistFeature.rst
129    lengthFeature.rst
130    angleFeature.rst
131    radiusFeature.rst
132    horizontalFeature.rst
133    verticalFeature.rst
134    fixedFeature.rst
135    parallelFeature.rst
136    perpendicularFeature.rst
137    tangentFeature.rst
138    coincedentFeature.rst
139    middleFeature.rst
140    equalFeature.rst
141    collinearFeature.rst
142
143 .. _sketch_operations:
144
145 Overconstraned state
146 --------------------
147
148 Sketcher comes into overconstrained state when an extra constraint was defined. The following picture shows an example of the overconstrained state:
149
150 .. image:: images/Overconstrained.png
151    :align: center
152
153 .. centered::
154   Overconstrained Sketch
155
156 When Sketcher gets this state then:
157
158 - buttons Apply and Cancel for the whole Sketcher are blocked;
159 - a constraint which causes the overconstraint state is highlightid by red color;
160 - a warning message in sketcher Property Panel is shown with recomendation what to do in this case;
161 - an additional Undo button is shown under the warning messages;
162
163 After undoing the last operation or deletion of a conflicting constraint Sketcher will be reverted into a normal state.
164
165 Operations
166 ----------
167 Operations modify existing features of the sketch or create new ones by copying them.
168
169 The plug-in includes the following operations:
170
171 .. toctree::
172    :maxdepth: 1
173
174    filletFeature.rst
175    splitFeature.rst
176    trimFeature.rst
177    projectionFeature.rst
178    intersectionFeature.rst
179    mirrorFeature.rst
180    translationFeature.rst
181    rotationFeature.rst
182    sketchDrawer.rst