2 Copyright (C) 2014-2017 CEA/DEN, EDF R&D
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with this library; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 See http:##www.salome-platform.org/ or
19 email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
23 <workbench id="Sketch">
24 <group id="Linear geometry">
27 nested="SketchPoint SketchIntersectionPoint SketchLine
28 SketchCircle SketchMacroCircle SketchArc SketchMacroArc
31 SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintDistanceHorizontal SketchConstraintDistanceVertical
32 SketchConstraintParallel SketchConstraintPerpendicular
33 SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical
34 SketchConstraintEqual SketchConstraintTangent
35 SketchFillet SketchSplit SketchTrim
36 SketchConstraintCoincidence
37 SketchConstraintMirror SketchConstraintAngle
38 SketchMultiRotation SketchMultiTranslation
39 SketchConstraintCollinear SketchConstraintMiddle"
40 when_nested="accept abort"
42 tooltip="Create sketch"
43 icon="icons/Sketch/sketch.png">
44 <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">
45 <validator id="GeomValidators_Face" parameters="plane"/>
47 <label id="SolverDOF"/>
48 <label id="SolverError" styleSheet="color : red; font : bold"/>
49 <validator id="SketchPlugin_SolverErrorValidator"/>
53 <feature id="SketchPoint" title="Point" tooltip="Create point" icon="icons/Sketch/point.png">
54 <sketch-2dpoint_selector id="PointCoordinates" accept_expressions="0" title="Point" tooltip="Point coordinates"
55 enable_value="enable_by_preferences"/>
56 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
60 <feature id="SketchLine" title="Line" tooltip="Create line" icon="icons/Sketch/line.png">
61 <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates"
62 enable_value="enable_by_preferences"/>
63 <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"
64 enable_value="enable_by_preferences"/>
65 <labelvalue id="LineLength" accept_expressions="0" label="Length:" default="computed" icon="icons/Sketch/distance_value.png"
66 tooltip="Line length" obligatory="0" enable_value="false"/>
67 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
68 <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
71 <group id="Circular geometry">
72 <!-- SketchCircle is a hidden feature. It is created inside SketchMacroCircle. -->
73 <feature id="SketchCircle"
75 tooltip="Create circle"
76 icon="icons/Sketch/circle.png"
78 <sketch-2dpoint_selector id="circle_center"
80 tooltip="Center coordinates"
81 accept_expressions="0"
82 enable_value="enable_by_preferences"/>
83 <labelvalue id="circle_radius"
84 icon="icons/Sketch/radius.png"
88 accept_expressions="0"
89 enable_value="enable_by_preferences">
91 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
93 <!-- SketchMacroCircle -->
94 <feature id="SketchMacroCircle"
95 icon="icons/Sketch/circle.png"
97 tooltip="Create circle">
98 <toolbox id="circle_type" modified_in_edit="edit_circle_type">
99 <box id="circle_type_by_center_and_passed_points"
100 icon="icons/Sketch/circle_pt_rad_32x32.png"
101 title="Center and passed points">
102 <sketch-2dpoint_selector id="center_point"
103 reference_attribute="center_point_ref"
105 tooltip="Center point coordinates"
106 accept_expressions="0"
107 enable_value="enable_by_preferences"/>
108 <sketch-2dpoint_selector id="passed_point"
109 reference_attribute="passed_point_ref"
111 tooltip="Passed point coordinates"
112 accept_expressions="0"
113 enable_value="enable_by_preferences">
114 <validator id="SketchPlugin_CirclePassedPointValidator"/>
115 </sketch-2dpoint_selector>
116 <validator id="GeomValidators_Different" parameters="center_point_ref,passed_point_ref"/>
118 <box id="circle_type_by_three_points"
119 icon="icons/Sketch/circle_3pt_32x32.png"
120 title="Three points">
121 <sketch-2dpoint_selector id="first_point"
122 reference_attribute="first_point_ref"
124 tooltip="First point"
125 accept_expressions="0"
126 enable_value="enable_by_preferences"/>
127 <sketch-2dpoint_selector id="second_point"
128 reference_attribute="second_point_ref"
130 tooltip="Second point"
131 accept_expressions="0"
132 enable_value="enable_by_preferences">
133 <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref"/>
134 </sketch-2dpoint_selector>
135 <sketch-2dpoint_selector id="third_point"
136 reference_attribute="third_point_ref"
138 tooltip="Third point"
139 accept_expressions="0"
140 enable_value="enable_by_preferences">
141 <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref,third_point_ref"/>
142 <validator id="SketchPlugin_ThirdPointValidator" parameters="third_point_ref"/>
143 </sketch-2dpoint_selector>
144 <validator id="GeomValidators_Different" parameters="first_point_ref,second_point_ref,third_point_ref"/>
147 <labelvalue id="circle_radius"
148 icon="icons/Sketch/radius.png"
152 accept_expressions="0"
154 enable_value="enable_by_preferences">
155 <validator id="GeomValidators_Positive"/>
157 <boolvalue id="Auxiliary"
158 tooltip="Construction element"
165 <feature id="SketchArc"
166 icon="icons/Sketch/arc.png"
170 <sketch-2dpoint_selector id="center_point"
172 tooltip="Center of a circle"
173 accept_expressions="0"
174 enable_value="enable_by_preferences"/>
175 <sketch-2dpoint_selector id="start_point"
177 tooltip="Start point"
178 accept_expressions="0"
179 enable_value="enable_by_preferences"/>
180 <sketch-2dpoint_selector id="end_point"
183 accept_expressions="0"
184 enable_value="enable_by_preferences"/>
185 <validator id="GeomValidators_Different" parameters="center_point,start_point,end_point"/>
186 <labelvalue id="radius"
187 icon="icons/Sketch/radius.png"
190 accept_expressions="0"
194 enable_value="enable_by_preferences">
196 <labelvalue id="angle"
197 icon="icons/Sketch/angle.png"
203 enable_value="enable_by_preferences"/>
204 <boolvalue id="Auxiliary"
206 tooltip="Construction element"
211 <!-- SketchMacroArc -->
216 icon="icons/Sketch/arc.png">
217 <toolbox id="arc_type" modified_in_edit="edit_arc_type">
218 <box id="by_center_and_points"
219 icon="icons/Sketch/arc_base_32x32.png"
220 title="Center and two points">
221 <sketch-2dpoint_selector id="center_point"
222 reference_attribute="center_point_ref"
224 tooltip="Center of a circle"
225 accept_expressions="0"
226 enable_value="enable_by_preferences" />
227 <sketch-2dpoint_selector id="start_point_1"
228 reference_attribute="start_point_ref"
230 tooltip="Start point"
231 accept_expressions="0"
232 enable_value="enable_by_preferences"/>
233 <sketch-2dpoint_selector id="end_point_1"
234 reference_attribute="end_point_ref"
237 accept_expressions="0"
238 enable_value="enable_by_preferences">
239 <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
240 <validator id="SketchPlugin_ArcEndPointIntersectionValidator" parameters="end_point_ref"/>
241 </sketch-2dpoint_selector>
242 <validator id="GeomValidators_Different" parameters="center_point,start_point_1,end_point_1"/>
244 <box id="by_three_points"
245 icon="icons/Sketch/arc_3pt_32x32.png"
246 title="Three points on arc">
247 <sketch-2dpoint_selector id="start_point_2"
248 reference_attribute="start_point_ref"
250 tooltip="Start point"
251 accept_expressions="0"
252 enable_value="enable_by_preferences"/>
253 <sketch-2dpoint_selector id="end_point_2"
254 reference_attribute="end_point_ref"
257 accept_expressions="0"
258 enable_value="enable_by_preferences">
259 <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2"/>
260 <validator id="SketchPlugin_DifferentPointReference" parameters="start_point_ref,end_point_ref"/>
261 </sketch-2dpoint_selector>
262 <sketch-2dpoint_selector id="passed_point"
263 reference_attribute="passed_point_ref"
265 tooltip="Passed point"
266 accept_expressions="0"
267 enable_value="enable_by_preferences">
268 <validator id="SketchPlugin_DifferentReference" parameters="start_point_ref,end_point_ref,passed_point_ref"/>
269 <validator id="SketchPlugin_ThirdPointValidator" parameters="passed_point_ref"/>
270 </sketch-2dpoint_selector>
271 <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2,passed_point"/>
273 <box id="by_tangent_edge"
274 icon="icons/Sketch/arc_tang_32x32.png"
275 title="Tangent with edge">
276 <sketch_shape_selector id="tangent_point"
277 label="Tangent point"
278 tooltip="Select point on line"
279 shape_types="vertex">
280 <validator id="SketchPlugin_ArcTangentPoint"/>
281 </sketch_shape_selector>
282 <sketch-2dpoint_selector id="end_point_3"
283 reference_attribute="end_point_ref"
286 accept_expressions="0"
287 enable_value="enable_by_preferences">
288 <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
289 </sketch-2dpoint_selector>
292 <labelvalue id="radius"
293 icon="icons/Sketch/radius.png"
296 accept_expressions="0"
300 enable_value="enable_by_preferences">
302 <labelvalue id="angle"
303 icon="icons/Sketch/angle.png"
309 enable_value="enable_by_preferences"/>
310 <boolvalue id="Auxiliary"
312 tooltip="Construction element"
317 <!-- SketchFillet -->
318 <feature id="SketchFillet"
320 tooltip="Create constraint defining fillet between two objects"
321 icon="icons/Sketch/fillet.png">
322 <sketch_shape_selector id="fillet_point"
324 tooltip="Select point for fillet (should be shared by two entities only)"
325 shape_types="vertex">
326 <validator id="SketchPlugin_FilletVertexValidator"/>
327 </sketch_shape_selector>
328 <!--<validator id="PartSet_FilletSelection"/>-->
331 <feature id="SketchSplit" title="Split"
332 tooltip="Cut selected segment arc or circle on existing coincident points"
333 icon="icons/Sketch/split.png">
334 <sketch_feature_point_selector
336 selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
338 tooltip="Select segment for split"
340 use_external="false">
341 <validator id="SketchPlugin_SplitValidator"/>
342 </sketch_feature_point_selector>
343 <validator id="PartSet_SplitSelection"/>
346 <feature id="SketchTrim" title="Trim"
347 tooltip="Trim selected segment arc or circle on intersection points nearest to the graphic selection"
348 icon="icons/Sketch/trim.png">
349 <sketch_feature_point_selector
351 selection_attributes="SelectedObject SelectedPoint PreviewObject PreviewPoint"
353 tooltip="Select segment for trim"
355 use_external="false">
356 <validator id="SketchPlugin_TrimValidator"/>
357 </sketch_feature_point_selector>
358 <validator id="PartSet_SplitSelection"/>
363 <group id="Elliptic geometry">
364 <!-- SketchEllipse is a hidden feature. It is created inside SketchMacroEllipse. -->
365 <feature id="SketchEllipse"
367 tooltip="Create ellipse"
368 icon="icons/Sketch/ellipse.png"
370 <sketch-2dpoint_selector id="ellipse_center"
372 tooltip="Center coordinates"
373 accept_expressions="0"
374 enable_value="enable_by_preferences"/>
375 <sketch-2dpoint_selector id="ellipse_focus"
377 tooltip="Focus coordinates"
378 accept_expressions="0"
379 enable_value="enable_by_preferences"/>
380 <labelvalue id="ellipse_major_radius"
381 icon="icons/Sketch/radius.png"
382 label="Major radius:"
383 tooltip="Set major radius"
385 accept_expressions="0"
386 enable_value="enable_by_preferences">
388 <labelvalue id="ellipse_minor_radius"
389 icon="icons/Sketch/radius.png"
390 label="Minor radius:"
391 tooltip="Set minor radius"
393 accept_expressions="0"
394 enable_value="enable_by_preferences">
396 <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
398 <!-- SketchMacroEllipse -->
399 <feature id="SketchMacroEllipse"
400 icon="icons/Sketch/ellipse.png"
402 tooltip="Create ellipse">
403 <sketch-2dpoint_selector id="center_point"
404 reference_attribute="center_point_ref"
406 tooltip="Center point coordinates"
407 accept_expressions="0"
408 enable_value="enable_by_preferences"/>
409 <sketch-2dpoint_selector id="major_axis_point"
410 reference_attribute="major_axis_point_ref"
411 title="Major axis point"
412 tooltip="Major axis point coordinates"
413 accept_expressions="0"
414 enable_value="enable_by_preferences"/>
415 <sketch-2dpoint_selector id="passed_point"
416 reference_attribute="passed_point_ref"
418 tooltip="Passed point coordinates"
419 accept_expressions="0"
420 enable_value="enable_by_preferences">
421 <!-- <validator id="SketchPlugin_CirclePassedPointValidator"/> -->
422 </sketch-2dpoint_selector>
423 <!-- <validator id="GeomValidators_Different" parameters="center_point_ref,passed_point_ref"/> -->
424 <labelvalue id="ellipse_major_radius"
425 icon="icons/Sketch/radius.png"
426 label="Major radius:"
427 tooltip="Set major radius"
429 accept_expressions="0"
431 enable_value="enable_by_preferences">
432 <validator id="GeomValidators_Positive"/>
434 <labelvalue id="ellipse_minor_radius"
435 icon="icons/Sketch/radius.png"
436 label="Minor radius:"
437 tooltip="Set minor radius"
439 accept_expressions="0"
441 enable_value="enable_by_preferences">
442 <validator id="GeomValidators_Positive"/>
444 <boolvalue id="Auxiliary"
445 tooltip="Construction element"
453 <group id="Projection">
454 <!-- Intersection Point -->
456 id="SketchIntersectionPoint"
457 title="Intersection Point"
458 tooltip="Create intersection point"
459 icon="icons/Sketch/intersection_point.png">
460 <sketch_shape_selector
463 tooltip="Select external line."
466 use_sketch_plane="false">
467 <validator id="GeomValidators_ShapeType" parameters="line"/>
468 <validator id="SketchPlugin_IntersectionValidator"/>
469 </sketch_shape_selector>
472 <!-- Projected feature -->
474 id="SketchProjection"
476 tooltip="Project feature onto sketch plane"
477 icon="icons/Sketch/projection.png">
478 <sketch_shape_selector
481 tooltip="Select external edge."
482 shape_types="edge vertex"
484 can_create_external="false"
485 use_sketch_plane="false">
486 <validator id="SketchPlugin_ProjectionValidator"/>
487 </sketch_shape_selector>
488 <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"/>
489 <validator id="PartSet_ProjectionSelection"/>
493 <group id="Replication">
494 <!-- SketchConstraintMirror -->
496 id="SketchConstraintMirror"
497 title="Mirror" icon="icons/Sketch/mirror.png"
498 tooltip="Create constraint, mirroring group of objects">
499 <sketch_shape_selector id="ConstraintEntityA"
500 label="Mirror line" tooltip="Select mirror line" shape_types="edge">
501 <validator id="GeomValidators_ShapeType" parameters="line"/>
502 </sketch_shape_selector>
503 <sketch_multi_selector id="ConstraintMirrorList"
505 tooltip="Select list of objects to be mirrored"
509 <validator id="SketchPlugin_MirrorAttr" />
510 </sketch_multi_selector>
511 <validator id="PartSet_MultyTranslationSelection" />
514 <!-- SketchMultiTranslation -->
516 id="SketchMultiTranslation"
517 title="Translation" icon="icons/Sketch/translate.png"
518 tooltip="Multiple translation">
519 <sketch_multi_selector id="MultiTranslationList"
521 tooltip="Select list of objects to be translated"
525 <validator id="SketchPlugin_CopyValidator" />
526 </sketch_multi_selector>
527 <toolbox id="ValueType">
528 <box id="SingleValue" title="Single value" icon="icons/Sketch/translate_32x32.png">
529 <groupbox title="Direction">
530 <sketch_shape_selector
531 id="MultiTranslationStartPoint"
533 tooltip="Start point of translation"
534 shape_types="vertex">
535 <validator id="PartSet_DifferentObjects"/>
536 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
537 </sketch_shape_selector>
538 <sketch_shape_selector
539 id="MultiTranslationEndPoint"
541 tooltip="Final point of translation"
542 shape_types="vertex">
543 <validator id="PartSet_DifferentObjects"/>
544 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
545 </sketch_shape_selector>
548 <box id="FullValue" title="Full value" icon="icons/Sketch/translate_full_32x32.png">
549 <groupbox title="Direction">
550 <sketch_shape_selector
551 id="MultiTranslationStartPoint"
553 tooltip="Start point of translation"
554 shape_types="vertex">
555 <validator id="PartSet_DifferentObjects"/>
556 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
557 </sketch_shape_selector>
558 <sketch_shape_selector
559 id="MultiTranslationEndPoint"
561 tooltip="Final point of translation"
562 shape_types="vertex">
563 <validator id="PartSet_DifferentObjects"/>
564 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
565 </sketch_shape_selector>
569 <integervalue id="MultiTranslationObjects"
570 label="Total number of objects"
571 tooltip="Total number of objects"
572 default="2" min="2" use_reset="false">
573 <validator id="GeomValidators_Positive" parameters="1"/>
575 <validator id="PartSet_MultyTranslationSelection" />
578 <!-- SketchMultiRotation -->
580 id="SketchMultiRotation"
581 title="Rotation" icon="icons/Sketch/rotate.png"
582 tooltip="Multiple rotation">
583 <sketch_multi_selector id="MultiRotationList"
585 tooltip="Select list of objects to be rotated"
589 <validator id="SketchPlugin_CopyValidator" />
590 </sketch_multi_selector>
591 <sketch_shape_selector
592 id="MultiRotationCenter"
593 label="Center of rotation"
594 tooltip="Center of rotation"
595 shape_types="vertex">
596 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
597 </sketch_shape_selector>
598 <toolbox id="AngleType">
599 <box id="SingleAngle" title="Single angle" icon="icons/Sketch/angle_up_32x32.png">
600 <doublevalue id="MultiRotationAngle"
602 icon="icons/Sketch/angle.png"
603 tooltip="Rotation angle"
604 default="90" use_reset="false"/>
606 <box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
607 <doublevalue id="MultiRotationAngle"
609 icon="icons/Sketch/angle.png"
610 tooltip="Rotation angle"
611 default="90" use_reset="false"/>
614 <integervalue id="MultiRotationObjects"
615 label="Total number of objects"
616 tooltip="Total number of objects"
617 default="2" min="2" use_reset="false">
618 <validator id="GeomValidators_Positive" parameters="1"/>
620 <validator id="PartSet_MultyTranslationSelection" />
624 <group id="Dimensional constraints">
625 <!-- SketchConstraintDistance -->
627 id="SketchConstraintDistance"
629 tooltip="Set fixed distance from a point to an object"
630 icon="icons/Sketch/distance.png">
631 <label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
632 <sketch_shape_selector
633 id="ConstraintEntityA"
635 tooltip="Select point, line end point, line, center of circle or arc."
636 shape_types="edge vertex">
637 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
638 <validator id="PartSet_DifferentObjects"/>
639 <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
640 <validator id="PartSet_DifferentPoints" parameters="ConstraintEntityB"/>
641 </sketch_shape_selector>
642 <sketch_shape_selector
643 id="ConstraintEntityB"
644 label="Second object"
645 tooltip="Select point, line end point, line, center of circle or arc."
646 shape_types="edge vertex">
647 <validator id="PartSet_DifferentObjects"/>
648 <validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
649 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
650 <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
651 <validator id="PartSet_DifferentPoints" parameters="ConstraintEntityA"/>
652 </sketch_shape_selector>
653 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
655 <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
656 <validator id="GeomValidators_Positive"/>
657 </doublevalue_editor>
659 <module_choice id="LocationType"
660 widget_type="radiobuttons"
661 buttons_dir="horizontal"
662 label="Location type"
663 tooltip="Type of location"
664 string_list="Left Automatic Right"
665 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
669 <boolvalue id="SignedDistance" label="Keep orientation" default="true" tooltip="Keep distance orientation" obligatory="0"/>
670 <validator id="PartSet_DistanceSelection"/>
673 <!-- SketchConstraintDistanceHorizontal -->
675 id="SketchConstraintDistanceHorizontal"
676 title="Horizontal Distance"
677 tooltip="Set horizontal distance between two points"
678 icon="icons/Sketch/distance_h.png">
679 <label title="Select points for distance definition."/>
680 <sketch_shape_selector
681 id="ConstraintEntityA"
683 tooltip="Select point."
684 shape_types="vertex">
685 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
686 <validator id="PartSet_DifferentObjects"/>
687 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
688 </sketch_shape_selector>
689 <sketch_shape_selector
690 id="ConstraintEntityB"
692 tooltip="Select point."
693 shape_types="vertex">
694 <validator id="PartSet_DifferentObjects"/>
695 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
696 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
697 </sketch_shape_selector>
698 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
700 <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed"/>
702 <module_choice id="LocationType"
703 widget_type="radiobuttons"
704 buttons_dir="horizontal"
705 label="Location type"
706 tooltip="Type of location"
707 string_list="Left Automatic Right"
708 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
712 <validator id="PartSet_DistanceSelection"/>
715 <!-- SketchConstraintDistanceVertical -->
717 id="SketchConstraintDistanceVertical"
718 title="Vertical Distance"
719 tooltip="Set vertical distance between two points"
720 icon="icons/Sketch/distance_v.png">
721 <label title="Select points for distance definition."/>
722 <sketch_shape_selector
723 id="ConstraintEntityA"
725 tooltip="Select point."
726 shape_types="vertex">
727 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
728 <validator id="PartSet_DifferentObjects"/>
729 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
730 </sketch_shape_selector>
731 <sketch_shape_selector
732 id="ConstraintEntityB"
734 tooltip="Select point."
735 shape_types="vertex">
736 <validator id="PartSet_DifferentObjects"/>
737 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
738 <validator id="GeomValidators_ShapeType" parameters="vertex"/>
739 </sketch_shape_selector>
740 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
742 <doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed"/>
744 <module_choice id="LocationType"
745 widget_type="radiobuttons"
746 buttons_dir="horizontal"
747 label="Location type"
748 tooltip="Type of location"
749 string_list="Left Automatic Right"
750 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
754 <validator id="PartSet_DistanceSelection"/>
757 <!-- SketchConstraintLength -->
758 <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon="icons/Sketch/length.png">
759 <label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
760 <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select a line" shape_types="edge" >
761 <validator id="GeomValidators_ShapeType" parameters="line"/>
763 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
764 <doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
765 <validator id="GeomValidators_Positive"/>
766 </doublevalue_editor>
767 <module_choice id="LocationType"
768 widget_type="radiobuttons"
769 buttons_dir="horizontal"
770 label="Location type"
771 tooltip="Type of location"
772 string_list="Left Automatic Right"
773 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
776 <validator id="PartSet_LengthSelection"/>
779 <!-- SketchConstraintAngle -->
780 <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon="icons/Sketch/angle_constr.png">
781 <sketch_shape_selector id="ConstraintEntityA" label="Line 1" tooltip="Select a line" shape_types="edge" >
782 <validator id="GeomValidators_ShapeType" parameters="line"/>
783 <validator id="PartSet_DifferentObjects"/>
784 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
785 </sketch_shape_selector>
786 <sketch_shape_selector id="ConstraintEntityB" label="Line 2" tooltip="Select a line" shape_types="edge" >
787 <validator id="GeomValidators_ShapeType" parameters="line"/>
788 <validator id="PartSet_DifferentObjects"/>
789 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
790 </sketch_shape_selector>
791 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
792 <doublevalue_editor label="Value" tooltip="Angle" id="AngleValue" default="computed" min="0" max="360" />
793 <validator id="PartSet_AngleSelection"/>
794 <module_choice id="AngleType"
795 widget_type="radiobuttons"
796 buttons_dir="horizontal"
798 tooltip="Type of angle"
799 string_list="Direct Complementary Additional"
800 icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
804 <module_choice id="LocationType"
805 widget_type="radiobuttons"
806 buttons_dir="horizontal"
807 label="Location type"
808 tooltip="Type of location"
809 string_list="Left Automatic Right"
810 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
816 <!-- SketchConstraintRadius -->
817 <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon="icons/Sketch/radius_constr.png">
818 <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"/>
819 <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
821 <validator id="GeomValidators_ShapeType" parameters="circle"/>
823 <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
824 <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
825 <validator id="GeomValidators_Positive"/>
826 </doublevalue_editor>
828 <module_choice id="LocationType"
829 widget_type="radiobuttons"
830 buttons_dir="horizontal"
831 label="Location type"
832 tooltip="Type of location"
833 string_list="Left Automatic Right"
834 icons_list="icons/Sketch/location_left.png icons/Sketch/location_automatic.png icons/Sketch/location_right.png"
838 <validator id="PartSet_RadiusSelection"/>
843 <group id="Geometrical constraints">
845 <!-- SketchConstraintHorizontal -->
846 <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon="icons/Sketch/horisontal.png">
847 <sketch_shape_selector id="ConstraintEntityA"
848 label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
849 <validator id="GeomValidators_ShapeType" parameters="line"/>
850 <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
851 </sketch_shape_selector>
852 <validator id="PartSet_HVDirSelection"/>
855 <!-- SketchConstraintVertical -->
856 <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon="icons/Sketch/vertical.png">
857 <sketch_shape_selector id="ConstraintEntityA"
858 label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
859 <validator id="GeomValidators_ShapeType" parameters="line"/>
860 <validator id="SketchPlugin_HasNoConstraint" parameters="SketchConstraintHorizontal,SketchConstraintVertical"/>
861 </sketch_shape_selector>
862 <validator id="PartSet_HVDirSelection"/>
865 <!-- SketchConstraintRigid -->
866 <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon="icons/Sketch/fixed.png">
867 <sketch_shape_selector id="ConstraintEntityA" label="Object"
868 tooltip="Select point, line end point, line, center of circle or arc."
869 shape_types="edge vertex">
870 <validator id="GeomValidators_ShapeType" parameters="vertex,line,circle"/>
871 <validator id="SketchPlugin_NotFixed"/>
872 </sketch_shape_selector>
873 <validator id="PartSet_RigidSelection"/>
876 <!-- SketchConstraintParallel -->
877 <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines"
878 icon="icons/Sketch/parallel.png">
879 <sketch_shape_selector id="ConstraintEntityA"
880 label="First line" tooltip="Select a line" shape_types="edge">
881 <validator id="GeomValidators_ShapeType" parameters="line"/>
882 <validator id="PartSet_DifferentObjects"/>
883 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
884 </sketch_shape_selector>
886 <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
888 <validator id="GeomValidators_ShapeType" parameters="line"/>
889 <validator id="PartSet_DifferentObjects"/>
890 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
891 </sketch_shape_selector>
892 <validator id="PartSet_ParallelSelection"/>
895 <!-- SketchConstraintPerpendicular -->
896 <feature id="SketchConstraintPerpendicular" title="Perpendicular"
897 tooltip="Create constraint defining two perpendicular lines"
898 icon="icons/Sketch/perpendicular.png">
899 <sketch_shape_selector id="ConstraintEntityA"
900 label="First line" tooltip="Select a line"
902 <validator id="PartSet_DifferentObjects"/>
903 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
904 <validator id="GeomValidators_ShapeType" parameters="line"/>
905 </sketch_shape_selector>
907 <sketch_shape_selector id="ConstraintEntityB"
908 label="Second line" tooltip="Select a line"
910 <validator id="PartSet_DifferentObjects"/>
911 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
912 <validator id="GeomValidators_ShapeType" parameters="line"/>
913 </sketch_shape_selector>
914 <validator id="PartSet_PerpendicularSelection"/>
917 <!-- SketchConstraintTangent -->
918 <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two objects with common coincident point" icon="icons/Sketch/tangent.png">
919 <sketch_shape_selector id="ConstraintEntityA"
920 label="First object" tooltip="Select line or arc" shape_types="edge">
921 <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
922 <validator id="PartSet_DifferentObjects"/>
923 </sketch_shape_selector>
925 <sketch_shape_selector id="ConstraintEntityB"
926 label="Second object" tooltip="Select line or arc" shape_types="edge">
927 <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
928 <validator id="PartSet_DifferentObjects"/>
929 </sketch_shape_selector>
930 <validator id="PartSet_TangentSelection"/>
933 <!-- SketchConstraintCoincidence -->
934 <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">
935 <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
936 <validator id="PartSet_DifferentObjects"/>
937 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
938 </sketch_shape_selector>
939 <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
940 <validator id="PartSet_DifferentObjects"/>
941 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
942 <validator id="SketchPlugin_CoincidenceAttr" parameters="ConstraintEntityA"/>
943 </sketch_shape_selector>
944 <validator id="PartSet_CoincidentSelection"/>
947 <!-- SketchConstraintMiddle -->
948 <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line" icon="icons/Sketch/middlepoint.png">
949 <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
950 <validator id="PartSet_DifferentObjects"/>
951 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
952 <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
953 </sketch_shape_selector>
954 <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
955 <validator id="PartSet_DifferentObjects"/>
956 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
957 <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
958 </sketch_shape_selector>
959 <validator id="PartSet_MiddlePointSelection"/>
962 <!-- SketchConstraintEqual -->
963 <feature id="SketchConstraintEqual" title="Equal"
964 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"
965 icon="icons/Sketch/equal.png">
966 <sketch_shape_selector id="ConstraintEntityA"
967 label="First object" tooltip="Select line, circle or arc" shape_types="edge">
968 <validator id="PartSet_DifferentObjects"/>
969 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
970 </sketch_shape_selector>
972 <sketch_shape_selector id="ConstraintEntityB"
973 label="Second object" tooltip="Select line, circle or arc" shape_types="edge">
974 <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
975 <validator id="PartSet_DifferentObjects"/>
976 <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
977 </sketch_shape_selector>
978 <validator id="PartSet_EqualSelection"/>
981 <!-- SketchConstraintCollinear -->
982 <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines" icon="icons/Sketch/collinear.png">
983 <sketch_shape_selector id="ConstraintEntityA"
984 label="First line" tooltip="Select a line" shape_types="edge">
985 <validator id="GeomValidators_ShapeType" parameters="line"/>
986 <validator id="PartSet_DifferentObjects"/>
987 </sketch_shape_selector>
989 <sketch_shape_selector id="ConstraintEntityB"
990 label="Second line" tooltip="Select a line" shape_types="edge">
991 <validator id="GeomValidators_ShapeType" parameters="line"/>
992 <validator id="PartSet_DifferentObjects"/>
993 </sketch_shape_selector>
994 <validator id="PartSet_CollinearSelection"/>