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