Salome HOME
282c142eb4c880009d50c2db3aeb67de84f52f42
[modules/shaper.git] / src / SketchPlugin / plugin-Sketch.xml
1 <!-- Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
2
3 <plugin>
4   <workbench id="Sketch">
5     <group id="Linear geometry">
6       <feature
7         id="Sketch"
8         nested="SketchPoint SketchIntersectionPoint SketchLine SketchCircle SketchArc SketchRectangle SketchProjection SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintParallel SketchConstraintPerpendicular SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical SketchConstraintEqual SketchConstraintTangent SketchConstraintFillet SketchConstraintCoincidence SketchConstraintMirror SketchConstraintAngle SketchMultiRotation SketchMultiTranslation SketchConstraintCollinear SketchConstraintMiddle"
9         when_nested="accept abort"
10         title="Sketch"
11         tooltip="Create sketch"
12         icon="icons/Sketch/sketch.png">
13         <sketch-start-label id="External" title="Select a plane on which to create a sketch" tooltip="Select a plane on which to create a sketch">
14           <validator id="GeomValidators_Face" parameters="plane"/>
15         </sketch-start-label>
16         <label id="SolverDOF"/>
17         <label id="SolverError" styleSheet="color : red; font : bold"/>
18         <validator id="SketchPlugin_SolverErrorValidator"/>
19       </feature>
20
21       <!-- SketchPoint -->
22       <feature id="SketchPoint" title="Point" tooltip="Create point" icon="icons/Sketch/point.png">
23         <sketch-2dpoint_selector id="PointCoordindates" accept_expressions="0" title="Point" tooltip="Point coordinates"
24                                  enable_value="enable_by_preferences"/>
25         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
26       </feature>
27       
28       <!-- SketchLine -->
29       <feature id="SketchLine" title="Line" tooltip="Create line" icon="icons/Sketch/line.png">
30         <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates"
31                                  enable_value="enable_by_preferences"/>
32         <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"
33                                  enable_value="enable_by_preferences"/>
34         <doublevalue id="LineLength" accept_expressions="0" label="Length:" default="computed" icon="icons/Sketch/distance_value.png"
35                      tooltip="Line length" obligatory="0" enable_value="false"/>
36         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
37         <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
38       </feature>
39     </group>
40     <group id="Circular geometry">
41       <!-- SketchCircle -->
42       <feature 
43         id="SketchCircle"
44         title="Circle"
45         tooltip="Create circle"
46         icon="icons/Sketch/circle.png">
47         <toolbox id="CircleType">
48           <box id="CenterRadius" title="Center and radius" icon="icons/Sketch/circle_pt_rad_32x32.png">
49             <sketch-2dpoint_selector id="CircleCenter" accept_expressions="0" title="Center" tooltip="Center coordinates"
50                                      enable_value="enable_by_preferences"/>
51             <point2ddistance id="CircleRadius" accept_expressions="0" first_point="CircleCenter" label="Radius:" min="0" step="1.0"
52                              default="0" icon="icons/Sketch/radius.png" tooltip="Set radius"
53                              enable_value="enable_by_preferences">
54               <validator id="GeomValidators_Positive"/>
55             </point2ddistance>
56           </box>
57           <box id="ThreePoints" title="Three points" icon="icons/Sketch/circle_3pt_32x32.png">
58             <sketch-2dpoint_selector id="FirstPoint" accept_expressions="0" title="First point" tooltip="First point"
59                                      enable_value="enable_by_preferences"/>
60             <sketch-2dpoint_selector id="SecondPoint" accept_expressions="0" title="Second point" tooltip="Second point"
61                                      enable_value="enable_by_preferences"/>
62             <sketch-2dpoint_selector id="ThirdPoint" accept_expressions="0" title="Third point" tooltip="Third point"
63                                      enable_value="enable_by_preferences"/>
64           </box>
65         </toolbox>
66         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
67       </feature>
68
69       <!-- SketchArc -->
70       <feature
71         id="SketchArc"
72         title="Arc"
73         tooltip="Create arc"
74         icon="icons/Sketch/arc.png">
75         <toolbox id="ArcType">
76           <box id="CenterStartEnd" title="Center and two points" icon="icons/Sketch/arc_base_32x32.png">
77             <sketch-2dpoint_selector id="ArcCenter" accept_expressions="0" title="Center" tooltip="Center of a circle"
78                                      enable_value="enable_by_preferences"/>
79             <sketch-2dpoint_selector id="ArcStartPoint" accept_expressions="0" title="Start point" tooltip="Start point"
80                                      enable_value="enable_by_preferences"/>
81             <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"
82                                      enable_value="enable_by_preferences"/>
83             <validator id="GeomValidators_Different" parameters="ArcCenter,ArcStartPoint,ArcEndPoint"/>
84           </box>
85           <box id="ThreePoints" title="Three points on arc" icon="icons/Sketch/arc_3pt_32x32.png">
86             <sketch-2dpoint_selector id="ArcStartPoint" accept_expressions="0" title="Start point" tooltip="Start point"
87                                      enable_value="enable_by_preferences"/>
88             <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"
89                                      enable_value="enable_by_preferences"/>
90             <sketch-2dpoint_selector id="ArcPassedPoint" accept_expressions="0" title="Passed point" tooltip="Passed point"
91                                      enable_value="enable_by_preferences"/>
92             <validator id="GeomValidators_Different" parameters="ArcStartPoint,ArcEndPoint,ArcPassedPoint"/>
93           </box>
94           <box id="Tangent" title="Tangent with edge" icon="icons/Sketch/arc_tang_32x32.png">
95             <sketch_shape_selector id="ArcTangentPoint" label="Tangent point" tooltip="Select point on line" shape_types="vertex">
96               <validator id="SketchPlugin_ArcTangentPoint" parameters="" />
97             </sketch_shape_selector>
98             <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"
99                                      enable_value="enable_by_preferences"/>
100           </box>
101         </toolbox>
102         <doublevalue id="ArcRadius" accept_expressions="0" label="Radius:" default="computed" icon="icons/Sketch/radius.png"
103                      tooltip="Set radius" obligatory="0" enable_value="enable_by_preferences">
104           <validator id="GeomValidators_Positive"/>
105         </doublevalue>
106         <doublevalue id="ArcAngle" label="Angle:" icon="icons/Sketch/angle.png" tooltip="Set angle" default="90" use_reset="false" obligatory="0"
107                      enable_value="enable_by_preferences"/>
108         <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"
109                    enable_value="enable_by_preferences"/>
110       </feature>
111
112       <!--  SketchConstraintFillet  -->
113       <feature id="SketchConstraintFillet" title="Fillet" tooltip="Create constraint defining fillet between two objects" icon="icons/Sketch/fillet.png">
114         <!--<sketch_shape_selector id="ConstraintEntityA"
115             label="Point" tooltip="Select point for fillet (should be shared by two entities only)" shape_types="vertex">
116           <validator id="SketchPlugin_FilletVertexValidator"/>
117         </sketch_shape_selector>-->
118         <sketch_multi_selector id="ConstraintEntityA"
119             label="Points:"
120             tooltip="Select points for fillets"
121             type_choice="Vertices"
122             greed = "true"
123             clear_in_neutral_point="false">
124           <validator id="SketchPlugin_FilletVertexValidator"/>
125         </sketch_multi_selector>
126         <doublevalue label="Radius" tooltip="Fillet arc radius" id="ConstraintValue" accept_expressions="0" min="0" use_reset="false"
127                      enable_value="enable_by_preferences">
128           <validator id="GeomValidators_Positive"/>
129         </doublevalue>
130         <validator id="PartSet_FilletSelection"/>
131       </feature>
132     </group>
133
134     <group id="Projection">
135       <!-- Intersection Point -->
136       <!-- feature
137         id="SketchIntersectionPoint"
138         title="Intersection Point"
139         tooltip="Create intersection point"
140         icon="icons/Sketch/intersection_point.png">
141         <sketch_shape_selector
142               id="ExternalLine"
143               label="Edge"
144               tooltip="Select external line."
145               shape_types="edge"
146               use_external="false"
147               use_sketch_plane="false">
148           <validator id="GeomValidators_ShapeType" parameters="line"/>
149           <validator id="SketchPlugin_IntersectionValidator"/>
150         </sketch_shape_selector>
151       </feature -->
152
153       <!-- Projected feature -->
154       <feature
155         id="SketchProjection"
156         title="Projection"
157         tooltip="Project feature onto sketch plane"
158         icon="icons/Sketch/projection.png">
159         <sketch_shape_selector
160               id="ExternalFeature"
161               label="Edge"
162               tooltip="Select external edge."
163               shape_types="edge"
164               use_external="false"
165               use_sketch_plane="false">
166           <validator id="SketchPlugin_ProjectionValidator"/>
167         </sketch_shape_selector>
168       </feature>
169     </group>
170
171     <group id="Replication">
172       <!--  SketchConstraintMirror  -->
173       <feature
174         id="SketchConstraintMirror"
175         title="Mirror" icon="icons/Sketch/mirror.png"
176         tooltip="Create constraint, mirroring group of objects">
177         <sketch_shape_selector id="ConstraintEntityA"
178             label="Mirror line" tooltip="Select mirror line" shape_types="edge">
179           <validator id="GeomValidators_ShapeType" parameters="line"/>
180         </sketch_shape_selector>
181         <sketch_multi_selector id="ConstraintMirrorList"
182             label="Segments:"
183             tooltip="Select list of mirroring objects"
184             type_choice="Edges"
185             use_external="true"
186             greed ="true">
187           <validator id="SketchPlugin_MirrorAttr" />
188         </sketch_multi_selector>
189       </feature>
190
191       <!--  SketchMultiTranslation  -->
192       <feature
193         id="SketchMultiTranslation"
194         title="Translation" icon="icons/Sketch/translate.png"
195         tooltip="Multiple translation">
196         <sketch_multi_selector id="MultiTranslationList"
197             label="Segments:"
198             tooltip="Select list of translating objects"
199             type_choice="Edges"
200             use_external="true"
201             greed ="true">
202           <validator id="SketchPlugin_CopyValidator" />
203         </sketch_multi_selector>
204         <toolbox id="ValueType">
205           <box id="SingleValue" title="Single value" icon="icons/Sketch/translate_32x32.png">
206             <groupbox title="Direction">
207               <sketch_shape_selector
208                     id="MultiTranslationStartPoint"
209                     label="Start point"
210                     tooltip="Start point of translation"
211                     shape_types="vertex">
212                 <validator id="PartSet_DifferentObjects"/>
213                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
214               </sketch_shape_selector>
215               <sketch_shape_selector
216                     id="MultiTranslationEndPoint"
217                     label="End point"
218                     tooltip="Final point of translation"
219                     shape_types="vertex">
220                 <validator id="PartSet_DifferentObjects"/>
221                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
222               </sketch_shape_selector>
223             </groupbox>
224           </box>
225           <box id="FullValue" title="Full value" icon="icons/Sketch/translate_full_32x32.png">
226             <groupbox title="Direction">
227               <sketch_shape_selector
228                     id="MultiTranslationStartPoint"
229                     label="Start point"
230                     tooltip="Start point of translation"
231                     shape_types="vertex">
232                 <validator id="PartSet_DifferentObjects"/>
233                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
234               </sketch_shape_selector>
235               <sketch_shape_selector
236                     id="MultiTranslationEndPoint"
237                     label="End point"
238                     tooltip="Final point of translation"
239                     shape_types="vertex">
240                 <validator id="PartSet_DifferentObjects"/>
241                 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
242               </sketch_shape_selector>
243             </groupbox>
244           </box>
245         </toolbox>
246         <integervalue id="MultiTranslationObjects"
247             label="Total number of objects"
248             tooltip="Total number of objects"
249             default="2" min="2" use_reset="false">
250           <validator id="GeomValidators_Positive"/>
251         </integervalue>
252       </feature>
253
254       <!--  SketchMultiRotation  -->
255       <feature
256         id="SketchMultiRotation"
257         title="Rotation" icon="icons/Sketch/rotate.png"
258         tooltip="Multiple rotation">
259         <sketch_multi_selector id="MultiRotationList"
260             label="Segments:"
261             tooltip="Select list of rotating objects"
262             type_choice="Edges"
263             use_external="true"
264             greed ="true">
265           <validator id="SketchPlugin_CopyValidator" />
266         </sketch_multi_selector>
267         <sketch_shape_selector
268               id="MultiRotationCenter"
269               label="Center of rotation"
270               tooltip="Center of rotation"
271               shape_types="vertex">
272           <validator id="GeomValidators_ShapeType" parameters="vertex"/>
273         </sketch_shape_selector>
274         <toolbox id="AngleType">
275           <box id="SingleAngle" title="Single angle" icon="icons/Sketch/angle_up_32x32.png">
276             <doublevalue id="MultiRotationAngle"
277                          label="Angle"
278                          icon="icons/Sketch/angle.png"
279                          tooltip="Rotation angle"
280                          default="90" use_reset="false"/>
281           </box>
282           <box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
283             <doublevalue id="MultiRotationAngle"
284                          label="Angle"
285                          icon="icons/Sketch/angle.png"
286                          tooltip="Rotation angle"
287                          default="90" use_reset="false"/>
288           </box>
289         </toolbox>
290         <integervalue id="MultiRotationObjects"
291             label="Total number of objects"
292             tooltip="Total number of objects"
293             default="2" min="2" use_reset="false">
294           <validator id="GeomValidators_Positive"/>
295         </integervalue>
296       </feature>
297     </group>
298
299     <group id="Dimensional constraints">
300     <!--  SketchConstraintDistance  -->
301       <feature
302         id="SketchConstraintDistance"
303         title="Distance"
304         tooltip="Set fixed distance from a point to an object"
305         icon="icons/Sketch/distance.png">
306         <label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
307         <sketch_shape_selector
308               id="ConstraintEntityA"
309               label="First object"
310               tooltip="Select point, line end point, line, center of circle or arc."
311               shape_types="edge vertex">
312           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
313           <validator id="PartSet_DifferentObjects"/>
314           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
315         </sketch_shape_selector>
316         <sketch_shape_selector 
317           id="ConstraintEntityB" 
318           label="Second object" 
319           tooltip="Select point, line end point, line, center of circle or arc." 
320           shape_types="edge vertex">
321           <validator id="PartSet_DifferentObjects"/>
322           <validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
323           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
324           <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
325         </sketch_shape_selector>
326         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
327         
328         <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
329           <validator id="GeomValidators_Positive"/>
330         </doublevalue_editor>
331         
332         <validator id="PartSet_DistanceSelection"/>
333       </feature>
334       
335     <!--  SketchConstraintLength  -->      
336       <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon="icons/Sketch/length.png">
337         <label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
338         <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select an line" shape_types="edge" >
339           <validator id="GeomValidators_ShapeType" parameters="line"/>
340         </shape_selector>
341         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
342         <doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
343           <validator id="GeomValidators_Positive"/>
344         </doublevalue_editor>
345         <validator id="PartSet_LengthSelection"/>
346       </feature>
347
348       <!--  SketchConstraintAngle  -->
349       <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon="icons/Sketch/angle_constr.png">
350         <sketch_shape_selector id="ConstraintEntityA" label="Line 1" tooltip="Select an line" shape_types="edge" >
351           <validator id="GeomValidators_ShapeType" parameters="line"/>
352           <validator id="PartSet_DifferentObjects"/>
353           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
354         </sketch_shape_selector>
355         <sketch_shape_selector id="ConstraintEntityB" label="Line 2" tooltip="Select an line" shape_types="edge" >
356           <validator id="GeomValidators_ShapeType" parameters="line"/>
357           <validator id="PartSet_DifferentObjects"/>
358           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
359         </sketch_shape_selector>
360         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
361         <doublevalue_editor label="Value" tooltip="Angle" id="AngleValue" default="computed" min="0" max="360" />
362         <validator id="PartSet_AngleSelection"/>
363         <module_choice id="AngleType"
364           widget_type="radiobuttons"
365           buttons_dir="horizontal"
366           label="Angle type"
367           tooltip="Type of angle"
368           string_list="Direct Complementary Additional"
369           icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
370           default="0"
371           />
372       </feature>
373
374       <!--  SketchConstraintRadius  -->
375       <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon="icons/Sketch/radius_constr.png">
376         <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"/>
377         <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
378             shape_types="edge">
379           <validator id="GeomValidators_ShapeType" parameters="circle"/>
380         </shape_selector>
381         <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt"  default="computed" internal="1" obligatory="0"/>
382         <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
383           <validator id="GeomValidators_Positive"/>
384         </doublevalue_editor>
385         <validator id="PartSet_RadiusSelection"/>
386       </feature>
387
388     </group>
389
390     <group id="Geometrical constraints">
391
392       <!--  SketchConstraintHorizontal  -->
393       <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon="icons/Sketch/horisontal.png">
394         <sketch_shape_selector id="ConstraintEntityA"
395             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
396           <validator id="GeomValidators_ShapeType" parameters="line"/>
397         </sketch_shape_selector>
398         <validator id="PartSet_HVDirSelection"/>
399       </feature>
400
401       <!--  SketchConstraintVertical  -->
402       <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon="icons/Sketch/vertical.png">
403         <sketch_shape_selector id="ConstraintEntityA"
404             label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
405           <validator id="GeomValidators_ShapeType" parameters="line"/>
406         </sketch_shape_selector>
407         <validator id="PartSet_HVDirSelection"/>
408       </feature>
409
410       <!--  SketchConstraintRigid  -->
411       <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon="icons/Sketch/fixed.png">
412         <sketch_shape_selector id="ConstraintEntityA" label="Object"
413                         tooltip="Select point, line end point, line, center of circle or arc."
414                         shape_types="edge vertex">
415           <validator id="GeomValidators_ShapeType" parameters="vertex,line,circle"/>
416           <validator id="SketchPlugin_NotFixed"/>
417         </sketch_shape_selector>
418         <validator id="PartSet_RigidSelection"/>
419       </feature>
420
421       <!--  SketchConstraintParallel  -->
422       <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines"
423                icon="icons/Sketch/parallel.png">
424         <sketch_shape_selector id="ConstraintEntityA" 
425             label="First line" tooltip="Select a line" shape_types="edge">
426           <validator id="GeomValidators_ShapeType" parameters="line"/>
427           <validator id="PartSet_DifferentObjects"/>
428           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
429         </sketch_shape_selector>
430         
431         <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line" 
432             shape_types="edge">
433             <validator id="GeomValidators_ShapeType" parameters="line"/>
434             <validator id="PartSet_DifferentObjects"/>
435             <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
436         </sketch_shape_selector>
437         <validator id="PartSet_ParallelSelection"/>
438       </feature>
439       
440     <!--  SketchConstraintPerpendicular  -->
441       <feature id="SketchConstraintPerpendicular" title="Perpendicular" 
442         tooltip="Create constraint defining two perpendicular lines" 
443         icon="icons/Sketch/perpendicular.png">
444         <sketch_shape_selector id="ConstraintEntityA" 
445             label="First line" tooltip="Select an line" 
446             shape_types="edge">
447           <validator id="PartSet_DifferentObjects"/>
448           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
449             <validator id="GeomValidators_ShapeType" parameters="line"/>
450         </sketch_shape_selector>
451         
452         <sketch_shape_selector id="ConstraintEntityB" 
453             label="Second line" tooltip="Select an line" 
454             shape_types="edge">
455             <validator id="PartSet_DifferentObjects"/>
456           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
457             <validator id="GeomValidators_ShapeType" parameters="line"/>
458         </sketch_shape_selector>
459         <validator id="PartSet_PerpendicularSelection"/>
460       </feature>
461
462       <!--  SketchConstraintTangent  -->
463       <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two objects with common coincident point" icon="icons/Sketch/tangent.png">
464         <sketch_shape_selector id="ConstraintEntityA"
465             label="First object" tooltip="Select line or arc" shape_types="edge">
466           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
467           <validator id="PartSet_DifferentObjects"/>
468         </sketch_shape_selector>
469
470         <sketch_shape_selector id="ConstraintEntityB"
471             label="Second object" tooltip="Select line or arc" shape_types="edge">
472           <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
473           <validator id="PartSet_DifferentObjects"/>
474         </sketch_shape_selector>
475         <validator id="PartSet_TangentSelection"/>
476       </feature>
477
478       <!--  SketchConstraintCoincidence  -->
479       <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">
480         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
481           <validator id="PartSet_DifferentObjects"/>
482           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
483         </sketch_shape_selector>
484         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
485           <validator id="PartSet_DifferentObjects"/>
486           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
487           <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
488         </sketch_shape_selector>
489         <validator id="PartSet_CoincidentSelection"/>
490       </feature>
491
492       <!--  SketchConstraintMiddle  -->
493       <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line" icon="icons/Sketch/middlepoint.png">
494         <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
495           <validator id="PartSet_DifferentObjects"/>
496           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
497           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
498         </sketch_shape_selector>
499         <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
500           <validator id="PartSet_DifferentObjects"/>
501           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
502           <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
503         </sketch_shape_selector>
504         <validator id="PartSet_MiddlePointSelection"/>
505       </feature>
506
507       <!--  SketchConstraintEqual  -->
508       <feature id="SketchConstraintEqual" title="Equal"
509         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"
510         icon="icons/Sketch/equal.png">
511         <sketch_shape_selector id="ConstraintEntityA" 
512             label="First object" tooltip="Select line, circle or arc" shape_types="edge">
513           <validator id="PartSet_DifferentObjects"/>
514           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
515         </sketch_shape_selector>
516         
517         <sketch_shape_selector id="ConstraintEntityB"
518             label="Second object" tooltip="Select line, circle or arc" shape_types="edge">
519           <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
520           <validator id="PartSet_DifferentObjects"/>
521           <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
522         </sketch_shape_selector>
523         <validator id="PartSet_EqualSelection"/>
524       </feature>
525       
526     <!--  SketchConstraintCollinear  -->
527       <!--
528       <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines" icon="icons/Sketch/collinear.png">
529         <sketch_shape_selector id="ConstraintEntityA" 
530             label="First line" tooltip="Select a line" shape_types="edge">
531           <validator id="GeomValidators_ShapeType" parameters="line"/>
532           <validator id="PartSet_DifferentObjects"/>
533         </sketch_shape_selector>
534         
535         <sketch_shape_selector id="ConstraintEntityB"
536             label="Second line" tooltip="Select a line" shape_types="edge">
537           <validator id="GeomValidators_ShapeType" parameters="line"/>
538           <validator id="PartSet_DifferentObjects"/>
539         </sketch_shape_selector>
540         <validator id="PartSet_CollinearSelection"/>
541       </feature>
542       -->
543          
544     </group>
545     
546   </workbench>
547 </plugin>