1 <!-- Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
4 <workbench id="Sketch">
8 nested="SketchPoint SketchLine SketchCircle SketchArc SketchRectangle SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintParallel SketchConstraintPerpendicular SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical SketchConstraintEqual SketchConstraintTangent SketchConstraintFillet SketchConstraintCoincidence SketchConstraintMirror SketchConstraintAngle SketchMultiRotation SketchMultiTranslation SketchConstraintCollinear SketchConstraintMiddle"
9 when_nested="accept abort"
11 tooltip="Create sketch"
12 icon=":icons/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"/>
16 <error_label id="SolverError"/>
17 <validator id="SketchPlugin_SolverErrorValidator"/>
18 <!--icon=":pictures/x_point.png"-->
20 <feature id="SketchPoint" title="Point" tooltip="Create point" icon=":icons/point.png">
21 <sketch-2dpoint_selector id="PointCoordindates" accept_expressions="0" title="Point" tooltip="Point coordinates"/>
22 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
24 <feature id="SketchLine" title="Line" tooltip="Create line" icon=":icons/line.png">
25 <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates" previous_feature_param="EndPoint"/>
26 <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"/>
27 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
28 <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
35 tooltip="Create circle"
36 icon=":icons/circle.png">
37 <toolbox id="CircleType">
38 <box id="CenterRadius" title="Center and radius" icon=":icons/circle_pt_rad_32x32.png">
39 <sketch-2dpoint_selector id="CircleCenter" accept_expressions="0" title="Center" tooltip="Center coordinates"/>
40 <point2ddistance id="CircleRadius" accept_expressions="0" first_point="CircleCenter" label="Radius:" min="0" step="1.0" default="0" icon=":icons/radius.png" tooltip="Set radius">
41 <validator id="GeomValidators_Positive"/>
43 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
45 <box id="ThreePoints" title="Three points" icon=":icons/circle_3pt_32x32.png">
46 <sketch-2dpoint_selector id="FirstPoint" accept_expressions="0" title="First point" tooltip="First point"/>
47 <sketch-2dpoint_selector id="SecondPoint" accept_expressions="0" title="Second point" tooltip="Second point"/>
48 <sketch-2dpoint_selector id="ThirdPoint" accept_expressions="0" title="Third point" tooltip="Third point"/>
49 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
59 icon=":icons/arc.png">
60 <toolbox id="ArcType">
61 <box id="CenterStartEnd" title="Center and two points" icon=":icons/arc_base_32x32.png">
62 <sketch-2dpoint_selector id="ArcCenter" accept_expressions="0" title="Center" tooltip="Center of a circle"/>
63 <sketch-2dpoint_selector id="ArcStartPoint" accept_expressions="0" title="Start point" tooltip="Start point"/>
64 <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"/>
65 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
66 <validator id="GeomValidators_Different" parameters="ArcCenter,ArcStartPoint,ArcEndPoint"/>
68 <box id="ThreePoints" title="Three points on arc" icon=":icons/arc_3pt_32x32.png">
69 <sketch-2dpoint_selector id="ArcStartPoint" accept_expressions="0" title="Start point" tooltip="Start point"/>
70 <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"/>
71 <sketch-2dpoint_selector id="ArcPassedPoint" accept_expressions="0" title="Passed point" tooltip="Passed point"/>
72 <doublevalue id="ArcRadius" accept_expressions="0" label="Radius:" default="computed" icon=":icons/radius.png" tooltip="Set radius" obligatory="1">
73 <validator id="GeomValidators_Positive"/>
75 <doublevalue id="ArcAngle" label="Angle:" icon=":icons/angle.png" tooltip="Set angle" default="90" use_reset="false" obligatory="1"/>
76 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
77 <validator id="GeomValidators_Different" parameters="ArcStartPoint,ArcEndPoint,ArcPassedPoint"/>
79 <box id="Tangent" title="Tangent with edge" icon=":icons/arc_tang_32x32.png">
80 <sketch_shape_selector id="ArcTangentPoint" label="Start point" tooltip="Select point on line" shape_types="vertex">
81 <validator id="SketchPlugin_ArcTangentPoint" parameters="" />
82 </sketch_shape_selector>
83 <sketch-2dpoint_selector id="ArcEndPoint" accept_expressions="0" title="End point" tooltip="End point"/>
84 <doublevalue id="ArcRadius" accept_expressions="0" label="Radius:" default="computed" icon=":icons/radius.png" tooltip="Set radius" obligatory="1">
85 <validator id="GeomValidators_Positive"/>
87 <doublevalue id="ArcAngle" label="Angle:" icon=":icons/angle.png" tooltip="Set angle" default="90" use_reset="false" obligatory="1"/>
88 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
95 <!-- SketchConstraintFillet -->
96 <feature id="SketchConstraintFillet" title="Fillet" tooltip="Create constraint defining fillet between two objects" icon=":icons/fillet.png">
97 <!--<sketch_shape_selector id="ConstraintEntityA"
98 label="Point" tooltip="Select point for fillet (should be shared by two entities only)" shape_types="vertex">
99 <validator id="SketchPlugin_FilletVertexValidator"/>
100 </sketch_shape_selector>-->
101 <sketch_multi_selector id="ConstraintEntityA"
103 tooltip="Select points for fillets"
104 type_choice="Vertices">
105 <validator id="SketchPlugin_FilletVertexValidator"/>
106 </sketch_multi_selector>
107 <doublevalue label="Radius" tooltip="Fillet arc radius" id="ConstraintValue" accept_expressions="0" min="0" use_reset="false">
108 <validator id="GeomValidators_Positive"/>
110 <validator id="PartSet_FilletSelection"/>
114 <group id="Constraints">
115 <!-- SketchConstraintDistance -->
117 id="SketchConstraintDistance"
119 tooltip="Set fixed distance from a point to an object"
120 icon=":icons/distance.png">
121 <label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
122 <sketch_shape_selector
123 id="ConstraintEntityA"
125 tooltip="Select point, line end point, line, center of circle or arc."
126 shape_types="edge vertex">
127 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
128 <validator id="PartSet_DifferentObjects"/>
129 <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
130 </sketch_shape_selector>
131 <sketch_shape_selector
132 id="ConstraintEntityB"
133 label="Second object"
134 tooltip="Select point, line end point, line, center of circle or arc."
135 shape_types="edge vertex">
136 <validator id="PartSet_DifferentObjects"/>
137 <validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
138 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
139 <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
140 </sketch_shape_selector>
141 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
143 <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
144 <validator id="GeomValidators_Positive"/>
145 </doublevalue_editor>
147 <validator id="PartSet_DistanceSelection"/>
150 <!-- SketchConstraintLength -->
151 <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon=":icons/length.png">
152 <label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
153 <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select an line" shape_types="edge" >
154 <validator id="GeomValidators_ShapeType" parameters="line"/>
156 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
157 <doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
158 <validator id="GeomValidators_Positive"/>
159 </doublevalue_editor>
160 <validator id="PartSet_LengthSelection"/>
163 <!-- SketchConstraintRadius -->
164 <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon=":icons/radius_constr.png">
165 <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"/>
166 <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
168 <validator id="GeomValidators_ShapeType" parameters="circle"/>
170 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
171 <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
172 <validator id="GeomValidators_Positive"/>
173 </doublevalue_editor>
174 <validator id="PartSet_RadiusSelection"/>
177 <!-- SketchConstraintAngle -->
178 <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon=":icons/angle_constr.png">
179 <sketch_shape_selector id="ConstraintEntityA" label="Line 1" tooltip="Select an line" shape_types="edge" >
180 <validator id="GeomValidators_ShapeType" parameters="line"/>
181 <validator id="PartSet_DifferentObjects"/>
182 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
183 </sketch_shape_selector>
184 <sketch_shape_selector id="ConstraintEntityB" label="Line 2" tooltip="Select an line" shape_types="edge" >
185 <validator id="GeomValidators_ShapeType" parameters="line"/>
186 <validator id="PartSet_DifferentObjects"/>
187 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
188 </sketch_shape_selector>
189 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
190 <doublevalue_editor label="Value" tooltip="Angle" id="ConstraintValue" default="computed" min="0" max="180" />
191 <validator id="PartSet_AngleSelection"/>
194 <!-- SketchConstraintParallel -->
195 <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines" icon=":icons/parallel.png">
196 <sketch_shape_selector id="ConstraintEntityA"
197 label="First line" tooltip="Select a line" shape_types="edge">
198 <validator id="GeomValidators_ShapeType" parameters="line"/>
199 <validator id="PartSet_DifferentObjects"/>
200 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
201 </sketch_shape_selector>
203 <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
205 <validator id="GeomValidators_ShapeType" parameters="line"/>
206 <validator id="PartSet_DifferentObjects"/>
207 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
208 </sketch_shape_selector>
209 <validator id="PartSet_ParallelSelection"/>
212 <!-- SketchConstraintPerpendicular -->
213 <feature id="SketchConstraintPerpendicular" title="Perpendicular"
214 tooltip="Create constraint defining two perpendicular lines"
215 icon=":icons/perpendicular.png">
216 <sketch_shape_selector id="ConstraintEntityA"
217 label="First line" tooltip="Select an line"
219 <validator id="PartSet_DifferentObjects"/>
220 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
221 <validator id="GeomValidators_ShapeType" parameters="line"/>
222 </sketch_shape_selector>
224 <sketch_shape_selector id="ConstraintEntityB"
225 label="Second line" tooltip="Select an line"
227 <validator id="PartSet_DifferentObjects"/>
228 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
229 <validator id="GeomValidators_ShapeType" parameters="line"/>
230 </sketch_shape_selector>
231 <validator id="PartSet_PerpendicularSelection"/>
234 <!-- SketchConstraintCoincidence -->
235 <feature id="SketchConstraintCoincidence" title="Coincident" tooltip="Create constraint for the coincidence of two points or point on line or circle" icon=":icons/coincedence.png">
236 <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
237 <validator id="PartSet_DifferentObjects"/>
238 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
239 </sketch_shape_selector>
240 <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
241 <validator id="PartSet_DifferentObjects"/>
242 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
243 <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
244 </sketch_shape_selector>
245 <validator id="PartSet_CoincidentSelection"/>
248 <!-- SketchConstraintRigid -->
249 <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon=":icons/fixed.png">
250 <sketch_shape_selector id="ConstraintEntityA" label="Object"
251 tooltip="Select point, line end point, line, center of circle or arc."
252 shape_types="edge vertex">
253 <validator id="GeomValidators_ShapeType" parameters="vertex,line,circle"/>
254 <validator id="SketchPlugin_NotFixed"/>
255 </sketch_shape_selector>
256 <validator id="PartSet_RigidSelection"/>
259 <!-- SketchConstraintHorizontal -->
260 <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon=":icons/horisontal.png">
261 <sketch_shape_selector id="ConstraintEntityA"
262 label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
263 <validator id="GeomValidators_ShapeType" parameters="line"/>
264 </sketch_shape_selector>
265 <validator id="PartSet_HVDirSelection"/>
268 <!-- SketchConstraintVertical -->
269 <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon=":icons/vertical.png">
270 <sketch_shape_selector id="ConstraintEntityA"
271 label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
272 <validator id="GeomValidators_ShapeType" parameters="line"/>
273 </sketch_shape_selector>
274 <validator id="PartSet_HVDirSelection"/>
277 <!-- SketchConstraintEqual -->
278 <feature id="SketchConstraintEqual" title="Equal"
279 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"
280 icon=":icons/equal.png">
281 <sketch_shape_selector id="ConstraintEntityA"
282 label="First object" tooltip="Select line, circle or arc" shape_types="edge">
283 <validator id="PartSet_DifferentObjects"/>
284 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
285 </sketch_shape_selector>
287 <sketch_shape_selector id="ConstraintEntityB"
288 label="Second object" tooltip="Select line, circle or arc" shape_types="edge">
289 <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
290 <validator id="PartSet_DifferentObjects"/>
291 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
292 </sketch_shape_selector>
293 <validator id="PartSet_EqualSelection"/>
296 <!-- SketchConstraintTangent -->
297 <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two objects with common coincident point" icon=":icons/tangent.png">
298 <sketch_shape_selector id="ConstraintEntityA"
299 label="First object" tooltip="Select line or arc" shape_types="edge">
300 <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
301 <validator id="PartSet_DifferentObjects"/>
302 </sketch_shape_selector>
304 <sketch_shape_selector id="ConstraintEntityB"
305 label="Second object" tooltip="Select line or arc" shape_types="edge">
306 <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
307 <validator id="PartSet_DifferentObjects"/>
308 </sketch_shape_selector>
309 <validator id="PartSet_TangentSelection"/>
312 <!-- SketchConstraintCollinear -->
313 <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines" icon=":icons/collinear.png">
314 <sketch_shape_selector id="ConstraintEntityA"
315 label="First line" tooltip="Select a line" shape_types="edge">
316 <validator id="GeomValidators_ShapeType" parameters="line"/>
317 <validator id="PartSet_DifferentObjects"/>
318 </sketch_shape_selector>
320 <sketch_shape_selector id="ConstraintEntityB"
321 label="Second line" tooltip="Select a line" shape_types="edge">
322 <validator id="GeomValidators_ShapeType" parameters="line"/>
323 <validator id="PartSet_DifferentObjects"/>
324 </sketch_shape_selector>
325 <validator id="PartSet_CollinearSelection"/>
328 <!-- SketchConstraintMiddle -->
329 <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line" icon=":icons/middlepoint.png">
330 <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
331 <validator id="PartSet_DifferentObjects"/>
332 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
333 <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
334 </sketch_shape_selector>
335 <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
336 <validator id="PartSet_DifferentObjects"/>
337 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
338 <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
339 </sketch_shape_selector>
340 <validator id="PartSet_MiddlePointSelection"/>
346 <!-- SketchConstraintMirror -->
348 id="SketchConstraintMirror"
349 title="Mirror" icon=":icons/mirror.png"
350 tooltip="Create constraint, mirroring group of objects">
351 <sketch_shape_selector id="ConstraintEntityA"
352 label="Mirror line" tooltip="Select mirror line" shape_types="edge">
353 <validator id="GeomValidators_ShapeType" parameters="line"/>
354 </sketch_shape_selector>
355 <sketch_multi_selector id="ConstraintMirrorList"
357 tooltip="Select list of mirroring objects"
360 <validator id="SketchPlugin_MirrorAttr" />
361 </sketch_multi_selector>
364 <!-- SketchMultiTranslation -->
366 id="SketchMultiTranslation"
367 title="Translation" icon=":icons/translate.png"
368 tooltip="Multiple translation">
369 <sketch_multi_selector id="MultiTranslationList"
371 tooltip="Select list of translating objects"
374 <validator id="SketchPlugin_CopyValidator" />
375 </sketch_multi_selector>
376 <toolbox id="ValueType">
377 <box id="SingleValue" title="Single value" icon=":icons/translate_32x32.png">
378 <groupbox title="Direction">
379 <sketch_shape_selector
380 id="MultiTranslationStartPoint"
382 tooltip="Start point of translation"
383 shape_types="vertex">
384 <validator id="PartSet_DifferentObjects"/>
385 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
386 </sketch_shape_selector>
387 <sketch_shape_selector
388 id="MultiTranslationEndPoint"
390 tooltip="Final point of translation"
391 shape_types="vertex">
392 <validator id="PartSet_DifferentObjects"/>
393 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
394 </sketch_shape_selector>
397 <box id="FullValue" title="Full value" icon=":icons/translate_full_32x32.png">
398 <groupbox title="Direction">
399 <sketch_shape_selector
400 id="MultiTranslationStartPoint"
402 tooltip="Start point of translation"
403 shape_types="vertex">
404 <validator id="PartSet_DifferentObjects"/>
405 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
406 </sketch_shape_selector>
407 <sketch_shape_selector
408 id="MultiTranslationEndPoint"
410 tooltip="Final point of translation"
411 shape_types="vertex">
412 <validator id="PartSet_DifferentObjects"/>
413 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
414 </sketch_shape_selector>
418 <integervalue id="MultiTranslationObjects"
419 label="Total number of objects"
420 tooltip="Total number of objects"
421 default="2" min="2" use_reset="false">
422 <validator id="GeomValidators_Positive"/>
426 <!-- SketchMultiRotation -->
428 id="SketchMultiRotation"
429 title="Rotation" icon=":icons/rotate.png"
430 tooltip="Multiple rotation">
431 <sketch_multi_selector id="MultiRotationList"
433 tooltip="Select list of rotating objects"
436 <validator id="SketchPlugin_CopyValidator" />
437 </sketch_multi_selector>
438 <sketch_shape_selector
439 id="MultiRotationCenter"
440 label="Center of rotation"
441 tooltip="Center of rotation"
442 shape_types="vertex">
443 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
444 </sketch_shape_selector>
445 <toolbox id="AngleType">
446 <box id="SingleAngle" title="Single angle" icon=":icons/angle_up_32x32.png">
447 <doublevalue id="MultiRotationAngle"
449 icon=":icons/angle.png"
450 tooltip="Rotation angle"
451 default="90" use_reset="false"/>
453 <box id="FullAngle" title="Full angle" icon=":icons/angle_up_full_32x32.png">
454 <doublevalue id="MultiRotationAngle"
456 icon=":icons/angle.png"
457 tooltip="Rotation angle"
458 default="90" use_reset="false"/>
461 <integervalue id="MultiRotationObjects"
462 label="Total number of objects"
463 tooltip="Total number of objects"
464 default="2" min="2" use_reset="false">
465 <validator id="GeomValidators_Positive"/>