<plugin>
<workbench id="Sketch">
- <group id="Basic">
+ <group id="Linear geometry">
<feature
id="Sketch"
- nested="SketchPoint SketchLine SketchCircle SketchArc SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintParallel SketchConstraintPerpendicular SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical SketchConstraintEqual SketchConstraintTangent SketchConstraintFillet SketchConstraintCoincidence SketchConstraintMirror"
+ nested="SketchPoint SketchIntersectionPoint SketchLine
+ SketchCircle SketchMacroCircle SketchArc SketchMacroArc
+ SketchRectangle
+ SketchProjection
+ SketchConstraintLength SketchConstraintRadius SketchConstraintDistance
+ SketchConstraintParallel SketchConstraintPerpendicular
+ SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical
+ SketchConstraintEqual SketchConstraintTangent
+ SketchFillet SketchConstraintSplit SketchTrim
+ SketchConstraintCoincidence
+ SketchConstraintMirror SketchConstraintAngle
+ SketchMultiRotation SketchMultiTranslation
+ SketchConstraintCollinear SketchConstraintMiddle"
when_nested="accept abort"
title="Sketch"
tooltip="Create sketch"
- icon=":icons/sketch.png">
+ icon="icons/Sketch/sketch.png">
<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">
<validator id="GeomValidators_Face" parameters="plane"/>
</sketch-start-label>
- <!--icon=":pictures/x_point.png"-->
+ <label id="SolverDOF"/>
+ <label id="SolverError" styleSheet="color : red; font : bold"/>
+ <validator id="SketchPlugin_SolverErrorValidator"/>
</feature>
- <feature id="SketchPoint" title="Point" tooltip="Create point" icon=":icons/point.png">
- <sketch-2dpoint_selector id="PointCoordindates" title="Point" tooltip="Point coordinates"/>
+
+ <!-- SketchPoint -->
+ <feature id="SketchPoint" title="Point" tooltip="Create point" icon="icons/Sketch/point.png">
+ <sketch-2dpoint_selector id="PointCoordindates" accept_expressions="0" title="Point" tooltip="Point coordinates"
+ enable_value="enable_by_preferences"/>
<boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
</feature>
- <feature id="SketchLine" title="Line" tooltip="Create line" icon=":icons/line.png">
- <sketch-2dpoint_selector id="StartPoint" title="Start point" tooltip="Start point coordinates" previous_feature_param="EndPoint"/>
- <sketch-2dpoint_selector id="EndPoint" title="End point" tooltip="End point coordinates"/>
+
+ <!-- SketchLine -->
+ <feature id="SketchLine" title="Line" tooltip="Create line" icon="icons/Sketch/line.png">
+ <sketch-2dpoint_selector id="StartPoint" accept_expressions="0" title="Start point" tooltip="Start point coordinates"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="EndPoint" accept_expressions="0" title="End point" tooltip="End point coordinates"
+ enable_value="enable_by_preferences"/>
+ <labelvalue id="LineLength" accept_expressions="0" label="Length:" default="computed" icon="icons/Sketch/distance_value.png"
+ tooltip="Line length" obligatory="0" enable_value="false"/>
<boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
+ <validator id="GeomValidators_Different" parameters="StartPoint,EndPoint"/>
</feature>
- <feature id="SketchCircle" title="Circle" tooltip="Create circle" icon=":icons/circle.png">
- <sketch-2dpoint_selector id="CircleCenter" title="Center" tooltip="Center coordinates"/>
- <point2ddistance id="CircleRadius" first_point="CircleCenter" label="Radius:" min="0" step="1.0" default="0" icon=":icons/radius.png" tooltip="Set radius">
- <validator id="GeomValidators_Positive"/>
- </point2ddistance>
+ </group>
+ <group id="Circular geometry">
+ <!-- SketchCircle is a hidden feature. It is created inside SketchMacroCircle. -->
+ <feature id="SketchCircle"
+ title="Circle"
+ tooltip="Create circle"
+ icon="icons/Sketch/circle.png"
+ internal="1">
+ <sketch-2dpoint_selector id="circle_center"
+ title="Center"
+ tooltip="Center coordinates"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <labelvalue id="circle_radius"
+ icon="icons/Sketch/radius.png"
+ label="Radius:"
+ tooltip="Set radius"
+ default="computed"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ </labelvalue>
<boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
</feature>
- <feature id="SketchArc" title="Arc" tooltip="Create arc" icon=":icons/arc.png">
- <sketch-2dpoint_selector id="ArcCenter" title="Center" tooltip="Center of a circle"/>
- <sketch-2dpoint_selector id="ArcStartPoint" title="Start point" tooltip="Start point"/>
- <sketch-2dpoint_selector id="ArcEndPoint" title="End point" tooltip="End point"/>
- <boolvalue id="Auxiliary" label="Auxiliary" default="false" tooltip="Construction element" obligatory="0"/>
+ <!-- SketchMacroCircle -->
+ <feature id="SketchMacroCircle"
+ icon="icons/Sketch/circle.png"
+ title="Circle"
+ tooltip="Create circle">
+ <toolbox id="circle_type" modified_in_edit="false">
+ <box id="circle_type_by_center_and_passed_points"
+ icon="icons/Sketch/circle_pt_rad_32x32.png"
+ title="Center and passed points">
+ <sketch-2dpoint_selector id="center_point"
+ reference_attribute="center_point_ref"
+ title="Center point"
+ tooltip="Center point coordinates"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="passed_point"
+ reference_attribute="passed_point_ref"
+ title="Passed point"
+ tooltip="Passed point coordinates"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_CirclePassedPointValidator"/>
+ </sketch-2dpoint_selector>
+ <validator id="GeomValidators_Different" parameters="center_point_ref,passed_point_ref"/>
+ </box>
+ <box id="circle_type_by_three_points"
+ icon="icons/Sketch/circle_3pt_32x32.png"
+ title="Three points">
+ <sketch-2dpoint_selector id="first_point"
+ reference_attribute="first_point_ref"
+ title="First point"
+ tooltip="First point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="second_point"
+ reference_attribute="second_point_ref"
+ title="Second point"
+ tooltip="Second point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref"/>
+ </sketch-2dpoint_selector>
+ <sketch-2dpoint_selector id="third_point"
+ reference_attribute="third_point_ref"
+ title="Third point"
+ tooltip="Third point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_DifferentReference" parameters="first_point_ref,second_point_ref,third_point_ref"/>
+ <validator id="SketchPlugin_ThirdPointValidator" parameters="third_point_ref"/>
+ </sketch-2dpoint_selector>
+ <validator id="GeomValidators_Different" parameters="first_point_ref,second_point_ref,third_point_ref"/>
+ </box>
+ </toolbox>
+ <labelvalue id="circle_radius"
+ icon="icons/Sketch/radius.png"
+ label="Radius:"
+ tooltip="Set radius"
+ default="computed"
+ accept_expressions="0"
+ obligatory="0"
+ enable_value="enable_by_preferences">
+ <validator id="GeomValidators_Positive"/>
+ </labelvalue>
+ <boolvalue id="Auxiliary"
+ tooltip="Construction element"
+ label="Auxiliary"
+ default="false"
+ obligatory="0"/>
+ </feature>
+
+ <!-- SketchArc -->
+ <feature id="SketchArc"
+ icon="icons/Sketch/arc.png"
+ title="Arc"
+ tooltip="Create arc"
+ internal="1">
+ <sketch-2dpoint_selector id="center_point"
+ title="Center"
+ tooltip="Center of a circle"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="start_point"
+ title="Start point"
+ tooltip="Start point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="end_point"
+ title="End point"
+ tooltip="End point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <validator id="GeomValidators_Different" parameters="center_point,start_point,end_point"/>
+ <labelvalue id="radius"
+ icon="icons/Sketch/radius.png"
+ label="Radius:"
+ tooltip="Set radius"
+ accept_expressions="0"
+ min="0"
+ default="0"
+ obligatory="0"
+ enable_value="enable_by_preferences">
+ </labelvalue>
+ <labelvalue id="angle"
+ icon="icons/Sketch/angle.png"
+ label="Angle:"
+ tooltip="Set angle"
+ default="0"
+ use_reset="false"
+ obligatory="0"
+ enable_value="enable_by_preferences"/>
+ <boolvalue id="Auxiliary"
+ label="Auxiliary"
+ tooltip="Construction element"
+ default="false"
+ obligatory="0"/>
+ </feature>
+
+ <!-- SketchMacroArc -->
+ <feature
+ id="SketchMacroArc"
+ title="Arc"
+ tooltip="Create arc"
+ icon="icons/Sketch/arc.png">
+ <toolbox id="arc_type" modified_in_edit="false">
+ <box id="by_center_and_points"
+ icon="icons/Sketch/arc_base_32x32.png"
+ title="Center and two points">
+ <sketch-2dpoint_selector id="center_point"
+ reference_attribute="center_point_ref"
+ title="Center point"
+ tooltip="Center of a circle"
+ accept_expressions="0"
+ enable_value="enable_by_preferences" />
+ <sketch-2dpoint_selector id="start_point_1"
+ reference_attribute="start_point_ref"
+ title="Start point"
+ tooltip="Start point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="end_point_1"
+ reference_attribute="end_point_ref"
+ title="End point"
+ tooltip="End point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
+ <validator id="SketchPlugin_ArcEndPointIntersectionValidator" parameters="end_point_ref"/>
+ </sketch-2dpoint_selector>
+ <validator id="GeomValidators_Different" parameters="center_point,start_point_1,end_point_1"/>
+ </box>
+ <box id="by_three_points"
+ icon="icons/Sketch/arc_3pt_32x32.png"
+ title="Three points on arc">
+ <sketch-2dpoint_selector id="start_point_2"
+ reference_attribute="start_point_ref"
+ title="Start point"
+ tooltip="Start point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences"/>
+ <sketch-2dpoint_selector id="end_point_2"
+ reference_attribute="end_point_ref"
+ title="End point"
+ tooltip="End point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_DifferentReference" parameters="start_point_ref,end_point_ref"/>
+ <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
+ </sketch-2dpoint_selector>
+ <sketch-2dpoint_selector id="passed_point"
+ reference_attribute="passed_point_ref"
+ title="Passed point"
+ tooltip="Passed point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_DifferentReference" parameters="start_point_ref,end_point_ref,passed_point_ref"/>
+ <validator id="SketchPlugin_ThirdPointValidator" parameters="passed_point_ref"/>
+ </sketch-2dpoint_selector>
+ <validator id="GeomValidators_Different" parameters="start_point_2,end_point_2,passed_point"/>
+ </box>
+ <box id="by_tangent_edge"
+ icon="icons/Sketch/arc_tang_32x32.png"
+ title="Tangent with edge">
+ <sketch_shape_selector id="tangent_point"
+ label="Tangent point"
+ tooltip="Select point on line"
+ shape_types="vertex">
+ <validator id="SketchPlugin_ArcTangentPoint"/>
+ </sketch_shape_selector>
+ <sketch-2dpoint_selector id="end_point_3"
+ reference_attribute="end_point_ref"
+ title="End point"
+ tooltip="End point"
+ accept_expressions="0"
+ enable_value="enable_by_preferences">
+ <validator id="SketchPlugin_ArcEndPointValidator" parameters="end_point_ref"/>
+ </sketch-2dpoint_selector>
+ </box>
+ </toolbox>
+ <labelvalue id="radius"
+ icon="icons/Sketch/radius.png"
+ label="Radius:"
+ tooltip="Set radius"
+ accept_expressions="0"
+ min="0"
+ default="0"
+ obligatory="0"
+ enable_value="enable_by_preferences">
+ </labelvalue>
+ <labelvalue id="angle"
+ icon="icons/Sketch/angle.png"
+ label="Angle:"
+ tooltip="Set angle"
+ default="0"
+ use_reset="false"
+ obligatory="0"
+ enable_value="enable_by_preferences"/>
+ <boolvalue id="Auxiliary"
+ label="Auxiliary"
+ tooltip="Construction element"
+ default="false"
+ obligatory="0"/>
+ </feature>
+
+ <!-- SketchFillet -->
+ <feature id="SketchFillet"
+ title="Fillet"
+ tooltip="Create constraint defining fillet between two objects"
+ icon="icons/Sketch/fillet.png">
+ <sketch_shape_selector id="fillet_point"
+ label="Point"
+ tooltip="Select point for fillet (should be shared by two entities only)"
+ shape_types="vertex">
+ <validator id="SketchPlugin_FilletVertexValidator"/>
+ </sketch_shape_selector>
+ <!--<validator id="PartSet_FilletSelection"/>-->
+ </feature>
+ <!-- SketchConstraintSplit -->
+ <feature id="SketchConstraintSplit" title="Split"
+ tooltip="Cut selected segment arc or circle on existing coincident points"
+ icon="icons/Sketch/split.png">
+ <sketch_sub_shape_selector
+ id="ConstraintValue"
+ label="Split feature"
+ tooltip="Select feature for split"
+ shape_types="edge"
+ use_external="false"
+ use_graphic_intersection="false">
+ <validator id="SketchPlugin_SplitValidator"/>
+ </sketch_sub_shape_selector>
+ <validator id="PartSet_SplitSelection"/>
+ </feature>
+ <!-- SketchTrim -->
+ <feature id="SketchTrim" title="Trim"
+ tooltip="Trim selected segment arc or circle on intersection points nearest to the graphic selection"
+ icon="icons/Sketch/trim.png">
+ <sketch_feature_point_selector
+ id="SelectedObject"
+ label="Split feature"
+ tooltip="Select feature for split"
+ shape_types="edge"
+ use_external="false"
+ use_graphic_intersection="true">
+ <validator id="SketchPlugin_TrimValidator"/>
+ </sketch_feature_point_selector>
+ <validator id="PartSet_SplitSelection"/>
+ </feature>
+ </group>
+
+ <group id="Projection">
+ <!-- Intersection Point -->
+ <!-- feature
+ id="SketchIntersectionPoint"
+ title="Intersection Point"
+ tooltip="Create intersection point"
+ icon="icons/Sketch/intersection_point.png">
+ <sketch_shape_selector
+ id="ExternalLine"
+ label="Edge"
+ tooltip="Select external line."
+ shape_types="edge"
+ use_external="false"
+ use_sketch_plane="false">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ <validator id="SketchPlugin_IntersectionValidator"/>
+ </sketch_shape_selector>
+ </feature -->
+
+ <!-- Projected feature -->
+ <feature
+ id="SketchProjection"
+ title="Projection"
+ tooltip="Project feature onto sketch plane"
+ icon="icons/Sketch/projection.png">
+ <sketch_shape_selector
+ id="ExternalFeature"
+ label="Edge"
+ tooltip="Select external edge."
+ shape_types="edge"
+ use_external="true"
+ can_create_external="false"
+ use_sketch_plane="false">
+ <validator id="SketchPlugin_ProjectionValidator"/>
+ </sketch_shape_selector>
+ <validator id="PartSet_ProjectionSelection"/>
</feature>
</group>
-
- <group id="Constraints">
+
+ <group id="Replication">
+ <!-- SketchConstraintMirror -->
+ <feature
+ id="SketchConstraintMirror"
+ title="Mirror" icon="icons/Sketch/mirror.png"
+ tooltip="Create constraint, mirroring group of objects">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="Mirror line" tooltip="Select mirror line" shape_types="edge">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ </sketch_shape_selector>
+ <sketch_multi_selector id="ConstraintMirrorList"
+ label="Segments:"
+ tooltip="Select list of objects to be mirrored"
+ type_choice="Edges"
+ use_external="true"
+ greed ="true">
+ <validator id="SketchPlugin_MirrorAttr" />
+ </sketch_multi_selector>
+ <validator id="PartSet_MultyTranslationSelection" />
+ </feature>
+
+ <!-- SketchMultiTranslation -->
+ <feature
+ id="SketchMultiTranslation"
+ title="Translation" icon="icons/Sketch/translate.png"
+ tooltip="Multiple translation">
+ <sketch_multi_selector id="MultiTranslationList"
+ label="Segments:"
+ tooltip="Select list of objects to be translated"
+ type_choice="Edges"
+ use_external="true"
+ greed ="true">
+ <validator id="SketchPlugin_CopyValidator" />
+ </sketch_multi_selector>
+ <toolbox id="ValueType">
+ <box id="SingleValue" title="Single value" icon="icons/Sketch/translate_32x32.png">
+ <groupbox title="Direction">
+ <sketch_shape_selector
+ id="MultiTranslationStartPoint"
+ label="Start point"
+ tooltip="Start point of translation"
+ shape_types="vertex">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="GeomValidators_ShapeType" parameters="vertex"/>
+ </sketch_shape_selector>
+ <sketch_shape_selector
+ id="MultiTranslationEndPoint"
+ label="End point"
+ tooltip="Final point of translation"
+ shape_types="vertex">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="GeomValidators_ShapeType" parameters="vertex"/>
+ </sketch_shape_selector>
+ </groupbox>
+ </box>
+ <box id="FullValue" title="Full value" icon="icons/Sketch/translate_full_32x32.png">
+ <groupbox title="Direction">
+ <sketch_shape_selector
+ id="MultiTranslationStartPoint"
+ label="Start point"
+ tooltip="Start point of translation"
+ shape_types="vertex">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="GeomValidators_ShapeType" parameters="vertex"/>
+ </sketch_shape_selector>
+ <sketch_shape_selector
+ id="MultiTranslationEndPoint"
+ label="End point"
+ tooltip="Final point of translation"
+ shape_types="vertex">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="GeomValidators_ShapeType" parameters="vertex"/>
+ </sketch_shape_selector>
+ </groupbox>
+ </box>
+ </toolbox>
+ <integervalue id="MultiTranslationObjects"
+ label="Total number of objects"
+ tooltip="Total number of objects"
+ default="2" min="2" use_reset="false">
+ <validator id="GeomValidators_Positive"/>
+ </integervalue>
+ <validator id="PartSet_MultyTranslationSelection" />
+ </feature>
+
+ <!-- SketchMultiRotation -->
+ <feature
+ id="SketchMultiRotation"
+ title="Rotation" icon="icons/Sketch/rotate.png"
+ tooltip="Multiple rotation">
+ <sketch_multi_selector id="MultiRotationList"
+ label="Segments:"
+ tooltip="Select list of objects to be rotated"
+ type_choice="Edges"
+ use_external="true"
+ greed ="true">
+ <validator id="SketchPlugin_CopyValidator" />
+ </sketch_multi_selector>
+ <sketch_shape_selector
+ id="MultiRotationCenter"
+ label="Center of rotation"
+ tooltip="Center of rotation"
+ shape_types="vertex">
+ <validator id="GeomValidators_ShapeType" parameters="vertex"/>
+ </sketch_shape_selector>
+ <toolbox id="AngleType">
+ <box id="SingleAngle" title="Single angle" icon="icons/Sketch/angle_up_32x32.png">
+ <doublevalue id="MultiRotationAngle"
+ label="Angle"
+ icon="icons/Sketch/angle.png"
+ tooltip="Rotation angle"
+ default="90" use_reset="false"/>
+ </box>
+ <box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
+ <doublevalue id="MultiRotationAngle"
+ label="Angle"
+ icon="icons/Sketch/angle.png"
+ tooltip="Rotation angle"
+ default="90" use_reset="false"/>
+ </box>
+ </toolbox>
+ <integervalue id="MultiRotationObjects"
+ label="Total number of objects"
+ tooltip="Total number of objects"
+ default="2" min="2" use_reset="false">
+ <validator id="GeomValidators_Positive"/>
+ </integervalue>
+ <validator id="PartSet_MultyTranslationSelection" />
+ </feature>
+ </group>
+
+ <group id="Dimensional constraints">
<!-- SketchConstraintDistance -->
<feature
id="SketchConstraintDistance"
title="Distance"
tooltip="Set fixed distance from a point to an object"
- icon=":icons/distance.png">
+ icon="icons/Sketch/distance.png">
<label title="Select objects for distance definition. Following objects can be accepted: point, line or arc end point, center of circle or arc."/>
<sketch_shape_selector
id="ConstraintEntityA"
shape_types="edge vertex">
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
<validator id="PartSet_DifferentObjects"/>
- <validator id="GeomValidators_EdgeOrVertex"/>
- </sketch_shape_selector>/>
- <sketch_shape_selector
- id="ConstraintEntityB"
- label="Second object"
- tooltip="Select point, line end point, line, center of circle or arc."
+ <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
+ </sketch_shape_selector>
+ <sketch_shape_selector
+ id="ConstraintEntityB"
+ label="Second object"
+ tooltip="Select point, line end point, line, center of circle or arc."
shape_types="edge vertex">
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_DistanceAttr" parameters="ConstraintEntityA"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
- <validator id="GeomValidators_EdgeOrVertex"/>
+ <validator id="GeomValidators_ShapeType" parameters="vertex,line"/>
</sketch_shape_selector>
- <sketch-2dpoint_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
-
+ <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
+
<doublevalue_editor label="Value" tooltip="Distance" id="ConstraintValue" default="computed" min="0">
<validator id="GeomValidators_Positive"/>
</doublevalue_editor>
-
+
<validator id="PartSet_DistanceSelection"/>
</feature>
-
- <!-- SketchConstraintLength -->
- <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon=":icons/length.png">
+
+ <!-- SketchConstraintLength -->
+ <feature id="SketchConstraintLength" title="Length" tooltip="Set fixed length of a line segment" icon="icons/Sketch/length.png">
<label title="Select a line on which to calculate length" tooltip="Select a line on which to calculate length"/>
- <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select an line"
- shape_types="edge" >
- <validator id="GeomValidators_Edge" parameters="line"/>
- </shape_selector>
- <sketch-2dpoint_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
+ <shape_selector id="ConstraintEntityA" label="Line" tooltip="Select a line" shape_types="edge" >
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ </shape_selector>
+ <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
<doublevalue_editor label="Value" tooltip="Length" id="ConstraintValue" default="computed">
<validator id="GeomValidators_Positive"/>
</doublevalue_editor>
<validator id="PartSet_LengthSelection"/>
</feature>
-
- <!-- SketchConstraintRadius -->
- <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon=":icons/radius_constr.png">
+
+ <!-- SketchConstraintAngle -->
+ <feature id="SketchConstraintAngle" title="Angle" tooltip="Set fixed angle between two line segments" icon="icons/Sketch/angle_constr.png">
+ <sketch_shape_selector id="ConstraintEntityA" label="Line 1" tooltip="Select a line" shape_types="edge" >
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
+ </sketch_shape_selector>
+ <sketch_shape_selector id="ConstraintEntityB" label="Line 2" tooltip="Select a line" shape_types="edge" >
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
+ </sketch_shape_selector>
+ <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
+ <doublevalue_editor label="Value" tooltip="Angle" id="AngleValue" default="computed" min="0" max="360" />
+ <validator id="PartSet_AngleSelection"/>
+ <module_choice id="AngleType"
+ widget_type="radiobuttons"
+ buttons_dir="horizontal"
+ label="Angle type"
+ tooltip="Type of angle"
+ string_list="Direct Complementary Additional"
+ icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
+ default="0"
+ />
+ </feature>
+
+ <!-- SketchConstraintRadius -->
+ <feature id="SketchConstraintRadius" title="Radius" tooltip="Set fixed radius of a circle or an arc" icon="icons/Sketch/radius_constr.png">
<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"/>
- <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
+ <shape_selector id="ConstraintEntityA" label="Circle or Arc" tooltip="Select a circle or an arc"
shape_types="edge">
- <validator id="GeomValidators_Edge" parameters="circle"/>
+ <validator id="GeomValidators_ShapeType" parameters="circle"/>
</shape_selector>
- <sketch-2dpoint_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
- <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed"/>
+ <sketch-2dpoint_flyout_selector id="ConstraintFlyoutValuePnt" default="computed" internal="1" obligatory="0"/>
+ <doublevalue_editor label="Value" tooltip="Radius" id="ConstraintValue" default="computed">
+ <validator id="GeomValidators_Positive"/>
+ </doublevalue_editor>
<validator id="PartSet_RadiusSelection"/>
</feature>
-
- <!-- SketchConstraintParallel -->
- <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines" icon=":icons/parallel.png">
- <sketch_shape_selector id="ConstraintEntityA"
+
+ </group>
+
+ <group id="Geometrical constraints">
+
+ <!-- SketchConstraintHorizontal -->
+ <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon="icons/Sketch/horisontal.png">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ </sketch_shape_selector>
+ <validator id="PartSet_HVDirSelection"/>
+ </feature>
+
+ <!-- SketchConstraintVertical -->
+ <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon="icons/Sketch/vertical.png">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ </sketch_shape_selector>
+ <validator id="PartSet_HVDirSelection"/>
+ </feature>
+
+ <!-- SketchConstraintRigid -->
+ <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon="icons/Sketch/fixed.png">
+ <sketch_shape_selector id="ConstraintEntityA" label="Object"
+ tooltip="Select point, line end point, line, center of circle or arc."
+ shape_types="edge vertex">
+ <validator id="GeomValidators_ShapeType" parameters="vertex,line,circle"/>
+ <validator id="SketchPlugin_NotFixed"/>
+ </sketch_shape_selector>
+ <validator id="PartSet_RigidSelection"/>
+ </feature>
+
+ <!-- SketchConstraintParallel -->
+ <feature id="SketchConstraintParallel" title="Parallel" tooltip="Create constraint defining two parallel lines"
+ icon="icons/Sketch/parallel.png">
+ <sketch_shape_selector id="ConstraintEntityA"
label="First line" tooltip="Select a line" shape_types="edge">
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
</sketch_shape_selector>
-
- <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
+
+ <sketch_shape_selector id="ConstraintEntityB" label="Second line" tooltip="Select a line"
shape_types="edge">
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
</sketch_shape_selector>
<validator id="PartSet_ParallelSelection"/>
</feature>
-
+
<!-- SketchConstraintPerpendicular -->
- <feature id="SketchConstraintPerpendicular" title="Perpendicular"
- tooltip="Create constraint defining two perpendicular lines"
- icon=":icons/perpendicular.png">
- <sketch_shape_selector id="ConstraintEntityA"
- label="First line" tooltip="Select an line"
+ <feature id="SketchConstraintPerpendicular" title="Perpendicular"
+ tooltip="Create constraint defining two perpendicular lines"
+ icon="icons/Sketch/perpendicular.png">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="First line" tooltip="Select a line"
shape_types="edge">
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
</sketch_shape_selector>
-
- <sketch_shape_selector id="ConstraintEntityB"
- label="Second line" tooltip="Select an line"
+
+ <sketch_shape_selector id="ConstraintEntityB"
+ label="Second line" tooltip="Select a line"
shape_types="edge">
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
</sketch_shape_selector>
<validator id="PartSet_PerpendicularSelection"/>
</feature>
- <!-- SketchConstraintCoincedence -->
- <feature id="SketchConstraintCoincidence" title="Coincident" tooltip="Create constraint for the coincidence of two points or point on line or circle" icon=":icons/coincedence.png">
+ <!-- SketchConstraintTangent -->
+ <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two objects with common coincident point" icon="icons/Sketch/tangent.png">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="First object" tooltip="Select line or arc" shape_types="edge">
+ <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityB"/>
+ <validator id="PartSet_DifferentObjects"/>
+ </sketch_shape_selector>
+
+ <sketch_shape_selector id="ConstraintEntityB"
+ label="Second object" tooltip="Select line or arc" shape_types="edge">
+ <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
+ <validator id="PartSet_DifferentObjects"/>
+ </sketch_shape_selector>
+ <validator id="PartSet_TangentSelection"/>
+ </feature>
+
+ <!-- SketchConstraintCoincidence -->
+ <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">
<sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
<validator id="PartSet_CoincidentSelection"/>
</feature>
- <!-- SketchConstraintRigid -->
- <feature id="SketchConstraintRigid" title="Fixed" tooltip="Fix an object" icon=":icons/fixed.png">
- <shape_selector id="ConstraintEntityA" label="Object" tooltip="Select an object"
- shape_types="edge vertex">
- <validator id="PartSet_SketchEntityValidator" parameters="SketchPoint,SketchLine,SketchCircle,SketchArc"/>
- <validator id="SketchPlugin_NotFixed"/>
- </shape_selector>
- <validator id="PartSet_RigidSelection"/>
- </feature>
-
- <!-- SketchConstraintHorizontal -->
- <feature id="SketchConstraintHorizontal" title="Horizontal" tooltip="Create constraint defining horizontal line" icon=":icons/horisontal.png">
- <sketch_shape_selector id="ConstraintEntityA"
- label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <!-- SketchConstraintMiddle -->
+ <feature id="SketchConstraintMiddle" title="Middle point" tooltip="Create constraint for setting middle point on a line" icon="icons/Sketch/middlepoint.png">
+ <sketch_shape_selector id="ConstraintEntityA" label="First object" tooltip="Select a first object" shape_types="vertex edge">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityB"/>
</sketch_shape_selector>
- <validator id="PartSet_HVDirSelection"/>
- </feature>
-
- <!-- SketchConstraintVertical -->
- <feature id="SketchConstraintVertical" title="Vertical" tooltip="Create constraint defining vertical line" icon=":icons/vertical.png">
- <sketch_shape_selector id="ConstraintEntityA"
- label="Line" tooltip="Select a line" shape_types="edge" use_external="false">
- <validator id="GeomValidators_Edge" parameters="line"/>
+ <sketch_shape_selector id="ConstraintEntityB" label="Second object" tooltip="Select a second object" shape_types="vertex edge">
+ <validator id="PartSet_DifferentObjects"/>
+ <validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
+ <validator id="SketchPlugin_MiddlePointAttr" parameters="ConstraintEntityA"/>
</sketch_shape_selector>
- <validator id="PartSet_HVDirSelection"/>
+ <validator id="PartSet_MiddlePointSelection"/>
</feature>
-
- <!-- SketchConstraintEqual -->
+
+ <!-- SketchConstraintEqual -->
<feature id="SketchConstraintEqual" title="Equal"
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"
- icon=":icons/equal.png">
- <sketch_shape_selector id="ConstraintEntityA"
+ icon="icons/Sketch/equal.png">
+ <sketch_shape_selector id="ConstraintEntityA"
label="First object" tooltip="Select line, circle or arc" shape_types="edge">
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
</sketch_shape_selector>
-
+
<sketch_shape_selector id="ConstraintEntityB"
label="Second object" tooltip="Select line, circle or arc" shape_types="edge">
<validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityA"/>
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityA"/>
</sketch_shape_selector>
+ <validator id="PartSet_EqualSelection"/>
</feature>
-
- <!-- SketchConstraintTangent -->
- <feature id="SketchConstraintTangent" title="Tangent" tooltip="Create constraint defining tangency of two objects" icon=":icons/tangent.png">
- <sketch_shape_selector id="ConstraintEntityA"
- label="First object" tooltip="Select line or arc" shape_types="edge">
- <validator id="PartSet_DifferentObjects"/>
- </sketch_shape_selector>
-
- <sketch_shape_selector id="ConstraintEntityB"
- label="Second object" tooltip="Select line or arc" shape_types="edge">
- <validator id="SketchPlugin_TangentAttr" parameters="ConstraintEntityA"/>
- <validator id="PartSet_DifferentObjects"/>
- </sketch_shape_selector>
- <validator id="PartSet_TangentSelection"/>
- </feature>
-
-
- </group>
-
- <group id="Edit">
- <!-- SketchConstraintFillet -->
- <feature id="SketchConstraintFillet" title="Fillet" tooltip="Create constraint defining fillet between two objects" icon=":icons/fillet.png">
- <sketch_shape_selector id="ConstraintEntityA"
- label="First object" tooltip="Select line or arc" shape_types="edge">
+
+ <!-- SketchConstraintCollinear -->
+ <feature id="SketchConstraintCollinear" title="Collinear" tooltip="Create constraint defining collinearity of two lines" icon="icons/Sketch/collinear.png">
+ <sketch_shape_selector id="ConstraintEntityA"
+ label="First line" tooltip="Select a line" shape_types="edge">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
<validator id="PartSet_DifferentObjects"/>
</sketch_shape_selector>
<sketch_shape_selector id="ConstraintEntityB"
- label="Second object" tooltip="Select line or arc" shape_types="edge">
+ label="Second line" tooltip="Select a line" shape_types="edge">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
<validator id="PartSet_DifferentObjects"/>
</sketch_shape_selector>
-
- <doublevalue label="Value" tooltip="Fillet radius" id="ConstraintValue" min="0">
- <validator id="GeomValidators_Positive"/>
- </doublevalue>
- <validator id="PartSet_FilletSelection"/>
- </feature>
-
- <!-- SketchConstraintMirror -->
- <feature
- id="SketchConstraintMirror"
- title="Mirror" icon=":icons/mirror.png"
- tooltip="Create constraint, mirroring group of objects">
- <sketch_shape_selector id="ConstraintEntityA"
- label="Mirror line" tooltip="Select mirror line" shape_types="edge">
- <validator id="GeomValidators_Edge" parameters="line"/>
- </sketch_shape_selector>
- <sketch_multi_selector id="ConstraintMirrorList"
- label="List of objects"
- tooltip="Select list of mirroring objects"
- type_choice="Edges"
- use_external="true">
- <validator id="SketchPlugin_MirrorAttr" />
- </sketch_multi_selector>
+ <validator id="PartSet_CollinearSelection"/>
</feature>
+
</group>
+
</workbench>
</plugin>