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