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