]> SALOME platform Git repositories - modules/shaper.git/blob - src/SketchPlugin/plugin-Sketch.xml
Salome HOME
5bfeb303da55a22c536d05c8be04523b01c20494
[modules/shaper.git] / src / SketchPlugin / plugin-Sketch.xml
1 <plugin>
2   <workbench id="Sketch">
3     <group id="Linear geometry">
4       <feature
5         id="Sketch"
6         nested="SketchPoint SketchIntersectionPoint SketchLine
7                 SketchCircle SketchMacroCircle SketchArc SketchMacroArc
8                 SketchEllipse SketchMacroEllipse SketchEllipticArc SketchMacroEllipticArc
9                 SketchBSpline SketchMacroBSpline SketchMacroBSplinePeriodic SketchBSplinePeriodic
10                 SketchRectangle
11                 SketchProjection
12                 SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintDistanceHorizontal SketchConstraintDistanceVertical
13                 SketchConstraintParallel SketchConstraintPerpendicular
14                 SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical
15                 SketchConstraintEqual SketchConstraintTangent
16                 SketchFillet SketchSplit SketchTrim
17                 SketchConstraintCoincidence SketchConstraintCoincidenceInternal
18                 SketchConstraintMirror SketchConstraintAngle
19                 SketchMultiRotation SketchMultiTranslation
20                 SketchOffset
21                 SketchConstraintCollinear SketchConstraintMiddle"
22         when_nested="accept abort"
23         title="Sketch"
24         tooltip="Create sketch"
25         icon="icons/Sketch/sketch.png"
26         helpfile="SketchPlugin.html">
27         <sketch-start-label id="External" geometrical_selection="true" title="Select a plane on which to create a sketch" tooltip="Select a plane on which to create a sketch">
28           <validator id="GeomValidators_Face" parameters="plane"/>
29         </sketch-start-label>
30         <undo_label id="SolverError" isHTML="true" />
31         <validator id="SketchPlugin_SolverErrorValidator"/>
32       </feature>
33
34       <!-- SketchPoint -->
35       <feature id="SketchPoint" title="Point" tooltip="Create point" icon="icons/Sketch/point.png"
36                 helpfile="pointFeature.html">
37         <sketch-2dpoint_selector id="PointCoordinates" accept_expressions="0" title="Point" tooltip="Point coordinates"
38                                  enable_value="enable_by_preferences"/>
39         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
40       </feature>
41
42       <!-- SketchLine -->
43       <feature id="SketchLine" title="Line" tooltip="Create line" icon="icons/Sketch/line.png"
44                helpfile="lineFeature.html">
45         <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates"
46                                  enable_value="enable_by_preferences"/>
47         <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"
48                                  enable_value="enable_by_preferences"/>
49         <labelvalue id="LineLength" accept_expressions="0" label="Length" default="computed" icon="icons/Sketch/distance_value.png"
50                      tooltip="Line length" obligatory="0" enable_value="false"/>
51         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
52         <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
53       </feature>
54     </group>
55     <group id="Conical geometry">
56       <!-- SketchCircle is a hidden feature. It is created inside SketchMacroCircle. -->
57       <feature id="SketchCircle"
58                title="Circle"
59                tooltip="Create circle"
60                icon="icons/Sketch/circle.png"
61                internal="1">
62         <sketch-2dpoint_selector id="circle_center"
63                                  title="Center"
64                                  tooltip="Center coordinates"
65                                  accept_expressions="0"
66                                  enable_value="enable_by_preferences"/>
67         <labelvalue id="circle_radius"
68                     icon="icons/Sketch/radius.png"
69                     label="Radius"
70                     tooltip="Set radius"
71                     default="computed"
72                     accept_expressions="0"
73                     enable_value="enable_by_preferences">
74         </labelvalue>
75         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
76       </feature>
77       <!-- SketchMacroCircle -->
78       <feature id="SketchMacroCircle"
79                icon="icons/Sketch/circle.png"
80                title="Circle"
81                tooltip="Create circle"
82                helpfile="circleFeature.html">
83         <toolbox id="circle_type" modified_in_edit="edit_circle_type">
84           <box id="circle_type_by_center_and_passed_points"
85                icon="icons/Sketch/circle_pt_rad_32x32.png"
86                title="Center and passed points">
87             <sketch-2dpoint_selector id="center_point"
88                                      reference_attribute="center_point_ref"
89                                      title="Center point"
90                                      tooltip="Center point coordinates"
91                                      accept_expressions="0"
92                                      enable_value="enable_by_preferences"/>
93             <sketch-2dpoint_selector id="passed_point"
94                                      reference_attribute="passed_point_ref"
95                                      title="Passed point"
96                                      tooltip="Passed point coordinates"
97                                      accept_expressions="0"
98                                      enable_value="enable_by_preferences">
99               <validator id="SketchPlugin_CirclePassedPointValidator"/>
100             </sketch-2dpoint_selector>
101             <validator id="GeomValidators_Different" parameters="center_point_ref,passed_point_ref"/>
102           </box>
103           <box id="circle_type_by_three_points"
104                icon="icons/Sketch/circle_3pt_32x32.png"
105                title="Three points">
106             <sketch-2dpoint_selector id="first_point"
107                                      reference_attribute="first_point_ref"
108                                      title="First point"
109                                      tooltip="First point"
110                                      accept_expressions="0"
111                                      enable_value="enable_by_preferences"/>
112             <sketch-2dpoint_selector id="second_point"
113                                      reference_attribute="second_point_ref"
114                                      title="Second point"
115                                      tooltip="Second point"
116                                      accept_expressions="0"
117                                      enable_value="enable_by_preferences">
118               <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref"/>
119             </sketch-2dpoint_selector>
120             <sketch-2dpoint_selector id="third_point"
121                                      reference_attribute="third_point_ref"
122                                      title="Third point"
123                                      tooltip="Third point"
124                                      accept_expressions="0"
125                                      enable_value="enable_by_preferences">
126               <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref,third_point_ref"/>
127               <validator id="SketchPlugin_ThirdPointValidator" parameters="third_point_ref"/>
128             </sketch-2dpoint_selector>
129             <validator id="GeomValidators_Different" parameters="first_point_ref,second_point_ref,third_point_ref"/>
130           </box>
131         </toolbox>
132         <labelvalue id="circle_radius"
133                     icon="icons/Sketch/radius.png"
134                     label="Radius"
135                     tooltip="Set radius"
136                     default="computed"
137                     accept_expressions="0"
138                     obligatory="0"
139                     enable_value="enable_by_preferences">
140         </labelvalue>
141         <boolvalue id="Auxiliary"
142                    tooltip="Construction element"
143                    label="Auxiliary"
144                    default="false"
145                    obligatory="0"
146                    change_visual_attributes="true"/>
147       </feature>
148
149       <!-- SketchArc -->
150       <feature id="SketchArc"
151                icon="icons/Sketch/arc.png"
152                title="Arc"
153                tooltip="Create arc"
154                internal="1">
155         <sketch-2dpoint_selector id="center_point"
156                                  title="Center"
157                                  tooltip="Center of a circle"
158                                  accept_expressions="0"
159                                  enable_value="enable_by_preferences"/>
160         <sketch-2dpoint_selector id="start_point"
161                                  title="Start point"
162                                  tooltip="Start point"
163                                  accept_expressions="0"
164                                  enable_value="enable_by_preferences"/>
165         <sketch-2dpoint_selector id="end_point"
166                                  title="End point"
167                                  tooltip="End point"
168                                  accept_expressions="0"
169                                  enable_value="enable_by_preferences"/>
170         <validator id="GeomValidators_Different" parameters="center_point,start_point,end_point"/>
171         <labelvalue id="radius"
172                     icon="icons/Sketch/radius.png"
173                     label="Radius"
174                     tooltip="Set radius"
175                     accept_expressions="0"
176                     min="0"
177                     default="0"
178                     obligatory="0"
179                     enable_value="enable_by_preferences">
180         </labelvalue>
181         <labelvalue id="angle"
182                     icon="icons/Sketch/angle.png"
183                     label="Angle"
184                     tooltip="Set angle"
185                     default="0"
186                     use_reset="false"
187                     obligatory="0"
188                     enable_value="enable_by_preferences"/>
189         <boolvalue id="Auxiliary"
190                    label="Auxiliary"
191                    tooltip="Construction element"
192                    default="false"
193                    obligatory="0"
194                    change_visual_attributes="true"/>
195       </feature>
196
197       <!-- SketchMacroArc -->
198       <feature
199         id="SketchMacroArc"
200         title="Arc"
201         tooltip="Create arc"
202         icon="icons/Sketch/arc.png"
203         helpfile="arcFeature.html">
204         <toolbox id="arc_type" modified_in_edit="edit_arc_type">
205           <box id="by_center_and_points"
206                icon="icons/Sketch/arc_base_32x32.png"
207                title="Center and two points">
208             <sketch-2dpoint_selector id="center_point"
209                                      reference_attribute="center_point_ref"
210                                      title="Center point"
211                                      tooltip="Center of a circle"
212                                      accept_expressions="0"
213                                      enable_value="enable_by_preferences" />
214             <sketch-2dpoint_selector id="start_point_1"
215                                      reference_attribute="start_point_ref"
216                                      title="Start point"
217                                      tooltip="Start point"
218                                      accept_expressions="0"
219                                      enable_value="enable_by_preferences"/>
220             <sketch-2dpoint_selector id="end_point_1"
221                                      reference_attribute="end_point_ref"
222                                      title="End point"
223                                      tooltip="End point"
224                                      accept_expressions="0"
225                                      enable_value="enable_by_preferences">
226               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
227               <validator id="SketchPlugin_ArcEndPointIntersectionValidator" parameters="end_point_ref"/>
228             </sketch-2dpoint_selector>
229             <validator id="GeomValidators_Different" parameters="center_point,start_point_1,end_point_1"/>
230           </box>
231           <box id="by_three_points"
232                icon="icons/Sketch/arc_3pt_32x32.png"
233                title="Three points on arc">
234             <sketch-2dpoint_selector id="start_point_2"
235                                      reference_attribute="start_point_ref"
236                                      title="Start point"
237                                      tooltip="Start point"
238                                      accept_expressions="0"
239                                      enable_value="enable_by_preferences"/>
240             <sketch-2dpoint_selector id="end_point_2"
241                                      reference_attribute="end_point_ref"
242                                      title="End point"
243                                      tooltip="End point"
244                                      accept_expressions="0"
245                                      enable_value="enable_by_preferences">
246               <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2"/>
247               <validator id="SketchPlugin_DifferentPointReference" parameters="start_point_ref,end_point_ref"/>
248             </sketch-2dpoint_selector>
249             <sketch-2dpoint_selector id="passed_point"
250                                      reference_attribute="passed_point_ref"
251                                      title="Passed point"
252                                      tooltip="Passed point"
253                                      accept_expressions="0"
254                                      enable_value="enable_by_preferences">
255               <validator id="SketchPlugin_DifferentReference" parameters="start_point_ref,end_point_ref,passed_point_ref"/>
256               <validator id="SketchPlugin_ThirdPointValidator" parameters="passed_point_ref"/>
257             </sketch-2dpoint_selector>
258             <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2,passed_point"/>
259           </box>
260           <box id="by_tangent_edge"
261                icon="icons/Sketch/arc_tang_32x32.png"
262                title="Tangent with edge">
263             <sketch_shape_selector id="tangent_point"
264                                    label="Tangent point"
265                                    tooltip="Select point on line"
266                                    shape_types="vertex">
267               <validator id="SketchPlugin_ArcTangentPoint"/>
268             </sketch_shape_selector>
269             <sketch-2dpoint_selector id="end_point_3"
270                                      reference_attribute="end_point_ref"
271                                      title="End point"
272                                      tooltip="End point"
273                                      accept_expressions="0"
274                                      enable_value="enable_by_preferences">
275               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
276             </sketch-2dpoint_selector>
277           </box>
278           <box id="by_transversal_line"
279                icon="icons/Sketch/arc_perp_32x32.png"
280                title="Perpendicular to line">
281             <sketch_shape_selector id="transversal_point"
282                                    label="Point on the perpendicular line"
283                                    tooltip="Select point on line"
284                                    shape_types="vertex">
285               <validator id="SketchPlugin_ArcTransversalPoint"/>
286             </sketch_shape_selector>
287             <sketch-2dpoint_selector id="end_point_4"
288                                      reference_attribute="end_point_ref"
289                                      title="End point"
290                                      tooltip="End point"
291                                      accept_expressions="0"
292                                      enable_value="enable_by_preferences">
293               <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
294             </sketch-2dpoint_selector>
295           </box>
296         </toolbox>
297         <labelvalue id="radius"
298                     icon="icons/Sketch/radius.png"
299                     label="Radius"
300                     tooltip="Set radius"
301                     accept_expressions="0"
302                     min="0"
303                     default="0"
304                     obligatory="0"
305                     enable_value="enable_by_preferences">
306         </labelvalue>
307         <labelvalue id="angle"
308                     icon="icons/Sketch/angle.png"
309                     label="Angle"
310                     tooltip="Set angle"
311                     default="0"
312                     use_reset="false"
313                     obligatory="0"
314                     enable_value="enable_by_preferences"/>
315         <boolvalue id="Auxiliary"
316                    label="Auxiliary"
317                    tooltip="Construction element"
318                    default="false"
319                    obligatory="0"
320                    change_visual_attributes="true"/>
321       </feature>
322
323       <!--  SketchFillet  -->
324       <feature id="SketchFillet"
325                title="Fillet"
326                tooltip="Create constraint defining fillet between two connected segments"
327                icon="icons/Sketch/fillet.png"
328                helpfile="filletFeature.html">
329         <sketch_shape_selector id="fillet_point"
330                                label="Point"
331                                tooltip="Select point for fillet (should be shared by two entities only)"
332                                shape_types="vertex">
333           <validator id="SketchPlugin_FilletVertexValidator"/>
334         </sketch_shape_selector>
335         <!--<validator id="PartSet_FilletSelection"/>-->
336       </feature>
337
338       <!-- SketchEllipse is a hidden feature. It is created inside SketchMacroEllipse. -->
339       <feature id="SketchEllipse"
340                title="Ellipse"
341                tooltip="Create ellipse"
342                icon="icons/Sketch/ellipse.png"
343                internal="1">
344         <sketch-2dpoint_selector id="ellipse_center"
345                                  title="Center"
346                                  tooltip="Center coordinates"
347                                  accept_expressions="0"
348                                  enable_value="enable_by_preferences"/>
349         <sketch-2dpoint_selector id="ellipse_first_focus"
350                                  title="First focus"
351                                  tooltip="Focus coordinates"
352                                  accept_expressions="0"
353                                  enable_value="enable_by_preferences"/>
354         <sketch-2dpoint_selector id="ellipse_second_focus"
355                                  title="Second focus"
356                                  tooltip="Focus coordinates"
357                                  accept_expressions="0"
358                                  enable_value="enable_by_preferences"/>
359         <sketch-2dpoint_selector id="ellipse_major_axis_start_point"
360                                  title="Major axis start"
361                                  tooltip="Coordinates of point on negative direction of major axis"
362                                  accept_expressions="0"
363                                  enable_value="enable_by_preferences"/>
364         <sketch-2dpoint_selector id="ellipse_major_axis_end_point"
365                                  title="Major axis end"
366                                  tooltip="Coordinates of point on positive direction of major axis"
367                                  accept_expressions="0"
368                                  enable_value="enable_by_preferences"/>
369         <sketch-2dpoint_selector id="ellipse_minor_axis_start_point"
370                                  title="Minor axis start"
371                                  tooltip="Coordinates of point on negative direction of minor axis"
372                                  accept_expressions="0"
373                                  enable_value="enable_by_preferences"/>
374         <sketch-2dpoint_selector id="ellipse_minor_axis_end_point"
375                                  title="Minor axis end"
376                                  tooltip="Coordinates of point on positive direction of minor axis"
377                                  accept_expressions="0"
378                                  enable_value="enable_by_preferences"/>
379         <labelvalue id="ellipse_major_radius"
380                     icon="icons/Sketch/radius_major.png"
381                     label="Major radius"
382                     tooltip="Set major radius"
383                     default="computed"
384                     accept_expressions="0"
385                     enable_value="enable_by_preferences">
386         </labelvalue>
387         <labelvalue id="ellipse_minor_radius"
388                     icon="icons/Sketch/radius_minor.png"
389                     label="Minor radius"
390                     tooltip="Set minor radius"
391                     default="computed"
392                     accept_expressions="0"
393                     enable_value="enable_by_preferences">
394         </labelvalue>
395         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
396       </feature>
397       <!-- SketchMacroEllipse -->
398       <feature id="SketchMacroEllipse"
399                icon="icons/Sketch/ellipse.png"
400                title="Ellipse"
401                tooltip="Create ellipse"
402                helpfile="ellipseFeature.html">
403         <toolbox id="ellipse_type" modified_in_edit="edit_ellipse_type">
404           <box id="by_center_axis_point"
405                icon="icons/Sketch/ellipse_cent_rad_32x32.png"
406                title="Center, major semi-axis and passing point">
407             <sketch-2dpoint_selector id="first_point"
408                                      reference_attribute="first_point_ref"
409                                      title="Center point"
410                                      tooltip="Center point coordinates"
411                                      accept_expressions="0"
412                                      enable_value="enable_by_preferences"/>
413             <sketch-2dpoint_selector id="second_point"
414                                      reference_attribute="second_point_ref"
415                                      title="Major axis point"
416                                      tooltip="Major axis point coordinates"
417                                      accept_expressions="0"
418                                      enable_value="enable_by_preferences"/>
419             <sketch-2dpoint_selector id="passed_point"
420                                      reference_attribute="passed_point_ref"
421                                      title="Passed point"
422                                      tooltip="Passed point coordinates"
423                                      accept_expressions="0"
424                                      enable_value="enable_by_preferences"/>
425             <validator id="GeomValidators_Different" parameters="first_point,second_point,passed_point"/>
426             <validator id="SketchPlugin_DifferentPointReference" parameters="first_point_ref,second_point_ref"/>
427           </box>
428           <box id="by_major_axis_and_point"
429                icon="icons/Sketch/ellipse_axes_32x32.png"
430                title="Major axis and passing point">
431             <sketch-2dpoint_selector id="first_point_1"
432                                      reference_attribute="first_point_ref_1"
433                                      title="Major axis start point"
434                                      tooltip="Major axis start point coordinates"
435                                      accept_expressions="0"
436                                      enable_value="enable_by_preferences"/>
437             <sketch-2dpoint_selector id="second_point_1"
438                                      reference_attribute="second_point_ref_1"
439                                      title="Major axis end point"
440                                      tooltip="Major axis end point coordinates"
441                                      accept_expressions="0"
442                                      enable_value="enable_by_preferences"/>
443             <sketch-2dpoint_selector id="passed_point_1"
444                                      reference_attribute="passed_point_ref_1"
445                                      title="Passed point"
446                                      tooltip="Passed point coordinates"
447                                      accept_expressions="0"
448                                      enable_value="enable_by_preferences"/>
449             <validator id="GeomValidators_Different" parameters="first_point_1,second_point_1,passed_point_1"/>
450             <validator id="SketchPlugin_DifferentPointReference" parameters="first_point_ref_1,second_point_ref_1"/>
451           </box>
452         </toolbox>
453         <labelvalue id="major_radius"
454                     icon="icons/Sketch/radius_major.png"
455                     label="Major radius"
456                     tooltip="Set major radius"
457                     default="computed"
458                     accept_expressions="0"
459                     obligatory="0"
460                     enable_value="enable_by_preferences">
461         </labelvalue>
462         <labelvalue id="minor_radius"
463                     icon="icons/Sketch/radius_minor.png"
464                     label="Minor radius"
465                     tooltip="Set minor radius"
466                     default="computed"
467                     accept_expressions="0"
468                     obligatory="0"
469                     enable_value="enable_by_preferences">
470         </labelvalue>
471         <boolvalue id="Auxiliary"
472                    tooltip="Construction element"
473                    label="Auxiliary"
474                    default="false"
475                    obligatory="0"
476                    change_visual_attributes="true"/>
477       </feature>
478
479       <!-- SketchEllipticArc is a hidden feature. It is created inside SketchMacroEllipse. -->
480       <feature id="SketchEllipticArc"
481                title="Elliptic arc"
482                tooltip="Create elliptic arc"
483                icon="icons/Sketch/elliptic_arc.png"
484                internal="1">
485         <sketch-2dpoint_selector id="ellipse_center"
486                                  title="Center"
487                                  tooltip="Center coordinates"
488                                  accept_expressions="0"
489                                  enable_value="enable_by_preferences"/>
490         <sketch-2dpoint_selector id="ellipse_first_focus"
491                                  title="First focus"
492                                  tooltip="Focus coordinates"
493                                  accept_expressions="0"
494                                  enable_value="enable_by_preferences"/>
495         <sketch-2dpoint_selector id="ellipse_second_focus"
496                                  title="Second focus"
497                                  tooltip="Focus coordinates"
498                                  accept_expressions="0"
499                                  enable_value="enable_by_preferences"/>
500         <sketch-2dpoint_selector id="ellipse_major_axis_start_point"
501                                  title="Major axis start"
502                                  tooltip="Coordinates of point on negative direction of major axis"
503                                  accept_expressions="0"
504                                  enable_value="enable_by_preferences"/>
505         <sketch-2dpoint_selector id="ellipse_major_axis_end_point"
506                                  title="Major axis end"
507                                  tooltip="Coordinates of point on positive direction of major axis"
508                                  accept_expressions="0"
509                                  enable_value="enable_by_preferences"/>
510         <sketch-2dpoint_selector id="ellipse_minor_axis_start_point"
511                                  title="Minor axis start"
512                                  tooltip="Coordinates of point on negative direction of minor axis"
513                                  accept_expressions="0"
514                                  enable_value="enable_by_preferences"/>
515         <sketch-2dpoint_selector id="ellipse_minor_axis_end_point"
516                                  title="Minor axis end"
517                                  tooltip="Coordinates of point on positive direction of minor axis"
518                                  accept_expressions="0"
519                                  enable_value="enable_by_preferences"/>
520         <sketch-2dpoint_selector id="start_point"
521                                  title="Start point"
522                                  tooltip="Arc start point coordinates"
523                                  accept_expressions="0"
524                                  enable_value="enable_by_preferences"/>
525         <sketch-2dpoint_selector id="end_point"
526                                  title="End point"
527                                  tooltip="Arc end point coordinates"
528                                  accept_expressions="0"
529                                  enable_value="enable_by_preferences"/>
530         <labelvalue id="ellipse_major_radius"
531                     icon="icons/Sketch/radius_major.png"
532                     label="Major radius"
533                     tooltip="Set major radius"
534                     default="computed"
535                     accept_expressions="0"
536                     enable_value="enable_by_preferences">
537         </labelvalue>
538         <labelvalue id="ellipse_minor_radius"
539                     icon="icons/Sketch/radius_minor.png"
540                     label="Minor radius"
541                     tooltip="Set minor radius"
542                     default="computed"
543                     accept_expressions="0"
544                     enable_value="enable_by_preferences">
545         </labelvalue>
546         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0" change_visual_attributes="true"/>
547       </feature>
548       <!-- SketchMacroEllipticArc -->
549       <feature id="SketchMacroEllipticArc"
550                icon="icons/Sketch/elliptic_arc.png"
551                title="Elliptic arc"
552                tooltip="Create elliptic arc"
553                helpfile="ellipseFeature.html">
554         <sketch-2dpoint_selector id="center"
555                                  reference_attribute="center_ref"
556                                  title="Center point"
557                                  tooltip="Center point coordinates"
558                                  accept_expressions="0"
559                                  enable_value="enable_by_preferences"/>
560         <sketch-2dpoint_selector id="major_axis_point"
561                                  reference_attribute="major_axis_point_ref"
562                                  title="Major axis point"
563                                  tooltip="Major axis point coordinates"
564                                  accept_expressions="0"
565                                  enable_value="enable_by_preferences"/>
566         <sketch-2dpoint_selector id="start_point"
567                                  reference_attribute="start_point_ref"
568                                  title="Start point"
569                                  tooltip="Arc start point coordinates"
570                                  accept_expressions="0"
571                                  enable_value="enable_by_preferences"/>
572         <sketch-2dpoint_selector id="end_point"
573                                  reference_attribute="end_point_ref"
574                                  title="End point"
575                                  tooltip="Arc end point coordinates"
576                                  accept_expressions="0"
577                                  enable_value="enable_by_preferences"/>
578         <labelvalue id="major_radius"
579                     icon="icons/Sketch/radius_major.png"
580                     label="Major radius"
581                     tooltip="Set major radius"
582                     default="computed"
583                     accept_expressions="0"
584                     obligatory="0"
585                     enable_value="enable_by_preferences">
586         </labelvalue>
587         <labelvalue id="minor_radius"
588                     icon="icons/Sketch/radius_minor.png"
589                     label="Minor radius"
590                     tooltip="Set minor radius"
591                     default="computed"
592                     accept_expressions="0"
593                     obligatory="0"
594                     enable_value="enable_by_preferences">
595         </labelvalue>
596         <boolvalue id="Auxiliary"
597                    tooltip="Construction element"
598                    label="Auxiliary"
599                    default="false"
600                    obligatory="0"
601                    change_visual_attributes="true"/>
602         <validator id="GeomValidators_Different" parameters="center,major_axis_point"/>
603         <validator id="SketchPlugin_DifferentPointReference" parameters="center_ref,major_axis_point_ref"/>
604         <validator id="GeomValidators_Different" parameters="start_point,end_point"/>
605         <validator id="SketchPlugin_DifferentPointReference" parameters="start_point_ref,end_point_ref"/>
606       </feature>
607     </group>
608
609     <group id="Parametric curves">
610       <!-- SketchBSpline is a hidden feature. It is created inside SketchMacroBSpline. -->
611       <feature id="SketchBSpline"
612                title="B-spline"
613                tooltip="Create B-spline curve"
614                icon="icons/Sketch/bspline.png"
615                helpfile="bsplineFeature.html"
616                internal="1">
617         <bspline-panel id="poles"
618                        weights="weights"
619                        title="Poles and weights"
620                        tooltip="B-spline poles and weights"
621                        enable_value="enable_by_preferences">
622           <validator id="SketchPlugin_BSplineValidator"/>
623         </bspline-panel>
624         <boolvalue id="Auxiliary"
625                    label="Auxiliary"
626                    default="false"
627                    tooltip="Construction element"
628                    obligatory="0"
629                    change_visual_attributes="true"/>
630       </feature>
631
632       <!-- SketchBSplinePeriodic is a hidden feature. It is created inside SketchMacroBSplinePeriodic. -->
633       <feature id="SketchBSplinePeriodic"
634                title="Periodic B-spline"
635                tooltip="Create periodic B-spline curve"
636                icon="icons/Sketch/bspline_p.png"
637                helpfile="bsplineFeature.html"
638                internal="1">
639         <bspline-panel id="poles"
640                        weights="weights"
641                        title="Poles and weights"
642                        tooltip="B-spline poles and weights"
643                        enable_value="enable_by_preferences">
644           <validator id="SketchPlugin_BSplineValidator"/>
645         </bspline-panel>
646         <boolvalue id="Auxiliary"
647                    label="Auxiliary"
648                    default="false"
649                    tooltip="Construction element"
650                    obligatory="0"
651                    change_visual_attributes="true"/>
652       </feature>
653
654       <!-- SketchMacroBSpline -->
655       <feature id="SketchMacroBSpline"
656                title="B-spline"
657                tooltip="Create B-spline curve"
658                icon="icons/Sketch/bspline.png"
659                helpfile="bsplineFeature.html">
660         <sketch-bspline_selector id="poles"
661                                  weights="weights"
662                                  reference_attribute="poles_ref"
663                                  title="Poles"
664                                  tooltip="B-spline poles"
665                                  enable_value="enable_by_preferences">
666           <validator id="SketchPlugin_BSplineValidator"/>
667         </sketch-bspline_selector>
668         <boolvalue id="need_control_poly"
669                    label="Create control polygon"
670                    default="true"
671                    tooltip="Specify if the control polygon should be created"/>
672         <boolvalue id="Auxiliary"
673                    label="Auxiliary"
674                    default="false"
675                    tooltip="Construction element"
676                    obligatory="0"
677                    change_visual_attributes="true"/>
678       </feature>
679
680       <!-- SketchMacroBSplinePeriodic -->
681       <feature id="SketchMacroBSplinePeriodic"
682                title="Periodic B-spline"
683                tooltip="Create periodic B-spline curve"
684                icon="icons/Sketch/bspline_p.png"
685                helpfile="bsplineFeature.html">
686         <sketch-bspline_selector id="poles"
687                                  weights="weights"
688                                  reference_attribute="poles_ref"
689                                  title="Poles"
690                                  tooltip="B-spline poles"
691                                  enable_value="enable_by_preferences">
692           <validator id="SketchPlugin_BSplineValidator"/>
693         </sketch-bspline_selector>
694         <boolvalue id="need_control_poly"
695                    label="Create control polygon"
696                    default="true"
697                    tooltip="Specify if the control polygon should be created"/>
698         <boolvalue id="Auxiliary"
699                    label="Auxiliary"
700                    default="false"
701                    tooltip="Construction element"
702                    obligatory="0"
703                    change_visual_attributes="true"/>
704       </feature>
705     </group>
706
707     <group id="Segmentation">
708       <!--  SketchSplit  -->
709       <feature id="SketchSplit" title="Split"
710                tooltip="Cut selected segment arc or circle on existing coincident points"
711                icon="icons/Sketch/split.png"
712                helpfile="splitFeature.html">
713         <sketch_feature_point_selector
714             id="SelectedObject"
715             selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
716             label="Segment"
717             tooltip="Select segment for split"
718             shape_types="edge"
719             use_external="false">
720           <validator id="SketchPlugin_SplitValidator"/>
721         </sketch_feature_point_selector>
722         <validator id="PartSet_SplitSelection"/>
723       </feature>
724       <!--  SketchTrim  -->
725       <feature id="SketchTrim" title="Trim"
726                tooltip="Trim selected segment arc or circle on intersection points nearest to the graphic selection"
727                icon="icons/Sketch/trim.png"
728                helpfile="trimFeature.html">
729         <sketch_feature_point_selector
730             id="SelectedObject"
731             selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
732             label="Segment"
733             tooltip="Select segment for trim"
734             shape_types="edge"
735             use_external="false">
736           <validator id="SketchPlugin_TrimValidator"/>
737         </sketch_feature_point_selector>
738         <validator id="PartSet_SplitSelection"/>
739       </feature>
740     </group>
741
742     <group id="Projection">
743       <!-- Projected feature -->
744       <feature
745         id="SketchProjection"
746         title="Projection"
747         tooltip="Project feature onto sketch plane"
748         icon="icons/Sketch/projection.png"
749         helpfile="projectionFeature.html">
750         <sketch_shape_selector
751               id="ExternalFeature"
752               label="Object"
753               tooltip="Select external edge or vertex."
754               shape_types="edge vertex"
755               use_external="true"
756               can_create_external="false"
757               use_sketch_plane="false">
758           <validator id="SketchPlugin_ProjectionValidator"/>
759         </sketch_shape_selector>
760         <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"
761                    change_visual_attributes="true"/>
762         <validator id="PartSet_ProjectionSelection"/>
763       </feature>
764
765       <!-- Intersection Point -->
766       <feature
767         id="SketchIntersectionPoint"
768         title="Intersection"
769         tooltip="Intersect edge with sketch plane"
770         icon="icons/Sketch/intersection.png"
771         helpfile="intersectionFeature.html">
772         <sketch_shape_selector
773               id="ExternalFeature"
774               label="Object"
775               tooltip="Select external edge."
776               shape_types="edge"
777               use_external="true"
778               can_create_external="false"
779               use_sketch_plane="false">
780           <validator id="SketchPlugin_IntersectionValidator"/>
781         </sketch_shape_selector>
782         <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"
783                    change_visual_attributes="true"/>
784         <validator id="PartSet_IntersectionSelection"/>
785       </feature>
786     </group>
787
788     <group id="Replication">
789       <!--  SketchConstraintMirror  -->
790       <feature
791         id="SketchConstraintMirror"
792         title="Mirror copy" icon="icons/Sketch/mirror.png"
793         tooltip="Create constraint, mirroring group of objects"
794         helpfile="mirrorFeature.html">
795         <sketch_shape_selector id="ConstraintEntityA"
796             label="Mirror line" tooltip="Select mirror line" shape_types="edge">
797           <validator id="GeomValidators_ShapeType" parameters="line"/>
798           <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityC"/>
799         </sketch_shape_selector>
800         <sketch_multi_selector id="ConstraintMirrorList"
801             label="Segments"
802             tooltip="Select list of objects to be mirrored"
803             shape_types="Edges"
804             use_external="true"
805             greed ="true">
806           <validator id="SketchPlugin_MirrorAttr" />
807         </sketch_multi_selector>
808         <validator id="PartSet_MultyTranslationSelection" />
809       </feature>
810
811       <!--  SketchMultiTranslation  -->
812       <feature
813         id="SketchMultiTranslation"
814         title="Linear copy" icon="icons/Sketch/translate.png"
815         tooltip="Copy objects and move"
816         helpfile="translationFeature.html">
817         <sketch_multi_selector id="MultiTranslationList"
818             label="Segments"
819             tooltip="Select list of objects to be translated"
820             shape_types="Edges"
821             use_external="true"
822             greed ="true">
823           <validator id="SketchPlugin_CopyValidator" />
824         </sketch_multi_selector>
825         <toolbox id="ValueType">
826           <box id="SingleValue" title="Single value" icon="icons/Sketch/translate_32x32.png">
827             <groupbox title="Direction">
828               <sketch_shape_selector
829                     id="MultiTranslationStartPoint"
830                     label="Start point"
831                     tooltip="Start point of translation"
832                     shape_types="vertex">
833                 <validator id="PartSet_DifferentObjects"/>
834                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
835                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
836               </sketch_shape_selector>
837               <sketch_shape_selector
838                     id="MultiTranslationEndPoint"
839                     label="End point"
840                     tooltip="Final point of translation"
841                     shape_types="vertex">
842                 <validator id="PartSet_DifferentObjects"/>
843                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
844                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
845               </sketch_shape_selector>
846             </groupbox>
847           </box>
848           <box id="FullValue" title="Full value" icon="icons/Sketch/translate_full_32x32.png">
849             <groupbox title="Direction">
850               <sketch_shape_selector
851                     id="MultiTranslationStartPoint"
852                     label="Start point"
853                     tooltip="Start point of translation"
854                     shape_types="vertex">
855                 <validator id="PartSet_DifferentObjects"/>
856                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
857                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
858               </sketch_shape_selector>
859               <sketch_shape_selector
860                     id="MultiTranslationEndPoint"
861                     label="End point"
862                     tooltip="Final point of translation"
863                     shape_types="vertex">
864                 <validator id="PartSet_DifferentObjects"/>
865                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
866                 <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
867               </sketch_shape_selector>
868             </groupbox>
869           </box>
870         </toolbox>
871         <integervalue id="MultiTranslationObjects"
872             label="Total number of objects"
873             tooltip="Total number of objects"
874             default="2" min="2" use_reset="false">
875           <validator id="GeomValidators_Positive" parameters="1"/>
876         </integervalue>
877         <validator id="PartSet_MultyTranslationSelection" />
878       </feature>
879
880       <!--  SketchMultiRotation  -->
881       <feature
882         id="SketchMultiRotation"
883         title="Angular copy" icon="icons/Sketch/rotate.png"
884         tooltip="Copy objects and rotate"
885         helpfile="rotationFeature.html">
886         <sketch_multi_selector id="MultiRotationList"
887             label="Segments"
888             tooltip="Select list of objects to be rotated"
889             shape_types="Edges"
890             use_external="true"
891             greed ="true">
892           <validator id="SketchPlugin_CopyValidator" />
893         </sketch_multi_selector>
894         <sketch_shape_selector
895               id="MultiRotationCenter"
896               label="Center of rotation"
897               tooltip="Center of rotation"
898               shape_types="vertex">
899           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
900           <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
901         </sketch_shape_selector>
902         <toolbox id="AngleType">
903           <box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
904             <doublevalue id="MultiRotationAngle"
905                          label="Angle"
906                          icon="icons/Sketch/angle.png"
907                          tooltip="Rotation angle"
908                          default="360" min="0" max="360"
909                          use_reset="false">
910               <validator id="SketchPlugin_MultiRotationAngleValidator" />
911             </doublevalue>
912             <boolvalue id="MultiRotationReversed"
913                        label="Reversed"
914                        tooltip="Reverse angular copy"
915                        default="false"
916                        obligatory="0"/>
917           </box>
918           <box id="SingleAngle" title="Single angle" icon="icons/Sketch/angle_up_32x32.png">
919             <doublevalue id="MultiRotationAngle"
920                          label="Angle"
921                          icon="icons/Sketch/angle.png"
922                          tooltip="Rotation angle"
923                          default="90" min="0" max="360"
924                          use_reset="false">
925               <validator id="SketchPlugin_MultiRotationAngleValidator" />
926             </doublevalue>
927             <boolvalue id="MultiRotationReversed"
928                        label="Reversed"
929                        tooltip="Reverse angular copy"
930                        default="false"
931                        obligatory="0"/>
932           </box>
933         </toolbox>
934         <integervalue id="MultiRotationObjects"
935             label="Total number of objects"
936             tooltip="Total number of objects"
937             default="4" min="2" use_reset="false">
938           <validator id="GeomValidators_Positive" parameters="1"/>
939         </integervalue>
940         <validator id="PartSet_MultyTranslationSelection" />
941       </feature>
942
943       <!-- Offset curve -->
944       <feature id="SketchOffset"
945                title="Offset"
946                tooltip="Offset a curve to a distance"
947                icon="icons/Sketch/offset.png"
948                helpfile="offsetFeature.html">
949         <sketch_multi_selector id="segments"
950                                label="Edges"
951                                tooltip="Select edges to offset"
952                                shape_types="Edges"
953                                use_external="true"
954                                greed="true">
955         </sketch_multi_selector>
956         <doublevalue id="offset_value"
957                      label="Offset value"
958                      tooltip="Offset value"
959                      default="1" min="0.000001"
960                      use_reset="false">
961           <validator id="GeomValidators_Positive" parameters="1e-07"/>
962         </doublevalue>
963         <boolvalue id="reversed"
964                    label="Reversed"
965                    tooltip="Reverse the offset"
966                    default="false"
967                    obligatory="0"/>
968         <boolvalue id="Auxiliary"
969                    label="Auxiliary"
970                    tooltip="Construction element"
971                    default="false"
972                    obligatory="0"
973                    change_visual_attributes="true"/>
974         <action id="add_wire"
975                 label="Select wire"
976                 tooltip="Add the list of segments composing a wire with the selected items through the coincidence by boundary points"/>
977       </feature>
978     </group>
979
980     <group id="Dimensional constraints">
981       <!--  SketchConstraintDistance  -->
982       <feature
983         id="SketchConstraintDistance"
984         title="Distance"
985         tooltip="Set fixed distance from a point to an object"
986         icon="icons/Sketch/distance.png"
987         helpfile="distanceFeature.html">
988         <label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
989         <sketch_shape_selector
990               id="ConstraintEntityA"
991               label="First object"
992               tooltip="Select point, line end point, line, center of circle or arc."
993               shape_types="edge vertex">
994           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
995           <validator id="PartSet_DifferentObjects"/>
996           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
997         </sketch_shape_selector>
998         <sketch_shape_selector
999           id="ConstraintEntityB"
1000           label="Second object"
1001           tooltip="Select point, line end point, line, center of circle or arc."
1002           shape_types="edge vertex">
1003           <validator id="PartSet_DifferentObjects"/>
1004           <validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
1005           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1006           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
1007         </sketch_shape_selector>
1008         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1009
1010         <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
1011           <validator id="GeomValidators_Positive" parameters="-1.e-10"/>
1012         </doublevalue_editor>
1013
1014         <module_choice id="LocationType"
1015           widget_type="radiobuttons"
1016           buttons_dir="horizontal"
1017           label="Text location"
1018           tooltip="Relative location of the text"
1019           string_list="Left Automatic Right"
1020           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1021           default="1"
1022           />
1023
1024         <boolvalue id="SignedDistance" label="Keep orientation" default="true" tooltip="Keep distance orientation" obligatory="0"/>
1025         <validator id="PartSet_DistanceSelection"/>
1026       </feature>
1027
1028       <!--  SketchConstraintDistanceHorizontal  -->
1029       <feature
1030         id="SketchConstraintDistanceHorizontal"
1031         title="Horizontal Distance"
1032         tooltip="Set horizontal distance between two points"
1033         icon="icons/Sketch/distance_h.png"
1034         helpfile="horizontalDistFeature.html">
1035         <label title="Select points for distance definition."/>
1036         <sketch_shape_selector
1037               id="ConstraintEntityA"
1038               label="First point"
1039               tooltip="Select point."
1040               shape_types="vertex">
1041           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1042           <validator id="PartSet_DifferentObjects"/>
1043           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
1044         </sketch_shape_selector>
1045         <sketch_shape_selector
1046           id="ConstraintEntityB"
1047           label="Second point"
1048           tooltip="Select point."
1049           shape_types="vertex">
1050           <validator id="PartSet_DifferentObjects"/>
1051           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1052           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
1053         </sketch_shape_selector>
1054         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1055
1056         <doublevalue_editor label="Value" tooltip="Distance" id="DistanceValue" default="computed" min="0">
1057           <validator id="GeomValidators_Positive" parameters="-1.e-10"/>
1058         </doublevalue_editor>
1059
1060         <module_choice id="LocationType"
1061           widget_type="radiobuttons"
1062           buttons_dir="horizontal"
1063           label="Text location"
1064           tooltip="Relative location of the text"
1065           string_list="Left Automatic Right"
1066           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1067           default="1"
1068           />
1069
1070         <validator id="PartSet_DistanceSelection"/>
1071       </feature>
1072
1073       <!--  SketchConstraintDistanceVertical  -->
1074       <feature
1075         id="SketchConstraintDistanceVertical"
1076         title="Vertical Distance"
1077         tooltip="Set vertical distance between two points"
1078         icon="icons/Sketch/distance_v.png"
1079         helpfile="verticalDistFeature.html">
1080         <label title="Select points for distance definition."/>
1081         <sketch_shape_selector
1082               id="ConstraintEntityA"
1083               label="First point"
1084               tooltip="Select point."
1085               shape_types="vertex">
1086           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1087           <validator id="PartSet_DifferentObjects"/>
1088           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
1089         </sketch_shape_selector>
1090         <sketch_shape_selector
1091           id="ConstraintEntityB"
1092           label="Second point"
1093           tooltip="Select point."
1094           shape_types="vertex">
1095           <validator id="PartSet_DifferentObjects"/>
1096           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1097           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
1098         </sketch_shape_selector>
1099         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1100
1101         <doublevalue_editor label="Value" tooltip="Distance" id="DistanceValue" default="computed" min="0">
1102           <validator id="GeomValidators_Positive" parameters="-1.e-10"/>
1103         </doublevalue_editor>
1104
1105         <module_choice id="LocationType"
1106           widget_type="radiobuttons"
1107           buttons_dir="horizontal"
1108           label="Text location"
1109           tooltip="Relative location of the text"
1110           string_list="Left Automatic Right"
1111           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1112           default="1"
1113           />
1114
1115         <validator id="PartSet_DistanceSelection"/>
1116       </feature>
1117
1118       <!--  SketchConstraintLength  -->
1119       <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon="icons/Sketch/length.png"
1120                helpfile="lengthFeature.html">
1121         <label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
1122         <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select a line" shape_types="edge" >
1123           <validator id="GeomValidators_ShapeType" parameters="line"/>
1124           <validator id="SketchPlugin_SketchFeatureValidator"/>
1125         </shape_selector>
1126         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
1127         <doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
1128           <validator id="GeomValidators_Positive"/>
1129         </doublevalue_editor>
1130         <module_choice id="LocationType"
1131           widget_type="radiobuttons"
1132           buttons_dir="horizontal"
1133           label="Text location"
1134           tooltip="Relative location of the text"
1135           string_list="Left Automatic Right"
1136           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1137           default="1"
1138           />
1139         <validator id="PartSet_LengthSelection"/>
1140       </feature>
1141
1142       <!--  SketchConstraintAngle  -->
1143       <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon="icons/Sketch/angle_constr.png"
1144                helpfile="angleFeature.html">
1145         <sketch_feature_point_selector
1146             id="ConstraintEntityA"
1147             selection_attributes="ConstraintEntityA SelectedPointA"
1148             label="Line 1"
1149             tooltip="Select a line"
1150             shape_types="edge"
1151             use_external="true">
1152           <validator id="GeomValidators_ShapeType" parameters="line"/>
1153           <validator id="PartSet_DifferentObjects"/>
1154           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1155         </sketch_feature_point_selector>
1156         <sketch_feature_point_selector
1157             id="ConstraintEntityB"
1158             selection_attributes="ConstraintEntityB SelectedPointB"
1159             label="Line 2"
1160             tooltip="Select a line"
1161             shape_types="edge"
1162             use_external="true">
1163           <validator id="GeomValidators_ShapeType" parameters="line"/>
1164           <validator id="PartSet_DifferentObjects"/>
1165           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1166         </sketch_feature_point_selector>
1167         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1168         <doublevalue_editor label="Value" tooltip="Angle" id="AngleValue" default="computed" min="0" max="360" />
1169         <validator id="PartSet_AngleSelection"/>
1170         <module_choice id="AngleType"
1171           widget_type="radiobuttons"
1172           buttons_dir="horizontal"
1173           label="Angle type"
1174           tooltip="Type of angle"
1175           string_list="Direct Supplementary Additional"
1176           icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
1177           default="0"
1178           />
1179
1180         <module_choice id="LocationType"
1181           widget_type="radiobuttons"
1182           buttons_dir="horizontal"
1183           label="Text location"
1184           tooltip="Relative location of the text"
1185           string_list="Left Automatic Right"
1186           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1187           default="1"
1188           />
1189
1190       </feature>
1191
1192       <!--  SketchConstraintRadius  -->
1193       <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon="icons/Sketch/radius_constr.png"
1194                helpfile="radiusFeature.html">
1195         <label title="Select a circle or an arc on which to calculate radius" tooltip="Select a circle or an arc on which to calculate radius"/>
1196         <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
1197             shape_types="edge">
1198           <validator id="GeomValidators_ShapeType" parameters="circle"/>
1199         </shape_selector>
1200         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
1201         <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
1202           <validator id="GeomValidators_Positive"/>
1203         </doublevalue_editor>
1204
1205         <module_choice id="LocationType"
1206           widget_type="radiobuttons"
1207           buttons_dir="horizontal"
1208           label="Text location"
1209           tooltip="Relative location of the text"
1210           string_list="Left Automatic Right"
1211           icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
1212           default="1"
1213           />
1214
1215         <validator id="PartSet_RadiusSelection"/>
1216       </feature>
1217
1218     </group>
1219
1220     <group id="Geometrical constraints">
1221
1222       <!--  SketchConstraintHorizontal  -->
1223       <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon="icons/Sketch/horisontal.png"
1224                helpfile="horizontalFeature.html">
1225         <sketch_shape_selector id="ConstraintEntityA"
1226             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
1227           <validator id="GeomValidators_ShapeType" parameters="line"/>
1228           <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
1229         </sketch_shape_selector>
1230         <validator id="PartSet_HVDirSelection"/>
1231       </feature>
1232
1233       <!--  SketchConstraintVertical  -->
1234       <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon="icons/Sketch/vertical.png"
1235                helpfile="verticalFeature.html">
1236         <sketch_shape_selector id="ConstraintEntityA"
1237             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
1238           <validator id="GeomValidators_ShapeType" parameters="line"/>
1239           <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
1240         </sketch_shape_selector>
1241         <validator id="PartSet_HVDirSelection"/>
1242       </feature>
1243
1244       <!--  SketchConstraintRigid  -->
1245       <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon="icons/Sketch/fixed.png"
1246                helpfile="rigidFeature.html">
1247         <sketch_shape_selector id="ConstraintEntityA" label="Object"
1248                         tooltip="Select point, curve or its boundary point."
1249                         shape_types="edge vertex">
1250           <validator id="GeomValidators_ShapeType" parameters="vertex,edge"/>
1251           <validator id="SketchPlugin_NotFixed"/>
1252         </sketch_shape_selector>
1253         <validator id="PartSet_RigidSelection"/>
1254       </feature>
1255
1256       <!--  SketchConstraintParallel  -->
1257       <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines"
1258                icon="icons/Sketch/parallel.png" helpfile="parallelFeature.html">
1259         <sketch_shape_selector id="ConstraintEntityA"
1260             label="First line" tooltip="Select a line" shape_types="edge">
1261           <validator id="GeomValidators_ShapeType" parameters="line"/>
1262           <validator id="PartSet_DifferentObjects"/>
1263           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1264         </sketch_shape_selector>
1265
1266         <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
1267             shape_types="edge">
1268             <validator id="GeomValidators_ShapeType" parameters="line"/>
1269             <validator id="PartSet_DifferentObjects"/>
1270             <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1271         </sketch_shape_selector>
1272         <validator id="PartSet_ParallelSelection"/>
1273       </feature>
1274
1275       <!--  SketchConstraintPerpendicular  -->
1276       <feature id="SketchConstraintPerpendicular" title="Perpendicular"
1277                tooltip="Create constraint defining two orthogonal objects"
1278                icon="icons/Sketch/perpendicular.png"
1279                helpfile="perpendicularFeature.html">
1280         <sketch_shape_selector id="ConstraintEntityA"
1281             label="First object" tooltip="Select line or arc"
1282             shape_types="edge">
1283           <validator id="PartSet_DifferentObjects"/>
1284           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1285           <validator id="SketchPlugin_PerpendicularAttr" parameters="ConstraintEntityB"/>
1286           <validator id="GeomValidators_ShapeType" parameters="edge"/>
1287         </sketch_shape_selector>
1288
1289         <sketch_shape_selector id="ConstraintEntityB"
1290             label="Second object" tooltip="Select line or arc"
1291             shape_types="edge">
1292           <validator id="PartSet_DifferentObjects"/>
1293           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1294           <validator id="SketchPlugin_PerpendicularAttr" parameters="ConstraintEntityA"/>
1295           <validator id="GeomValidators_ShapeType" parameters="edge"/>
1296         </sketch_shape_selector>
1297         <validator id="PartSet_PerpendicularSelection"/>
1298       </feature>
1299
1300       <!--  SketchConstraintTangent  -->
1301       <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two segments with common coincident point" icon="icons/Sketch/tangent.png"
1302                helpfile="tangentFeature.html">
1303         <sketch_shape_selector id="ConstraintEntityA"
1304             label="First object" tooltip="Select line or arc" shape_types="edge">
1305           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
1306           <validator id="PartSet_DifferentObjects"/>
1307         </sketch_shape_selector>
1308
1309         <sketch_shape_selector id="ConstraintEntityB"
1310             label="Second object" tooltip="Select line or arc" shape_types="edge">
1311           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
1312           <validator id="PartSet_DifferentObjects"/>
1313         </sketch_shape_selector>
1314         <validator id="PartSet_TangentSelection"/>
1315       </feature>
1316
1317       <!--  SketchConstraintCoincidence  -->
1318       <feature id="SketchConstraintCoincidence" title="Coincident" tooltip="Create constraint for the coincidence of two points or point on line or circle" icon="icons/Sketch/coincedence.png"
1319                helpfile="coincedenceFeature.html">
1320         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
1321           <validator id="PartSet_DifferentObjects"/>
1322           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1323         </sketch_shape_selector>
1324         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
1325           <validator id="PartSet_DifferentObjects"/>
1326           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1327           <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
1328         </sketch_shape_selector>
1329         <validator id="PartSet_CoincidentSelection"/>
1330       </feature>
1331       <!--  SketchConstraintCoincidenceInternal  -->
1332       <feature id="SketchConstraintCoincidenceInternal" title="Internal Coincidence" tooltip="Internal coincidence" icon="icons/Sketch/coincedence.png"
1333                helpfile="coincedenceFeature.html" internal="1">
1334         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex">
1335           <validator id="PartSet_DifferentObjects"/>
1336           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1337         </sketch_shape_selector>
1338         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex">
1339           <validator id="PartSet_DifferentObjects"/>
1340           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1341           <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
1342         </sketch_shape_selector>
1343         <validator id="PartSet_CoincidentSelection"/>
1344       </feature>
1345
1346       <!--  SketchConstraintMiddle  -->
1347       <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line"
1348                icon="icons/Sketch/middlepoint.png"
1349                helpfile="middleFeature.html">
1350         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
1351           <validator id="PartSet_DifferentObjects"/>
1352           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1353           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
1354         </sketch_shape_selector>
1355         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
1356           <validator id="PartSet_DifferentObjects"/>
1357           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1358           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
1359         </sketch_shape_selector>
1360         <validator id="PartSet_MiddlePointSelection"/>
1361       </feature>
1362
1363       <!--  SketchConstraintEqual  -->
1364       <feature id="SketchConstraintEqual" title="Equal"
1365         tooltip="Create constraint defining equal lengths of two lines or line and arc or equal radiuses of two arcs or two circles or arc and circle"
1366         icon="icons/Sketch/equal.png"
1367                helpfile="equalFeature.html">
1368         <sketch_shape_selector id="ConstraintEntityA"
1369             label="First object" tooltip="Select edge" shape_types="edge">
1370           <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityB"/>
1371           <validator id="PartSet_DifferentObjects"/>
1372           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
1373         </sketch_shape_selector>
1374
1375         <sketch_shape_selector id="ConstraintEntityB"
1376             label="Second object" tooltip="Select edge" shape_types="edge">
1377           <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
1378           <validator id="PartSet_DifferentObjects"/>
1379           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
1380         </sketch_shape_selector>
1381         <validator id="PartSet_EqualSelection"/>
1382       </feature>
1383
1384       <!--  SketchConstraintCollinear  -->
1385       <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines"
1386                icon="icons/Sketch/collinear.png"
1387                helpfile="collinearFeature.html">
1388         <sketch_shape_selector id="ConstraintEntityA"
1389             label="First line" tooltip="Select a line" shape_types="edge">
1390           <validator id="GeomValidators_ShapeType" parameters="line"/>
1391           <validator id="PartSet_DifferentObjects"/>
1392         </sketch_shape_selector>
1393
1394         <sketch_shape_selector id="ConstraintEntityB"
1395             label="Second line" tooltip="Select a line" shape_types="edge">
1396           <validator id="GeomValidators_ShapeType" parameters="line"/>
1397           <validator id="PartSet_DifferentObjects"/>
1398         </sketch_shape_selector>
1399         <validator id="PartSet_CollinearSelection"/>
1400       </feature>
1401     </group>
1402   </workbench>
1403 </plugin>