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