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