nested="SketchPoint SketchIntersectionPoint SketchLine
SketchCircle SketchMacroCircle SketchArc SketchMacroArc
SketchEllipse SketchMacroEllipse SketchEllipticArc SketchMacroEllipticArc
- SketchBSpline SketchMacroBSpline SketchMacroBSplinePeriodic
+ SketchBSpline SketchMacroBSpline SketchMacroBSplinePeriodic SketchBSplinePeriodic
SketchRectangle
SketchProjection
+ SketchCurveFitting
SketchConstraintLength SketchConstraintRadius SketchConstraintDistance SketchConstraintDistanceHorizontal SketchConstraintDistanceVertical
SketchConstraintParallel SketchConstraintPerpendicular
SketchConstraintRigid SketchConstraintHorizontal SketchConstraintVertical
SketchConstraintCoincidence SketchConstraintCoincidenceInternal
SketchConstraintMirror SketchConstraintAngle
SketchMultiRotation SketchMultiTranslation
+ SketchOffset
SketchConstraintCollinear SketchConstraintMiddle"
when_nested="accept abort"
title="Sketch"
tooltip="Passed point coordinates"
accept_expressions="0"
enable_value="enable_by_preferences"/>
+ <validator id="GeomValidators_Different" parameters="first_point,second_point,passed_point"/>
+ <validator id="SketchPlugin_DifferentPointReference" parameters="first_point_ref,second_point_ref"/>
</box>
<box id="by_major_axis_and_point"
icon="icons/Sketch/ellipse_axes_32x32.png"
tooltip="Passed point coordinates"
accept_expressions="0"
enable_value="enable_by_preferences"/>
+ <validator id="GeomValidators_Different" parameters="first_point_1,second_point_1,passed_point_1"/>
+ <validator id="SketchPlugin_DifferentPointReference" parameters="first_point_ref_1,second_point_ref_1"/>
</box>
</toolbox>
<labelvalue id="major_radius"
default="false"
obligatory="0"
change_visual_attributes="true"/>
+ <validator id="GeomValidators_Different" parameters="center,major_axis_point"/>
+ <validator id="SketchPlugin_DifferentPointReference" parameters="center_ref,major_axis_point_ref"/>
+ <validator id="GeomValidators_Different" parameters="start_point,end_point"/>
+ <validator id="SketchPlugin_DifferentPointReference" parameters="start_point_ref,end_point_ref"/>
</feature>
</group>
<sketch-bspline_selector id="poles"
weights="weights"
reference_attribute="poles_ref"
- title="Poles and weights"
- tooltip="B-spline poles and weights"
+ title="Poles"
+ tooltip="B-spline poles"
enable_value="enable_by_preferences">
<validator id="SketchPlugin_BSplineValidator"/>
</sketch-bspline_selector>
<sketch-bspline_selector id="poles"
weights="weights"
reference_attribute="poles_ref"
- title="Poles and weights"
- tooltip="B-spline poles and weights"
+ title="Poles"
+ tooltip="B-spline poles"
enable_value="enable_by_preferences">
<validator id="SketchPlugin_BSplineValidator"/>
</sketch-bspline_selector>
obligatory="0"
change_visual_attributes="true"/>
</feature>
+
+ <!-- Curve fitting -->
+ <feature id="SketchCurveFitting"
+ title="Curve fitting"
+ tooltip="Create curve passing through the points"
+ icon="icons/Sketch/curvefitting.png"
+ helpfile="curveFittingFeature.html">
+ <sketch_multi_selector id="points"
+ label="Points"
+ tooltip="Select points for curve fitting"
+ shape_types="Vertices"
+ use_external="true"
+ greed="true">
+ </sketch_multi_selector>
+ <switch id="type">
+ <case id="interpolation_type" title="Interpolation"/>
+ <case id="approximation_type" title="Approximation">
+ <doublevalue id="precision"
+ label="Precision"
+ tooltip="Maximal distance from selected points to the curve"
+ default="0.001"
+ min="1.e-7"
+ use_reset="false">
+ <validator id="GeomValidators_Positive" parameters="0"/>
+ </doublevalue>
+ </case>
+ </switch>
+ <boolvalue id="need_control_poly"
+ label="Create control polygon"
+ default="true"
+ tooltip="Specify if the control polygon should be created"/>
+ <optionalbox id="periodic"
+ title="Periodic"
+ tooltip="Make curve periodic"
+ default="false"
+ has_frame="false"
+ enable_on_check="false"
+ show_title="true">
+ <boolvalue id="closed"
+ label="Closed"
+ default="false"
+ tooltip="Make curve closed, but not periodic"
+ obligatory="1"/>
+ </optionalbox>
+ <boolvalue id="Auxiliary"
+ label="Auxiliary"
+ default="false"
+ tooltip="Construction element"
+ obligatory="0"
+ change_visual_attributes="true"/>
+ <validator id="SketchPlugin_CurveFittingValidator"/>
+ <action id="reorder_points"
+ label="Reorder points"
+ tooltip="Sort selected points to minimize the distance heighbors"/>
+ </feature>
</group>
<group id="Segmentation">
use_sketch_plane="false">
<validator id="SketchPlugin_ProjectionValidator"/>
</sketch_shape_selector>
- <boolvalue id="IncludeToResult" label="Include into the sketch result" default="true" tooltip="Include projected feature into the sketch result"
- change_visual_attributes="true"/>
+ <radiobox id="keep_reference"
+ align_subs="vertical">
+ <radio id="true"
+ title="Keep reference to the original shape"
+ tooltip="The reference to the original curve is stored. So it can be changed later.">
+ <boolvalue id="IncludeToResult"
+ label="Include into the sketch result"
+ default="true"
+ tooltip="Include projected feature into the sketch result"
+ change_visual_attributes="true"/>
+ </radio>
+ <radio id="false"
+ title="Break connection with the original shape"
+ tooltip="A sketch entity will be created without connection to the selected shape.">
+ <boolvalue id="make_fixed"
+ label="Make projected curve fixed"
+ default="true"
+ tooltip="Assign the Fixed constraint to the result of projection"/>
+ </radio>
+ </radiobox>
<validator id="PartSet_ProjectionSelection"/>
</feature>
<sketch_shape_selector id="ConstraintEntityA"
label="Mirror line" tooltip="Select mirror line" shape_types="edge">
<validator id="GeomValidators_ShapeType" parameters="line"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityC"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityC,ConstraintEntityB"/>
</sketch_shape_selector>
<sketch_multi_selector id="ConstraintMirrorList"
label="Segments"
shape_types="vertex">
<validator id="PartSet_DifferentObjects"/>
<validator id="GeomValidators_ShapeType" parameters="vertex"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB,ConstraintEntityA"/>
</sketch_shape_selector>
<sketch_shape_selector
id="MultiTranslationEndPoint"
shape_types="vertex">
<validator id="PartSet_DifferentObjects"/>
<validator id="GeomValidators_ShapeType" parameters="vertex"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB,ConstraintEntityA"/>
</sketch_shape_selector>
</groupbox>
</box>
shape_types="vertex">
<validator id="PartSet_DifferentObjects"/>
<validator id="GeomValidators_ShapeType" parameters="vertex"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB,ConstraintEntityA"/>
</sketch_shape_selector>
<sketch_shape_selector
id="MultiTranslationEndPoint"
shape_types="vertex">
<validator id="PartSet_DifferentObjects"/>
<validator id="GeomValidators_ShapeType" parameters="vertex"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB,ConstraintEntityA"/>
</sketch_shape_selector>
</groupbox>
</box>
tooltip="Center of rotation"
shape_types="vertex">
<validator id="GeomValidators_ShapeType" parameters="vertex"/>
- <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB"/>
+ <validator id="SketchPlugin_ReplicationReference" parameters="ConstraintEntityB,ConstraintEntityA"/>
</sketch_shape_selector>
<toolbox id="AngleType">
<box id="FullAngle" title="Full angle" icon="icons/Sketch/angle_up_full_32x32.png">
</integervalue>
<validator id="PartSet_MultyTranslationSelection" />
</feature>
+
+ <!-- Offset curve -->
+ <feature id="SketchOffset"
+ title="Offset"
+ tooltip="Offset a curve to a distance"
+ icon="icons/Sketch/offset.png"
+ helpfile="offsetFeature.html">
+ <sketch_multi_selector id="segments"
+ label="Edges"
+ tooltip="Select edges to offset"
+ shape_types="Edges"
+ use_external="true"
+ greed="true">
+ <validator id="SketchPlugin_CopyValidator" />
+ </sketch_multi_selector>
+ <doublevalue id="offset_value"
+ label="Offset value"
+ tooltip="Offset value"
+ default="1" min="0.000001"
+ use_reset="false">
+ <validator id="GeomValidators_Positive" parameters="1e-07"/>
+ </doublevalue>
+ <boolvalue id="reversed"
+ label="Reversed"
+ tooltip="Reverse the offset"
+ default="false"
+ obligatory="0"/>
+ <action id="add_wire"
+ label="Select wire"
+ tooltip="Add the list of segments composing a wire with the selected items through the coincidence by boundary points"/>
+ </feature>
</group>
<group id="Dimensional constraints">
buttons_dir="horizontal"
label="Angle type"
tooltip="Type of angle"
- string_list="Direct Complementary Additional"
+ string_list="Direct Supplementary Additional"
icons_list="icons/Sketch/angle_direct.png icons/Sketch/angle_complementary.png icons/Sketch/angle_backward.png"
default="0"
/>
helpfile="equalFeature.html">
<sketch_shape_selector id="ConstraintEntityA"
label="First object" tooltip="Select edge" shape_types="edge">
+ <validator id="SketchPlugin_EqualAttr" parameters="ConstraintEntityB"/>
<validator id="PartSet_DifferentObjects"/>
<validator id="SketchPlugin_ExternalValidator" parameters="ConstraintEntityB"/>
</sketch_shape_selector>