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