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