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