Sketcher Workbench/ja: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(48 intermediate revisions by 2 users not shown)
Line 7: Line 7:
|IconR=Workbench_Spreadsheet.svg
|IconR=Workbench_Spreadsheet.svg
}}
}}

{{VeryImportantMessage|This page has been marked for translation. But it is still a work in progress!!!}}


[[Image:Workbench_Sketcher.svg|thumb|128px|Sketcher workbench icon]]
[[Image:Workbench_Sketcher.svg|thumb|128px|Sketcher workbench icon]]


{{TOCright}}

<span id="Introduction"></span>
==はじめに==
==はじめに==


Line 17: Line 22:
スケッチャーは[[Part Module/jp|ブーリアン演算]]と並んで3次元形状デザイン作成の中核を成す機能なのです。
スケッチャーは[[Part Module/jp|ブーリアン演算]]と並んで3次元形状デザイン作成の中核を成す機能なのです。
</div>
</div>

Together with boolean operations defined in the [[Image:Workbench_Part.svg|16px]] [[Part Workbench|Part Workbench]], the Sketcher Workbench, or "The Sketcher" for short, forms the basis of the [[Constructive_solid_geometry|constructive solid geometry]] (CSG) method of building solids. Together with [[Image:Workbench_PartDesign.svg|16px]] [[PartDesign_Workbench|PartDesign Workbench]] operations, it also forms the basis of the [[Feature_editing|feature editing]] methodology of creating solids. But many other workbenches use sketches as well.


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 22: Line 29:
</div>
</div>


<div class="mw-translate-fuzzy">
{{TOCright}}
=== スケッチャーに向かないもの ===
[[File:FC_ConstrainedSketch.png|450px]]
スケッチャーは2次元図面を作成するためのものではありません。ソリッド形状を作成するとスケッチは自動的に非表示になります。寸法はスケッチ編集モード時のみ表示されます。
</div>


[[File:FC_ConstrainedSketch.png|450px]]
{{Caption|A fully constrained sketch}}
{{Caption|A fully constrained sketch}}


== Constraints ==
==スケッチ拘束の基本 ==
スケッチャーがどのように動作するか説明するには"従来"の製図方法と比較するとわかりやすいでしょう。

==== 従来の製図 ====
"従来"のCAD製図方法は過去の[http://en.wikipedia.org/wiki/Drawing_board 製図板]を用いた方法を受け継いでいます。[http://en.wikipedia.org/wiki/Multiview_orthographic_projection (2次元)正射影図]を手書きすることで製図(いわゆる青写真)を作成します。物体は意図したサイズ、寸法に合わせて正確に描画されます。もし点(0, 0)から伸びる100mmの水平線を描きたければまずラインツールを選択し、画面をクリックするか座標(0, 0)と入力して始点を設定した後、終点をクリックするか座標を(100,0)を入力します。あるいは位置を気にせずに線を描き、後から位置を調整します。形状を描き終わったらそれらに寸法を追加します。

==== 拘束スケッチ ====
'''スケッチャー'''の方法は全く異なります。物体を厳密に描く必要はありません。なぜなら物体は後で拘束をかけることによって定義されるからです。物体はおおまかに描けばよく、拘束をかける前であれば変更も可能です。実際の所、物体は"流動的"で動かしたり、伸ばしたり、回転させたり、拡大縮小させたりといったことが可能です。これによってデザイン作業がとても柔軟なものになります。


<div class="mw-translate-fuzzy">
==== 拘束とは何なのか? ====
==== 拘束とは何なのか? ====
拘束は物体の自由度を制限するために使用されます。例えばラインは拘束がない場合は4つの自由度を持ちます。つまり水平方向、垂直方向への移動と拡大縮小と回転が可能です。
拘束は物体の自由度を制限するために使用されます。例えばラインは拘束がない場合は4つの自由度を持ちます。つまり水平方向、垂直方向への移動と拡大縮小と回転が可能です。
</div>


水平拘束、垂直拘束、あるいは(他のラインか座標軸の一つに対する)角度拘束を適用すると回転が制限され自由度は3つに減ります。片方の短点を原点に対してロックすることでさらに2つの自由度が減ります。最後にサイズ拘束を適用すれば最後の自由度が無くなります。こうしてラインは'''完全拘束'''状態になります。
水平拘束、垂直拘束、あるいは(他のラインか座標軸の一つに対する)角度拘束を適用すると回転が制限され自由度は3つに減ります。片方の短点を原点に対してロックすることでさらに2つの自由度が減ります。最後にサイズ拘束を適用すれば最後の自由度が無くなります。こうしてラインは'''完全拘束'''状態になります。


<div class="mw-translate-fuzzy">
複数のオブジェクトがある場合は相互に拘束が可能です。二本のラインがあった場合、点一致拘束を使用することでそれぞれの端点をつなぎ合わせることができます。また二本のラインの間の角度を設定したり、二本のラインが垂直になるよう設定することも可能です。ラインに対しては円弧や円の接線となるように拘束することもできます。
複数のオブジェクトがある場合は相互に拘束が可能です。二本のラインがあった場合、点一致拘束を使用することでそれぞれの端点をつなぎ合わせることができます。また二本のラインの間の角度を設定したり、二本のラインが垂直になるよう設定することも可能です。ラインに対しては円弧や円の接線となるように拘束することもできます。
</div>


<div class="mw-translate-fuzzy">
拘束には二種類あります。幾何拘束と寸法拘束です。これらについては下の[[#The tools|'ツール']]セクションで詳しく説明します。
拘束には二種類あります。幾何拘束と寸法拘束です。これらについては下の[[#The tools|'ツール']]セクションで詳しく説明します。
</div>


=== Edit constraints ===
=== スケッチャーに向かないもの ===
スケッチャーは2次元図面を作成するためのものではありません。ソリッド形状を作成するとスケッチは自動的に非表示になります。寸法はスケッチ編集モード時のみ表示されます。


When a [[Sketcher_ToggleDrivingConstraint|driving dimensional constraint]] is created, and if the {{MenuCommand|Ask for value after creating a dimensional constraint}} [[Sketcher_Preferences#Display|preference]] is selected (default), a dialog opens to edit its value.
<div class="mw-translate-fuzzy">
もし印刷用の2次元表示を作成するだけで3次元モデルが必要ないのであれば[[Draft Module/jp|製図ワークベンチ]]をチェックしてください(製図ワークベンチでも2次元形状が作れることを記憶に留めておいてください。今のところスケッチャーでは使用できない機能、例えばB-スプラインなどを使うこともできます)。
</div>


[[Image:Sketcher_Edit_Constraint.png|Sketcher_Edit_Constraint.png]]
== Sketching Workflow ==


You can enter a numerical value or an [[Expressions|expression]], and it is possible to name the constraint to facilitate its use in other expressions. You can also check the {{MenuCommand|Reference}} checkbox to switch the constrain to reference mode.
<div class="mw-translate-fuzzy">
== Sketching Workflow ==
スケッチは常に2次元(2D)です。 ソリッドを作成するには、囲まれた1つの領域の2Dスケッチを作成し、次にPaddedまたはRevolvedで3次元を追加して、2Dスケッチから3Dソリッドを作成します。
</div>


To edit the value of an existing dimensional constraint do one of the following:
<div class="mw-translate-fuzzy">
* Double-click the constraint value in the [[3D_view|3D view]].
スケッチが互いに交差する線分、Pointが線分上に直接ない場所、または隣接する線分の端点間にギャップがある場所では、PadまたはRevolveはソリッドを作成しません。 この規則の例外は、それがConstruction(blue)Geometryには適用されないことです。
* Double-click the constraint in the [[Sketcher_Dialog|Sketcher Dialog]].
</div>
* Right-click the constraint in the Sketcher Dialog and select the {{MenuCommand|Change value}} option from the context menu.


=== Reposition constraints ===
囲まれた領域の内側に、重ならない小さな領域を含めることができます。 3Dソリッドを作成すると、これらは無効になります。


Dimensional constraints can be repositioned in the 3D view by dragging. Hold down the left mouse button over the constraint value and move the mouse. The symbols of geometric constraints are positioned automatically and cannot be moved.
Once a Sketch is fully constrained, the Sketch features will turn green; Construction Geometry will remain blue. It is usually "finished" at this point and suitable for use in creating a 3D solid. However, once the Sketch dialog is closed it may be worthwhile going to [[Image:Workbench_Part.svg|24px]] [[Part_Module|Part Workbench]] and running {{Button|[[File:Part_CheckGeometry.svg|16px]] [[Part_CheckGeometry|Check geometry]]}} to ensure there are no features in the Sketch which may cause later problems.


== Profile sketches ==

To create a sketch that can be used as a profile for generating solids certain rules must be followed:
* The sketch must contain only closed contours. Gaps between endpoints, however small, are not allowed.
* Contours can be nested, to create voids, but should not self-intersect or intersect other contours.
* Contours cannot share edges with other contours. Duplicate edges must be avoided.
* T-connections, that is more than two edges sharing a common point, or a point touching an edge, are not allowed.

These rules do not apply to construction geometry (default color blue), which is not shown outside edit mode, or if the sketch is used for a different purpose. Depending on the workbench and the tool that will use the profile sketch, additional restrictions may apply.

== Drawing aids ==

The Sketcher Workbench has several drawing aids and other features that can help when creating geometry and applying constraints.

=== Continue modes ===

There are two continue modes: '''Geometry creation "Continue Mode"''' and '''Constraint creation "Continue Mode"'''. If these are checked (default) in the [[Sketcher_Preferences#Display|preferences]], related tools will restart after finishing. To exit an continuous tool press {{KEY|Esc}} or the right mouse button. This must be repeated if a continuous geometry tool has already received input. You can also exit a continuous tool by starting another geometry or constraint creation tool. Note that pressing {{KEY|Esc}} if no tool is active will exit sketch edit mode. Uncheck the '''Esc can leave sketch edit mode''' [[Sketcher_Preferences#General|preference]] if you often inadvertently press {{KEY|Esc}} too many times.

=== Auto constraints ===

In sketches that have '''Auto constraints''' checked (default) several constraints are applied automatically. The icon of a proposed automatic constraint is shown next to the cursor when it is placed correctly. Left-Clicking will then apply that constraint. This is a per-sketch setting that can be changed in the [[Sketcher_Dialog#Constraints|Sketcher Dialog]] or by changing the {{PropertyView|Autoconstraints}} [[Property_editor|property]] of the sketch.

The following constraints are applied automatically:
* [[Image:Sketcher_ConstrainCoincident.svg|16px]] [[Sketcher_ConstrainCoincident|Coincident]]
* [[Image:Sketcher_ConstrainPointOnObject.svg|16px]] [[Sketcher_ConstrainPointOnObject|Point on object]]
* [[Image:Sketcher_ConstrainHorizontal.svg|16px]] [[Sketcher_ConstrainHorizontal|Horizontal]]
* [[Image:Sketcher_ConstrainVertical.svg|16px]] [[Sketcher_ConstrainVertical|Vertical]]
* [[Image:Sketcher_ConstrainTangent.svg|16px]] [[Sketcher_ConstrainTangent|Tangent]]
* {{Version|1.0}}: [[Image:Sketcher_ConstrainSymmetric.svg|16px]] [[Sketcher_ConstrainSymmetric|Symmetric]] (line midpoint)

=== Snapping ===

{{Version|0.21}}

It is possible to [[Sketcher_Snap|snap]] to grid lines and grid intersection, to edges of geometry and midpoints of lines and arcs, and to certain angles. Please note that snapping does not produce constraints in and of itself. For example, only if [[#Auto constraints|Auto constraints]] is switched on will snapping to an edge produce a [[Sketcher_ConstrainPointOnObject|Point on object constraint]]. But just picking a point on the edge would then have the same result.

=== On-View-Parameters ===

{{Version|1.0}}

Depending on the selected option in the [[Sketcher_Preferences#General|preferences]] only the dimensional On-View-Parameters or both the dimensional and the positional On-View-Parameters can be enabled. Positional parameters allow the input of exact coordinates, for example the center of a circle, or the start point of a line. Dimensional parameters allow the input of exact dimensions, for example the radius of a circle, or the length and angle of a line. On-View-Parameters are not available for all tools.

[[Image:Sketcher_On_view_parameters_positional.png]]
{{Caption|Determining the center point of a circle with the positional parameters enabled}}

[[Image:Sketcher_On_view_parameters_dimensional.png]]
{{Caption|Determining the radius of a circle with the dimensional parameters enabled}}

If values are entered and confirmed by pressing {{KEY|Enter}} or {{KEY|Tab}}, related constraints are added automatically. If two parameters are displayed at the same time, for example the X and Y coordinate of a point, it is possible to enter one value and pick a point to define the other. Depending on the object additional constraints may be required to fully constrain it. Constraints resulting from On-View-Parameters take precedence over those that may result from [[Sketcher_Dialog#Constraints|Auto constraints]].

[[Image:Sketcher_ArcExample3.png|300px]]
{{Caption|Arc created by entering all On-View-Parameters with resulting automatically created constraints}}

=== Coordinate display ===

If the '''Show coordinates beside cursor while editing''' [[Sketcher_Preferences#Display|preference]] is checked (default), the parameters of the current geometry tool (coordinates, radius, or length and angle) are displayed next to the cursor. This is deactivated while On-View-Parameters are shown.

== Selection methods ==

While a sketch is in edit mode the following selection methods can be used:

=== 3D view element selection ===

As elsewhere in FreeCAD, an element can be selected in the [[3D_view|3D view]] with a single left mouse click. But there is no need to hold down the {{KEY|Ctrl}} key when selecting multiple elements. Holding down that key is possible though and has the advantage that you can miss-click without losing the selection. Edges, points and constraints can be selected in this manner.

=== 3D view box selection ===

Box selection in the 3D view works without using [[Std_BoxSelection|Std BoxSelection]] or [[Std_BoxElementSelection|Std BoxElementSelection]]:
# Make sure that no tool is active.
# Do one of the following:
#* Click in an empty area and drag a rectangle from left to right to select elements that lie completely inside the rectangle.
#* Click in an empty area and drag a rectangle from right to left to also select elements that touch or cross the rectangle.

You can box-select edges and points, constraints cannot be box-selected.

=== 3D view connected geometry selection ===

{{Version|1.0}}

Double-clicking an edge in the 3D view will select all edges directly and indirectly connected with that edge via endpoints. There is no need for the edges to be connected with [[Sketcher_ConstrainCoincident|Coincident constraints]], endpoints need only have the same coordinates.

=== Sketcher Dialog selection ===

Edges and points can also be selected from the Elements section of the [[Sketcher_Dialog|Sketcher Dialog]], and constraints from the Constraints section of that dialog.

== Copy, cut and paste ==

{{Version|1.0}}

The standard keyboard shortcuts, {{KEY|Ctrl}}+{{KEY|C}}, {{KEY|Ctrl}}+{{KEY|X}} and {{KEY|Ctrl}}+{{KEY|V}}, can be used to copy, cut and paste selected Sketcher geometry including related constraints. But these tools are also available from the {{MenuCommand|Sketch → Sketcher tools}} menu. They can be used within the same sketch but also between different sketches or separate instances of FreeCAD. Since the data is copied to the clipboard in the form of Python code, it can be used in other ways too (e.g. shared on the forum).

== Tools ==

<div class="mw-translate-fuzzy">
==ツール==
==ツール==
スケッチャーワークベンチのツールはスケッチャーワークベンチをロードすると表示されるSketcherメニューに配置されています。
スケッチャーワークベンチのツールはスケッチャーワークベンチをロードすると表示されるSketcherメニューに配置されています。
</div>

Some tools are also available from the [[3D_view|3D view]] context menu while a sketch is in edit mode, or from the context menus of the [[Sketcher_Dialog|Sketcher Dialog]].

{{Version|0.21}}: If a sketch is in edit mode the Structure toolbar is hidden as none of its tools can then be used.


=== General ===
=== General ===


==== Sketcher toolbar ====
* [[Image:Sketcher_NewSketch.svg‎‎|32px]] [[Sketcher_NewSketch|New sketch]]: Creates‎ a new sketch on a selected face or plane. If no face is selected while this tool is executed the user is prompted to select a plane from a pop-up window.


* [[Image:Sketcher_EditSketch.svg|32px]] [[Sketcher_EditSketch|Edit sketch]]: Edit the selected Sketch. This will open the [[Sketcher Dialog|Sketcher Dialog]].
* [[Image:Sketcher_NewSketch.svg‎‎|32px]] [[Sketcher_NewSketch|Create sketch]]: Creates a new sketch and opens the [[Sketcher_Dialog|Sketcher Dialog]] to edit it.


* [[Image:Sketcher_LeaveSketch.svg|32px]] [[Sketcher_LeaveSketch|Leave sketch]]: Leave the Sketch editing mode.
* [[Image:Sketcher_EditSketch.svg|32px]] [[Sketcher_EditSketch|Edit sketch]]: Opens the Sketcher Dialog to edit an existing sketch.


* [[Image:Sketcher_ViewSketch.svg|32px]] [[Sketcher_ViewSketch|View sketch]]: Sets the model view perpendicular to the sketch plane.
* [[Image:Sketcher_MapSketch.svg|32px]] [[Sketcher_MapSketch|Attach sketch]]: Attaches a sketch to selected geometry.


* [[File:Sketcher_ReorientSketch.svg|32px]] [[Sketcher_ReorientSketch|Reorient sketch]]: Places a sketch on one of the main planes with an optional offset. It can also be used to detach a sketch.
* [[Image:Sketcher_ViewSection.svg|32px]] [[Sketcher_ViewSection|View section]]: Creates a section plane that temporarily hides any matter in front of the sketch plane. {{Version|0.18}}


* [[Image:Sketcher_MapSketch.svg|32px]] [[Sketcher_MapSketch|Map sketch to face]]: Maps a sketch to the previously selected face of a solid.
* [[File:Sketcher_ValidateSketch.svg|32px]] [[Sketcher_ValidateSketch|Validate sketch]]: Can analyze and repair a sketch that is no longer editable or has invalid constraints, or add missing coincident constraints.


* [[Image:Sketcher_MergeSketches.svg|32px]] [[Sketcher_MergeSketches|Merge sketches]]: Merges two or more sketches.
* [[File:Sketcher_ReorientSketch.svg|32px]] [[Sketcher_ReorientSketch|Reorient sketch]]: Allows you to attach the sketch to one of the main planes.


* [[File:Sketcher_ValidateSketch.svg|32px]] [[Sketcher_ValidateSketch|Validate sketch]]: Verify the tolerance of different points and adjust them.
* [[Image:Sketcher_MirrorSketch.svg|32px]] [[Sketcher_MirrorSketch|Mirror sketch]]: Mirrors sketches across their X axis, Y axis, or origin.


==== Sketcher Edit Mode toolbar ====
* [[Image:Sketcher_MergeSketches.svg|32px]] [[Sketcher_MergeSketches|Merge sketches]]: Merge two or more sketches. {{Version|0.15}}


* [[Image:Sketcher_MirrorSketch.svg|32px]] [[Sketcher_MirrorSketch|Mirror sketch]]: Mirror a sketch along the x-axis, the y-axis or the origin. {{Version|0.16}}
* [[Image:Sketcher_LeaveSketch.svg|32px]] [[Sketcher_LeaveSketch|Leave sketch]]: Finishes sketch edit mode and closes the [[Sketcher_Dialog|Sketcher Dialog]].


* [[Image:Sketcher_ViewSketch.svg|32px]] [[Sketcher_ViewSketch|View sketch]]: Aligns the [[3D_view|3D view]] with the sketch.
* [[File:Sketcher_StopOperation.svg|32px]] [[Sketcher_StopOperation|Stop operation]]: when in edit mode, stop the current operation, whether that is drawing, setting constraints, etc.

* [[Image:Sketcher_ViewSection.svg|32px]] [[Sketcher_ViewSection|View section]]: Toggles a temporary section plane that hides any objects and parts of objects in front of the sketch plane.

==== Sketcher edit tools toolbar ====

* [[Image:Sketcher_Grid.svg|32px]] [[Sketcher_Grid|Toggle grid]]: Toggles the grid in the sketch currently being edited. Settings can be changed in the related menu. {{Version|0.21}}

* [[Image:Sketcher_Snap.svg|32px]] [[Sketcher_Snap|Toggle snap]]: Toggles snapping in all sketches. Settings can be changed in the related menu. {{Version|0.21}}

* [[Image:Sketcher_RenderingOrder.svg|32px]] [[Sketcher_RenderingOrder|Configure rendering order]]: The rendering order of all sketches can be changed in the related menu. {{Version|0.21}}

==== Other ====

* [[File:Sketcher_StopOperation.svg|32px]] [[Sketcher_StopOperation|Stop operation]]: Stops any currently running geometry or constraint creation tool.


===Sketcher geometries===
===Sketcher geometries===
Line 98: Line 215:
These are tools for creating objects.
These are tools for creating objects.


* [[Image:Sketcher_CreatePoint.svg|32px]] [[Sketcher_CreatePoint|Point]]: Draws a point.
* [[Image:Sketcher_CreatePoint.svg|32px]] [[Sketcher_CreatePoint|Point]]: Creates a point.


* <span id="Sketcher_CompLine">[[Image:Sketcher_CreatePolyline.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create (poly)line:</span><!--Do not edit span id: the Sketcher_CompLine pages redirect here-->
* [[Image:Sketcher_CreateLine.svg|32px]] [[Sketcher_CreateLine|Line]]: Draws a line segment between 2 points. Lines are infinite regarding certain constraints.


:* [[Image:Sketcher_CreatePolyline.svg|32px]] [[Sketcher_CreatePolyline|Polyline]]: Creates a series of line and arc segments connected by their endpoints. The tool has several modes.
* [[Image:Sketcher_CompCreateArc.png|48px]] [[Sketcher_CompCreateArc|Create an arc]]: This is an icon menu in the Sketcher toolbar that holds the following commands:


:* [[Image:Sketcher_CreateArc.svg|32px]] [[Sketcher_CreateArc|Arc]]: Draws an arc segment from center, radius, start angle and end angle.
:* [[Image:Sketcher_CreateLine.svg|32px]] [[Sketcher_CreateLine|Line]]: Creates a line. {{Version|1.0}}: The tool has three modes.


* <span id="Sketcher_CompCreateArc">[[Image:Sketcher_CreateArc.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create arc:</span><!--Do not edit span id: the Sketcher_CompCreateArc pages redirect here-->
:* [[Image:Sketcher_Create3PointArc.svg|32px]] [[Sketcher_Create3PointArc|Arc by 3 points]]: Draws an arc segment from two endpoints and another point on the circumference.


:* [[Image:Sketcher_CreateArc.svg|32px]] [[Sketcher_CreateArc|Arc by center]]: Creates an arc by its center and its endpoints. {{Version|1.0}}: Or by its endpoints and a point along the arc.
* [[Image:Sketcher_CompCreateCircle.png|48px]] [[Sketcher_CompCreateCircle|Create a circle]]: This is an icon menu in the Sketcher toolbar that holds the following commands:


:* [[Image:Sketcher_Create3PointArc.svg|32px]] [[Sketcher_Create3PointArc|Arc by 3 points]]: Creates an arc by its endpoints and a point along the arc. {{Version|1.0}}: This is the same tool as [[Sketcher_CreateArc|Arc by center]] but with a different initial mode.
:* [[Image:Sketcher_CreateCircle.svg|32px]] [[Sketcher_CreateCircle|Circle]]: Draws a circle from center and radius.


:* [[Image:Sketcher_Create3PointCircle.svg|32px]] [[Sketcher_Create3PointCircle|Circle by 3 points]]: Draws a circle from three points on the circumference.
:* [[Image:Sketcher_CreateArcOfEllipse.svg|32px]] [[Sketcher_CreateArcOfEllipse|Arc of ellipse]]: Creates an arc of ellipse.


:* [[Image:Sketcher_CreateArcOfHyperbola.svg|32px]] [[Sketcher_CreateArcOfHyperbola|Arc of hyperbola]]: Creates an arc of hyperbola.
* [[Image:Sketcher_CompCreateConic.png|48px]] [[Sketcher_CompCreateConic|Create a conic]]: The sketcher provides the following conical sections. Unlike B-splines they can be used with all sorts of constraints such as tangents, point-on-object, or orthogonal.
** [[Image:Sketcher_CreateEllipseByCenter.svg|32px]] [[Sketcher_CreateEllipseByCenter|Ellipse by center]]: Draws an ellipse by center point, major radius point and minor radius point. {{Version|0.15}}
** [[Image:Sketcher_CreateEllipseBy3Points.svg|32px]] [[Sketcher_CreateEllipseBy3Points|Ellipse by 3 points]]: Draws an ellipse by major diameter (2 points) and minor radius point. {{Version|0.15}}
** [[Image:Sketcher_CreateArcOfEllipse.svg|32px]] [[Sketcher_CreateArcOfEllipse|Arc of ellipse]]: Draws an arc of ellipse by center point, major radius point, starting point and ending point. {{Version|0.15}}
**[[Image:Sketcher_CreateArcOfHyperbola.svg|32px]] [[Sketcher_CreateArcOfHyperbola|Arc of hyperbola]]: Draws an arc of hyperbola. {{Version|0.17}}
**[[Image:Sketcher_CreateArcOfParabola.svg|32px]] [[Sketcher_CreateArcOfParabola|Arc of parabola]]: Draws an arc of parabola. {{Version|0.17}}


:* [[Image:Sketcher_CreateArcOfParabola.svg|32px]] [[Sketcher_CreateArcOfParabola|Arc of parabola]]: Creates an arc of parabola.
* [[Image:Sketcher_CompCreateBSpline.png|48px]] [[Sketcher_CompCreateBSpline|Create a B-spline]]: This is an icon menu in the Sketcher toolbar that holds the following commands:
** [[File:Sketcher_CreateBSpline.svg|32px]] [[Sketcher_CreateBSpline|Create B-spline]]: Draws a B-spline curve by its control points. {{Version|0.17}}
** [[File:Sketcher_CreatePeriodicBSpline.svg|32px]] [[Sketcher_CreatePeriodicBSpline|Create periodic B-spline]]: Draws a periodic (closed) B-spline curve by its control points. {{Version|0.17}}


* <span id="Sketcher_CompCreateConic">[[Image:Sketcher_CreateCircle.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create circle/ellipse:</span><!--Do not edit span id: the Sketcher_CompCreateConic pages redirect here-->
* [[Image:Sketcher_CreatePolyline.svg|32px]] [[Sketcher_CreatePolyline|Polyline (multiple-point line)]]: Draws a line made of multiple line segments. Pressing the M key while drawing a Polyline toggles between the different polyline modes.


* [[Image:Sketcher_CreateRectangle.svg|32px]] [[Sketcher_CreateRectangle|Rectangle]]: Draws a rectangle from 2 opposite points.
:* [[Image:Sketcher_CreateCircle.svg|32px]] [[Sketcher_CreateCircle|Circle by center]]: Creates a circle by its center and a point along the circle. {{Version|1.0}}: Or by three points along the circle.


:* [[Image:Sketcher_Create3PointCircle.svg|32px]] [[Sketcher_Create3PointCircle|Circle by 3 points]]: Creates a circle by three points along the circle. {{Version|1.0}}: This is the same tool as [[Sketcher_CreateCircle|Circle by center]] but with a different initial mode.
* [[Image:Sketcher_CompCreateRegularPolygon.png|48px]] [[Sketcher_CompCreateRegularPolygon|Create regular polygon]]: This is an icon menu in the Sketcher toolbar that holds the following commands:


:* [[Image:Sketcher_CreateEllipseByCenter.svg|32px]] [[Sketcher_CreateEllipseByCenter|Ellipse by center]]: Creates an ellipse by its center, an endpoint of one of its axes, and a point along the ellipse. {{Version|1.0}}: Or by both endpoints of one of its axes and a point along the ellipse.
:* [[Image:Sketcher_CreateTriangle.svg|32px]] [[Sketcher_CreateTriangle|Triangle]]: Draws a regular triangle inscribed in a construction geometry circle. {{Version|0.15}}


:* [[Image:Sketcher_CreateEllipseBy3Points.svg|32px]] [[Sketcher_CreateEllipseBy3Points|Ellipse by 3 points]]: Creates an ellipse by the endpoints of one of its axes and a point along the ellipse. {{Version|1.0}}: This is the same tool as [[Sketcher_CreateEllipseByCenter|Ellipse by center]] but with a different initial mode.
:* [[Image:Sketcher_CreateSquare.svg|32px]] [[Sketcher_CreateSquare|Square]]: Draws a regular square inscribed in a construction geometry circle. {{Version|0.15}}


* <span id="Sketcher_CompCreateRectangles">[[Image:Sketcher_CreateRectangle.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create rectangle:</span><!--Do not edit span id: the Sketcher_CompCreateRectangles pages redirect here-->
:* [[Image:Sketcher_CreatePentagon.svg|32px]] [[Sketcher_CreatePentagon|Pentagon]]: Draws a regular pentagon inscribed in a construction geometry circle. {{Version|0.15}}


:* [[Image:Sketcher_CreateRectangle.svg|32px]] [[Sketcher_CreateRectangle|Rectangle]]: Creates a rectangle. {{Version|1.0}}: The tool has four modes. Rounded corners and creating an offset copy are optional features.
:* [[Image:Sketcher_CreateHexagon.svg|32px]] [[Sketcher_CreateHexagon|Hexagon]]: Draws a regular hexagon inscribed in a construction geometry circle. {{Version|0.15}}


:* [[Image:Sketcher_CreateRectangle_Center.svg|32px]] [[Sketcher_CreateRectangle_Center|Centered rectangle]]: Creates a centered rectangle. {{Version|1.0}}: This is the same tool as [[Sketcher_CreateRectangle|Rectangle]] but with a different initial mode.
:* [[Image:Sketcher_CreateHeptagon.svg|32px]] [[Sketcher_CreateHeptagon|Heptagon]]: Draws a regular heptagon inscribed in a construction geometry circle. {{Version|0.15}}


:* [[Image:Sketcher_CreateOctagon.svg|32px]] [[Sketcher_CreateOctagon|Octagon]]: Draws a regular octagon inscribed in a construction geometry circle. {{Version|0.15}}
:* [[Image:Sketcher_CreateOblong.svg|32px]] [[Sketcher_CreateOblong|Rounded rectangle]]: Creates a rounded rectangle. Idem.


* <span id="Sketcher_CompCreateRegularPolygon">[[Image:Sketcher_CreateHexagon.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create regular polygon:</span><!--Do not edit span id: the Sketcher_CompCreateRegularPolygon pages redirect here-->
:* [[Image:Sketcher_CreateRegularPolygon.svg|32px]] [[Sketcher_CreateRegularPolygon|Create Regular Polygon]] : Draws a regular polygon by selecting the number of sides and picking two points: the center and one corner.


:* [[Image:Sketcher_CreateTriangle.svg|32px]] [[Sketcher_CreateTriangle|Triangle]]: creates an equilateral triangle. {{Version|1.0}}: This is the same tool as [[Sketcher_CreateRegularPolygon|Regular polygon]] but with the number of sides preset to a specif value.
* [[Image:Sketcher_CreateSlot.svg|32px]] [[Sketcher_CreateSlot|Slot]]: Draws an oval by selecting the center of one semicircle and an endpoint of the other semicircle.


:* [[Image:Sketcher_CreateSquare.svg|32px]] [[Sketcher_CreateSquare|Square]]: Creates a square. Idem.
* [[Image:Sketcher_CreateFillet.svg|32px]] [[Sketcher_CreateFillet|Fillet]]: Makes a fillet between two lines joined at one point. Select both lines or click on the corner point, then activate the tool.


* [[Image:Sketcher_Trimming.svg|32px]] [[Sketcher_Trimming|Trimming]]: Trims a line, circle or arc with respect to the clicked point.
:* [[Image:Sketcher_CreatePentagon.svg|32px]] [[Sketcher_CreatePentagon|Pentagon]]: Creates a pentagon. Idem.


:* [[Image:Sketcher_CreateHexagon.svg|32px]] [[Sketcher_CreateHexagon|Hexagon]]: Creates a hexagon. Idem.
* [[File:Sketcher_Extend.svg|32px]] [[Sketcher_Extend|Extend]]: Extends a line or an arc to a boundary line, arc, ellipse, arc of ellipse or a point in space. {{Version|0.17}}


* [[Image:Sketcher_External.svg|32px]] [[Sketcher_External|External Geometry]]: Creates an edge linked to external geometry.
:* [[Image:Sketcher_CreateHeptagon.svg|32px]] [[Sketcher_CreateHeptagon|Heptagon]]: Creates a heptagon. Idem.


* [[File:Sketcher_CarbonCopy.svg|32px]] [[Sketcher_CarbonCopy|CarbonCopy]]: Copies the geometry of another sketch. {{Version|0.17}}
:* [[Image:Sketcher_CreateOctagon.svg|32px]] [[Sketcher_CreateOctagon|Octagon]]: Creates an octagon. Idem.


:* [[Image:Sketcher_CreateRegularPolygon.svg|32px]] [[Sketcher_CreateRegularPolygon|Regular polygon]]: Creates a regular polygon. The number of sides can be specified.
* [[File:Sketcher_ToggleConstruction.svg|32px]] [[Sketcher_ToggleConstruction|Construction Mode]]: Toggles sketch geometry from/to construction mode. Construction geometry is shown in blue and is discarded outside of Sketch editing mode.

* <span id="Sketcher_CompSlot">[[Image:Sketcher_CreateSlot.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create slot:</span><!--Do not edit span id: the Sketcher_CompSlot pages redirect here-->

:* [[Image:Sketcher_CreateSlot.svg|32px]] [[Sketcher_CreateSlot|Slot]]: Creates a slot.

:* [[Image:Sketcher_CreateArcSlot.svg|32px]] [[Sketcher_CreateArcSlot|Arc slot]]: Creates an arc slot. {{Version|1.0}}

* <span id="Sketcher_CompCreateBSpline">[[Image:Sketcher_CreateBSpline.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create B-spline:</span><!--Do not edit span id: the Sketcher_CompCreateBSpline pages redirect here-->

:* [[File:Sketcher_CreateBSpline.svg|32px]] [[Sketcher_CreateBSpline|B-spline by control points]]: Creates a B-spline curve from control points.

:* [[File:Sketcher_CreatePeriodicBSpline.svg|32px]] [[Sketcher_CreatePeriodicBSpline|Periodic B-spline by control points]]: Creates a periodic (closed) B-spline curve from control points.

:* [[File:Sketcher_CreateBSplineByInterpolation.svg|32px]] [[Sketcher_CreateBSplineByInterpolation|B-spline by knots]]: Creates a B-spline curve through knot points. {{Version|0.21}}

:* [[File:Sketcher_CreatePeriodicBSplineByInterpolation.svg|32px]] [[Sketcher_CreatePeriodicBSplineByInterpolation|Periodic B-spline by knots]]: Creates a periodic (closed) B-spline curve through knot points. {{Version|0.21}}

* [[File:Sketcher_ToggleConstruction.svg|32px]] [[Sketcher_ToggleConstruction|Toggle construction geometry]]: Either toggles the geometry creation tools to/from construction mode, or toggles selected geometry to/from construction geometry.


===Sketcher constraints===
===Sketcher constraints===


Constraints are used to define lengths, set rules between sketch elements, and to lock the sketch along the vertical and horizontal axes. Some constraints require use of [[Sketcher_helper_constraint|Helper constraints]].
These are tools for creating [[#Constraints|constraints]]. Some constraints require the use of [[Sketcher_helper_constraint|Helper constraints]].


* <span id="Sketcher_CompDimensionTools">[[Image:Sketcher_Dimension.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Dimensional constraints:</span><!--Do not edit span id: the Sketcher_CompDimensionTools pages redirect here-->
====Geometric constraints====
These constraints are not associated with numeric data.


:* [[File:Sketcher_Dimension.svg|32px]] [[Sketcher_Dimension|Dimension]]: Is the context-sensitive constraint tool of the Sketcher Workbench. Based on the current selection, it offers appropriate dimensional constraints, but also geometric constraints. {{Version|1.0}}
* [[File:Sketcher_ConstrainCoincident.svg|32px]] [[Sketcher_ConstrainCoincident|Coincident]]: Affixes a point onto (coincident with) one or more other points.


:* [[File:Sketcher_ConstrainDistanceX.svg|32px]] [[Sketcher_ConstrainDistanceX|Horizontal distance]]: Fixes the horizontal distance between two points or the endpoints of a line. If a single point is pre-selected, the distance is relative to the origin of the sketch.
* [[File:Sketcher_ConstrainPointOnObject.svg|32px]] [[Sketcher_ConstrainPointOnObject|Point On Object]]: Affixes a point onto another object such as a line, arc, or axis.


* [[File:Sketcher_ConstrainVertical.svg|32px]] [[Sketcher_ConstrainVertical|Vertical]]: Constrains the selected lines or polyline elements to a true vertical orientation. More than one object can be selected before applying this constraint.
:* [[File:Sketcher_ConstrainDistanceY.svg|32px]] [[Sketcher_ConstrainDistanceY|Vertical distance]]: Fixes the vertical distance between two points or the endpoints of a line. If a single point is pre-selected, the distance is relative to the origin of the sketch.


:* [[File:Sketcher_ConstrainDistance.svg|32px]] [[Sketcher_ConstrainDistance|Distance]]: Fixes the length of a line, the distance between two points, the perpendicular distance between a point and a line; or, {{Version|0.21}}, the distance between the edges of two circles or arcs, or between the edge of a circle or arc and a line; or, {{Version|1.0}}, the length of an arc.
* [[File:Sketcher_ConstrainHorizontal.svg|32px]] [[Sketcher_ConstrainHorizontal|Horizontal]]: Constrains the selected lines or polyline elements to a true horizontal orientation. More than one object can be selected before applying this constraint.


:* <span id="Sketcher_CompConstrainRadDia">[[File:Sketcher_ConstrainRadiam.svg|32px]] [[Sketcher_ConstrainRadiam|Auto radius/diameter]]: Fixes the radius of arcs and B-spline weight circles, and the diameter of circles.</span><!--Do not edit span id: the Sketcher_CompConstrainRadDia pages redirect here-->
* [[File:Sketcher_ConstrainParallel.svg|32px]] [[Sketcher_ConstrainParallel|Parallel]]: Constrains two or more lines parallel to one another.


:* [[File:Sketcher_ConstrainRadius.svg|32px]] [[Sketcher_ConstrainRadius|Radius]]: Fixes the radius of circles, arcs and B-spline weight circles.
* [[File:Sketcher_ConstrainPerpendicular.svg|32px]] [[Sketcher_ConstrainPerpendicular|Perpendicular]]: Constrains two lines perpendicular to one another, or constrains a line perpendicular to an arc endpoint.


:* [[File:Sketcher_ConstrainDiameter.svg|32px]] [[Sketcher_ConstrainDiameter|Diameter]]: Fixes the diameter of circles and arcs.
* [[File:Sketcher_ConstrainTangent.svg|32px]] [[Sketcher_ConstrainTangent|Tangent]]: Creates a tangent constraint between two selected entities, or a co-linear constraint between two line segments. A line segment does not have to lie directly on an arc or circle to be constrained tangent to that arc or circle.


* [[File:Sketcher_ConstrainEqual.svg|32px]] [[Sketcher_ConstrainEqual|Equal]]: Constrains two selected entities equal to one another. If used on circles or arcs their radii will be set equal.
:* [[File:Sketcher_ConstrainAngle.svg|32px]] [[Sketcher_ConstrainAngle|Angle]]: Fixes the angle between two edges, the angle of a line with the horizontal axis of the sketch, or the aperture angle of a circular arc.


:* [[File:Sketcher_ConstrainLock.svg|32px]] [[Sketcher_ConstrainLock|Lock]]: Applies [[Sketcher_ConstrainDistanceX|Horizontal distance]] and [[Sketcher_ConstrainDistanceY|Vertical distance]] constraints to points. If a single point is selected the constraints reference the origin of the sketch. If two or more points are selected the constraints reference the last point in the selection.
* [[File:Sketcher_ConstrainSymmetric.svg|32px]] [[Sketcher_ConstrainSymmetric|Symmetric]]: Constrains two points symmetrically about a line, or constrains the first two selected points symmetrically about a third selected point.


* [[File:Sketcher_ConstrainCoincidentUnified.svg|32px]] [[Sketcher_ConstrainCoincidentUnified|Coincident (unified)]]: Creates a coincident constraint between points, fixes points on edges or axes, or creates a concentric constraint. It combines the [[Sketcher_ConstrainCoincident|Coincident]] and [[Sketcher_ConstrainPointOnObject|Point on object]] tools. {{Version|1.0}}
* [[Image:Sketcher_ConstrainBlock.svg|32px]] [[Sketcher_ConstrainBlock|Block]]: it blocks an edge from moving, that is, it prevents its vertices from changing their current positions. It should be particularly useful to fix the position of B-Splines. See the [https://forum.freecadweb.org/viewtopic.php?f=9&t=26572 Block Constraint forum topic]. {{Version|0.17}}


* [[File:Sketcher_ConstrainCoincident.svg|32px]] [[Sketcher_ConstrainCoincident|Coincident]]: Creates a coincident constraint between points, or a concentric constraint.
====Dimensional constraints ====
These are constraints associated with numeric data, for which you can use the [[Expressions|expressions]]. The data may be taken from a [[Spreadsheet_Workbench|spreadsheet]].


* [[File:Sketcher_ConstrainPointOnObject.svg|32px]] [[Sketcher_ConstrainPointOnObject|Point on object]]: Fixes points on edges or axes.
* [[File:Sketcher_ConstrainLock.svg|32px]] [[Sketcher_ConstrainLock|Lock]]: Constrains the selected item by setting vertical and horizontal distances relative to the origin, thereby locking the location of that item. These constraint distances can be edited later.


* <span id="Sketcher_CompHorVer">[[Image:Sketcher_ConstrainHorVer.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]]Horizontal/vertical constraints:</span><!--Do not edit span id: the Sketcher_CompHorVer pages redirect here-->
* [[File:Sketcher_ConstrainDistanceX.svg|32px]] [[Sketcher_ConstrainDistanceX|Horizontal distance]]: Fixes the horizontal distance between two points or line endpoints. If only one item is selected, the distance is set to the origin.


:* [[File:Sketcher_ConstrainHorVer.svg|32px]] [[Sketcher_ConstrainHorVer|Horizontal/vertical]]: Constrains lines or pairs of points to be horizontal or vertical, whichever is closest to the current alignment. It combines the [[Sketcher_ConstrainHorizontal|Horizontal]] and [[Sketcher_ConstrainVertical|Vertical]] tools. {{Version|1.0}}
* [[File:Sketcher_ConstrainDistanceY.svg|32px]] [[Sketcher_ConstrainDistanceY|Vertical distance]]: Fixes the vertical distance between 2 points or line endpoints. If only one item is selected, the distance is set to the origin.


:* [[File:Sketcher_ConstrainHorizontal.svg|32px]] [[Sketcher_ConstrainHorizontal|Horizontal]]: Constrains lines or pairs of points to be horizontal.
* [[File:Sketcher_ConstrainDistance.svg|32px]] [[Sketcher_ConstrainDistance|Distance]]: Defines the distance of a selected line by constraining its length, or defines the distance between two points by constraining the distance between them.


* [[File:Sketcher_ConstrainRadius.svg|32px]] [[Sketcher_ConstrainRadius|Radius]]: defines the radius of a selected arc or circle by constraining the radius.
:* [[File:Sketcher_ConstrainVertical.svg|32px]] [[Sketcher_ConstrainVertical|Vertical]]: Constrains lines or pairs of points to be vertical.
* [[File:Sketcher_ConstrainDiameter.svg|32px]] [[Sketcher_ConstrainDiameter|Diameter]]: defines the diameter of a selected arc or circle by constraining the radius.
* [[File:Sketcher_ConstrainAngle.svg|32px]] [[Sketcher_ConstrainAngle|Angle]]: Defines the internal angle between two selected lines.


* [[File:Sketcher_ConstrainSnellsLaw.svg|32px]] [[Sketcher_ConstrainSnellsLaw|Snell's Law]]: Constrains two lines to obey a refraction law to simulate the light going through an interface. {{Version|0.15}}
* [[File:Sketcher_ConstrainParallel.svg|32px]] [[Sketcher_ConstrainParallel|Parallel]]: Constrains lines to be parallel.


* [[File:Sketcher_ConstrainPerpendicular.svg|32px]] [[Sketcher_ConstrainPerpendicular|Perpendicular]]: Constrains two lines to be perpendicular, or two edges, or an edge and an axis, to be perpendicular at their intersection. The constraint can also connect two edges, forcing them to be perpendicular at the joint.
* [[File:Sketcher_ConstrainInternalAlignment.svg|32px]] [[Sketcher_ConstrainInternalAlignment|Internal alignment]]: Aligns selected elements to selected shape (e.g. a line to become major axis of an ellipse). {{Version|0.15}}


* [[File:Sketcher_ConstrainTangent.svg|32px]] [[Sketcher_ConstrainTangent|Tangent or collinear]]: Constrains two edges, or an edge and an axis, to be tangent. The constraint can also connect two edges, forcing them to be tangent at the joint. If two lines are selected they are made collinear.
* [[File:Sketcher_ToggleDrivingConstraint.svg|32px]] [[Sketcher_ToggleDrivingConstraint|Toggle driving/reference constraint]]: Toggles the toolbar or the selected constraints to/from reference mode. {{Version|0.16}}


* [[File:Sketcher_ConstrainEqual.svg|32px]] [[Sketcher_ConstrainEqual|Equal]]: Constrains edges to have an equal length (lines) or curvature (other edges except B-splines).
* [[File:Sketcher_ToggleActiveConstraint.svg|32px]] [[Sketcher_ToggleActiveConstraint|Activate/Deactivate constraint]]: enable or disable an already placed constraint. {{Version|0.19}}

* [[File:Sketcher_ConstrainSymmetric.svg|32px]] [[Sketcher_ConstrainSymmetric|Symmetric]]: Constrains two points to be symmetrical around a line or axis, or around a third point.

* [[Image:Sketcher_ConstrainBlock.svg|32px]] [[Sketcher_ConstrainBlock|Block]]: Blocks edges in place with a single constraint. It is mainly intended for B-splines.

* [[File:Sketcher_ConstrainSnellsLaw.svg|32px]] [[Sketcher_ConstrainSnellsLaw|Refraction (Snell's law)]]: Constrains two lines to follow the law of refraction of light as it penetrates through an interface.

* <span id="Sketcher_CompToggleConstraints">[[Image:Sketcher_ToggleDrivingConstraint.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Toggle constraints:</span><!--Do not edit span id: the Sketcher_CompToggleConstraints pages redirect here-->

:* [[File:Sketcher_ToggleDrivingConstraint.svg|32px]] [[Sketcher_ToggleDrivingConstraint|Toggle driving/reference constraint]]: Toggles the dimensional constraint creation tools between driving and reference mode, or toggles selected dimensional constraints between those modes.

:* [[File:Sketcher_ToggleActiveConstraint.svg|32px]] [[Sketcher_ToggleActiveConstraint|Activate/deactivate constraint]]: Activates or deactivates selected constraints.


===Sketcher tools===
===Sketcher tools===


* <span id="Sketcher_CompCreateFillets">[[Image:Sketcher_CreateFillet.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Create fillet/chamfer:</span><!--Do not edit span id: the Sketcher_CompCreateFillets pages redirect here-->
* [[File:Sketcher_SelectElementsWithDoFs.svg|32px]] [[Sketcher_SelectElementsWithDoFs|Select solver DOFs]]: Highlights in green the geometry with degrees of freedom (DOFs), i.e. not fully constrained. {{Version|0.18}}


* [[File:Sketcher_CloseShape.svg|32px]] [[Sketcher_CloseShape|Close Shape]]: Creates a closed shape by applying coincident constraints to endpoints {{Version|0.15}}
:* [[Image:Sketcher_CreateFillet.svg|32px]] [[Sketcher_CreateFillet|Fillet]]: Creates a fillet between two non-parallel edges. {{Version|1.0}}: The tool can also create a chamfer.


:* [[Image:Sketcher_CreateChamfer.svg|32px]] [[Sketcher_CreateChamfer|Chamfer]]: creates a chamfer between two non-parallel edges. This is the same tool as [[Sketcher_CreateFillet|Fillet]] but with a different initial mode. {{Version|1.0}}
* [[File:Sketcher_ConnectLines.svg|32px]] [[Sketcher_ConnectLines|Connect Edges]]: Connect sketcher elements by applying coincident constraints to endpoints {{Version|0.15}}


* <span id="Sketcher_CompCurveEdition">[[Image:Sketcher_Trimming.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Edit edge:</span><!--Do not edit span id: the Sketcher_CompCurveEdition pages redirect here-->
* [[File:Sketcher_SelectConstraints.svg|32px]] [[Sketcher_SelectConstraints|Select Constraints]]: Selects the constraints of a sketcher element {{Version|0.15}}


:* [[Image:Sketcher_Trimming.svg|32px]] [[Sketcher_Trimming|Trim]]: Trims an edge at the nearest intersections with other edges.
* [[File:Sketcher_SelectElementsAssociatedWithConstraints.svg|32px]] [[Sketcher_SelectElementsAssociatedWithConstraints|Select Elements Associated with constraints]]: Select sketcher elements associated with constraints {{Version|0.15}}


:* [[Image:Sketcher_Split.svg|32px]] [[Sketcher_Split|Split]]: Splits an edge while transferring most constraints.
* [[File:Sketcher_SelectRedundantConstraints.svg|32px]] [[Sketcher_SelectRedundantConstraints|Select Redundant Constraints]]: Selects redundant constraints of a sketch {{Version|0.15}}


:* [[File:Sketcher_Extend.svg|32px]] [[Sketcher_Extend|Extend]]: Extends or shortens a line or an arc to an arbitrary location, or to a target edge or point.
* [[File:Sketcher_SelectConflictingConstraints.svg|32px]] [[Sketcher_SelectConflictingConstraints|Select Conflicting Constraints]]: Selects conflicting constraints of a sketch {{Version|0.15}}


* [[Image:Sketcher_External.svg|32px]] [[Sketcher_External|External geometry]]: Projects edges and/or vertices belonging to objects outside the sketch onto the sketch plane.
* [[File:Sketcher_RestoreInternalAlignmentGeometry.svg|32px]] [[Sketcher_RestoreInternalAlignmentGeometry|Show/Hide internal geometry]]: Recreates missing/deletes unneeded internal geometry of a selected ellipse, arc of ellipse/hyperbola/parabola or B-spline.


* [[File:Sketcher_SelectOrigin.svg|32px]] [[Sketcher_SelectOrigin|Select Origin]]: Selects the origin of a sketch {{Version|0.15}}
* [[File:Sketcher_CarbonCopy.svg|32px]] [[Sketcher_CarbonCopy|Carbon copy]]: Copies all geometry and constraints from another sketch into the active sketch.


* [[File:Sketcher_SelectVerticalAxis.svg|32px]] [[Sketcher_SelectVerticalAxis|Select Vertical Axis]]: Selects the vertical axis of a sketch {{Version|0.15}}
* [[File:Sketcher_SelectOrigin.svg|32px]] [[Sketcher_SelectOrigin|Select origin]]: Selects the origin of the sketch.


* [[File:Sketcher_SelectHorizontalAxis.svg|32px]] [[Sketcher_SelectHorizontalAxis|Select Horizontal Axis]]: Selects the horizontal axis of a sketch {{Version|0.15}}
* [[File:Sketcher_SelectHorizontalAxis.svg|32px]] [[Sketcher_SelectHorizontalAxis|Select horizontal axis]]: Selects the horizontal axis of the sketch.


* [[File:Sketcher_SelectVerticalAxis.svg|32px]] [[Sketcher_SelectVerticalAxis|Select vertical axis]]: Selects the vertical axis of the sketch.
* [[File:Sketcher_Symmetry.svg|32px]] [[Sketcher_Symmetry|Symmetry]]: Copies a sketcher element symmetrical to a chosen line {{Version|0.16}}


* [[File:Sketcher_Clone.svg|32px]] [[Sketcher_Clone|Clone]]: Clones a sketcher element {{Version|0.16}}
* [[File:Sketcher_Translate.svg|32px]] [[Sketcher_Translate|Array transform]]: Moves or optionally creates copies of selected elements. {{Version|1.0}}


* [[File:Sketcher_Copy.svg|32px]] [[Sketcher_Copy|Copy]]: Copies a sketcher element {{Version|0.16}}
* [[File:Sketcher_Rotate.svg|32px]] [[Sketcher_Rotate|Polar transform]]: Rotates or optionally creates rotated copies of selected elements. {{Version|1.0}}


* [[File:Sketcher_Move.svg|32px]] [[Sketcher_Move|Move]]: Moves the selected geometry taking as reference the last selected point. {{Version|0.18}}
* [[File:Sketcher_Scale.svg|32px]] [[Sketcher_Scale|Scale transform]]: Scales or optionally creates scaled copies of selected elements. {{Version|1.0}}


* [[File:Sketcher_RectangularArray.svg|32px]] [[Sketcher_RectangularArray|Rectangular Array]]: Creates an array of selected sketcher elements {{Version|0.16}}
* [[File:Sketcher_Offset.svg|32px]] [[Sketcher_Offset|Offset geometry]]: Creates equidistant edges around selected edges. {{Version|1.0}}


* [[File:Sketcher_DeleteAllGeometry.svg|32px]] [[Sketcher_DeleteAllGeometry|Delete All Geometry]]: Deletes all geometry from the sketch. {{Version|0.18}}
* [[File:Sketcher_Symmetry.svg|32px]] [[Sketcher_Symmetry|Symmetry]]: Creates mirrored copies of selected elements.


* [[File:Sketcher_RemoveAxesAlignment.svg|32px]] [[Sketcher_RemoveAxesAlignment|Remove axes alignment]]: Removes the axes alignment of selected edges by replacing [[Sketcher_ConstrainHorizontal|Horizontal]] and [[Sketcher_ConstrainVertical|Vertical]] constraints with [[Sketcher_ConstrainParallel|Parallel]] and [[Sketcher_ConstrainPerpendicular|Perpendicular]] constraints.
* [[File:Sketcher_DeleteAllConstraints.svg|32px]] [[Sketcher_DeleteAllConstraints|Delete All Constraints]]: Deletes all constraints from the sketch. {{Version|0.18}}

* [[File:Sketcher_DeleteAllGeometry.svg|32px]] [[Sketcher_DeleteAllGeometry|Delete all geometry]]: Deletes all geometry and all constraints from the sketch.

* [[File:Sketcher_DeleteAllConstraints.svg|32px]] [[Sketcher_DeleteAllConstraints|Delete all constraints]]: Deletes all constraints from the sketch.

* <span id="Sketcher_CopyClipboard">[[File:Edit-copy.svg|32px]] Copy in Sketcher: See [[#Copy,_cut_and_paste|Copy, cut and paste]].</span><!--Do not edit span id: the Sketcher_CopyClipboard pages redirect here-->

* <span id="Sketcher_Cut">[[File:Edit-cut.svg|32px]] Cut in Sketcher: See [[#Copy,_cut_and_paste|Copy, cut and paste]].</span><!--Do not edit span id: the Sketcher_Cut pages redirect here-->

* <span id="Sketcher_Paste">[[File:Edit-paste.svg|32px]] Paste in Sketcher: See [[#Copy,_cut_and_paste|Copy, cut and paste]].</span><!--Do not edit span id: the Sketcher_Paste pages redirect here-->


===Sketcher B-spline tools===
===Sketcher B-spline tools===


* [[File:Sketcher_BSplineDegree.svg|32px]] [[Sketcher_BSplineDegree|Show/hide B-spline degree]]
* [[File:Sketcher_BSplineConvertToNURBS.svg|32px]] [[Sketcher_BSplineConvertToNURBS|Convert geometry to B-spline]]: Converts edges to B-splines.


* [[File:Sketcher_BSplinePolygon.svg|32px]] [[Sketcher_BSplinePolygon|Show/hide B-spline control polygon]]
* [[File:Sketcher_BSplineIncreaseDegree.svg|32px]] [[Sketcher_BSplineIncreaseDegree|Increase B-spline degree]]: Increases the degree (order) of B-splines.


* [[File:Sketcher_BSplineComb.svg|32px]] [[Sketcher_BSplineComb|Show/hide B-spline curvature comb]]
* [[File:Sketcher_BSplineDecreaseDegree.svg|32px]] [[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]: Decreases the degree (order) of B-splines.


* [[File:Sketcher_BSplineKnotMultiplicity.svg|32px]] [[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]]
* [[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|32px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]: Increases the multiplicity of a B-spline knot.


* [[File:Sketcher_BSplineDecreaseKnotMultiplicity.svg|32px]] [[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]: Decreases the multiplicity of a B-spline knot.
* [[File:Sketcher_BSplinePoleWeight.svg|32px]] [[Sketcher_BSplinePoleWeight|Show/hide B-spline control point weight]], {{Version|0.19}}


* [[File:Sketcher_BSplineInsertKnot.svg|32px]] [[Sketcher_BSplineInsertKnot|Insert knot]]: Inserts a knot into a B-spline or increases the multiplicity of an existing knot.
* [[File:Sketcher_BSplineConvertToNURB.svg|32px]] [[Sketcher BSplineConvertToNURB|Convert geometry to B-spline]]


* [[File:Sketcher_JoinCurves.svg|32px]] [[Sketcher_JoinCurves|Join curves]]: Creates a B-spline by joining two existing B-splines or other edges. {{Version|0.21}}
* [[File:Sketcher_BSplineIncreaseDegree.svg|32px]] [[Sketcher_BSplineIncreaseDegree|Increase B-spline degree]]


===Sketcher visual===
* [[File:Sketcher_BSplineDecreaseDegree.svg|32px]] [[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]], {{Version|0.19}}


* [[File:Sketcher_SelectElementsWithDoFs.svg|32px]] [[Sketcher_SelectElementsWithDoFs|Select unconstrained DoF]]: Selects the not fully constrained elements in the sketch.
* [[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|32px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]


* [[File:Sketcher_SelectConstraints.svg|32px]] [[Sketcher_SelectConstraints|Select associated constraints]]: Selects the constraints associated with sketch elements.
* [[File:Sketcher_BSplineDecreaseKnotMultiplicity.svg|32px]] [[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]


* [[File:Sketcher_SelectElementsAssociatedWithConstraints.svg|32px]] [[Sketcher_SelectElementsAssociatedWithConstraints|Select associated geometry]]: Selects the sketch elements associated with constraints.
===Sketcher virtual space===


* [[File:Sketcher_SwitchVirtualSpace.svg|32px]] [[Sketcher_SwitchVirtualSpace|Switch Virtual Space]]: Allows you to hide all constraints of a sketch and make them visible again. {{Version|0.17}}
* [[File:Sketcher_SelectRedundantConstraints.svg|32px]] [[Sketcher_SelectRedundantConstraints|Select redundant constraints]]: Selects the redundant constraints in the sketch.


* [[File:Sketcher_SelectConflictingConstraints.svg|32px]] [[Sketcher_SelectConflictingConstraints|Select conflicting constraints]]: Selects the conflicting constraints in the sketch.
===Preferences===


* [[File:Sketcher_ArcOverlay.svg|32px]] [[Sketcher_ArcOverlay|Show/hide circular helper for arcs]]: Shows or hides the circular helpers (underlying virtual circles) for arcs in all sketches. {{Version|1.0}}
* [[Image:Preferences-general.svg|32px]] [[Sketcher_Preferences|Preferences]]: Preferences for the '''Sketcher''' workbench.


* <span id="Sketcher_CompBSplineShowHideGeometryInformation">[[Image:Sketcher_BSplinePolygon.svg|x32px]][[Image:Toolbar_flyout_arrow_blue_background.svg|x32px]] Show/hide B-spline information layer:</span><!--Do not edit span id: the Sketcher_CompBSplineShowHideGeometryInformation pages redirect here-->
== Best Practices ==

Every CAD user develops his own way of working over time, but there are some useful general principles to follow.
:* [[File:Sketcher_BSplineDegree.svg|32px]] [[Sketcher_BSplineDegree|Show/hide B-spline degree]]: Shows or hides the B-spline degree in all sketches.

:* [[File:Sketcher_BSplinePolygon.svg|32px]] [[Sketcher_BSplinePolygon|Show/hide B-spline control polygon]]: Shows or hides the B-spline control polygon in all sketches.

:* [[File:Sketcher_BSplineComb.svg|32px]] [[Sketcher_BSplineComb|Show/hide B-spline curvature comb]]: Shows or hides the B-spline curvature comb in all sketches.

:* [[File:Sketcher_BSplineKnotMultiplicity.svg|32px]] [[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]]: Shows or hides the B-spline knot multiplicity in all sketches.

:* [[File:Sketcher_BSplinePoleWeight.svg|32px]] [[Sketcher_BSplinePoleWeight|Show/hide B-spline control point weight]]: Shows or hides the B-spline control point weight in all sketches.

* [[File:Sketcher_RestoreInternalAlignmentGeometry.svg|32px]] [[Sketcher_RestoreInternalAlignmentGeometry|Show/hide internal geometry]]: Deletes the internal geometry of elements, or recreates missing internal geometry.

* [[File:Sketcher_SwitchVirtualSpace.svg|32px]] [[Sketcher_SwitchVirtualSpace|Switch virtual space]]: (un)hides constraints or switches the visible virtual space.

===Obsolete tools===

* [[File:Sketcher_Clone.svg|32px]] [[Sketcher_Clone|Clone]]: Clones a Sketcher element. Not available in {{VersionPlus|1.0}}.

* [[File:Sketcher_CloseShape.svg|32px]] [[Sketcher_CloseShape|Close shape]]: Creates a closed shape by applying coincident constraints to endpoints. Not available in {{VersionPlus|0.21}}.

* [[File:Sketcher_CreatePointFillet.svg|32px]] [[Sketcher_CreatePointFillet|Corner-preserving fillet]]: Creates a fillet between two non-parallel lines while preserving their corner point. Not available in {{VersionPlus|1.0}}.

* [[File:Sketcher_ConnectLines.svg|32px]] [[Sketcher_ConnectLines|Connect edges]]: Connect Sketcher elements by applying coincident constraints to endpoints. Not available in {{VersionPlus|0.21}}.

* [[File:Sketcher_Copy.svg|32px]] [[Sketcher_Copy|Copy]]: Copies a Sketcher element. Not available in {{VersionPlus|1.0}}.

* [[File:Sketcher_Move.svg|32px]] [[Sketcher_Move|Move]]: Moves the selected geometry taking as reference the last selected point. Not available in {{VersionPlus|1.0}}.

* [[File:Sketcher_RectangularArray.svg|32px]] [[Sketcher_RectangularArray|Rectangular array]]: Creates an array of selected Sketcher elements. Not available in {{VersionPlus|1.0}}.

== Preferences ==

* [[Image:Workbench_Sketcher.svg|32px]] [[Sketcher_Preferences|Preferences]]: Preferences for the Sketcher Workbench.

== Best practices ==

Every CAD user develops their own way of working over time, but there are some useful general principles to follow.


* A series of simple sketches is easier to manage than a single complex one. For example, a first sketch can be created for the base 3D feature (either a pad or a revolve), while a second one can contain holes or cutouts (pockets). Some details can be left out, to be realized later on as 3D features. You can choose to avoid fillets in your sketch if there are too many, and add them as a 3D feature.
* A series of simple sketches is easier to manage than a single complex one. For example, a first sketch can be created for the base 3D feature (either a pad or a revolve), while a second one can contain holes or cutouts (pockets). Some details can be left out, to be realized later on as 3D features. You can choose to avoid fillets in your sketch if there are too many, and add them as a 3D feature.
* Always create a closed profile, or your sketch won't produce a solid, but rather a set of open faces. If you don't want some of the objects to be included in the solid creation, turn them to construction elements with the Construction Mode tool.
* Always create a closed profile, or your sketch won't produce a solid, but rather a set of open faces. If you don't want some of the objects to be included in the solid creation, turn them to construction elements with the Construction Mode tool.
* Use the auto constraints feature to limit the number of constraints you'll have to add manually.
* Use the Auto constraints feature to limit the number of constraints you'll have to add manually.
* As a general rule, apply geometric constraints first, then dimensional constraints, and lock your sketch last. But remember: rules are made to be broken. If you're having trouble manipulating your sketch, it may be useful to constrain a few objects first before completing your profile.
* As a general rule, apply geometric constraints first, then dimensional constraints, and lock your sketch last. But remember: rules are made to be broken. If you're having trouble manipulating your sketch, it may be useful to constrain a few objects first before completing your profile.
* If possible, center your sketch to the origin (0,0) with the lock constraint. If your sketch is not symmetric, locate one of its points to the origin, or choose nice round numbers for the lock distances. In v0.12, external constraints (constraining the sketch to existing 3D geometry like edges or to other sketches) are not implemented. This means that to locate following sketches geometry to your first sketch, you'll need to set distances relative to your first sketch manually. A lock constraint of (25,75) from the origin is more easily remembered than (23.47,73.02).
* If possible, center your sketch to the origin (0,0) with the Lock constraint. If your sketch is not symmetric, locate one of its points to the origin, or choose nice round numbers for the lock distances.
* If you have the possibility to choose between the Length constraint and the Horizontal or Vertical Distance constraints, prefer the latter. Horizontal and Vertical Distance constraints are computationally cheaper.
* If you have the possibility to choose between the Length constraint and the Horizontal or Vertical distance constraints, prefer the latter. Horizontal and Vertical distance constraints are computationally cheaper.
* In general, the best constraints to use are: Horizontal and Vertical Constraints; Horizontal and Vertical Length Constraints; Point-to-Point Tangency. If possible, limit the use of these: the general Length Constraint; Edge-to-Edge Tangency; Fix Point Onto a Line Constraint; Symmetry Constraint.
* In general, the best constraints to use are: Horizontal and Vertical constraints; Horizontal and Vertical length constraints; point-to-point Tangency. If possible, limit the use of these: the general Length constraint; edge-to-edge Tangency; Point on object constraint; Symmetric constraint.
* If in doubt about the validity of a sketch once it is complete (features turn green), close the Sketcher dialog, switch to the [[Image:Workbench_Part.svg|24px]] [[Part_Module|Part Workbench]] and run {{Button|[[File:Part_CheckGeometry.svg|16px]] [[Part_CheckGeometry|Check geometry]]}}.
* If in doubt about the validity of a sketch once it is complete (features turn green), close the Sketcher dialog and use [[File:Sketcher_ValidateSketch.svg|24px]] [[Sketcher_ValidateSketch|Validate sketch]].


<span id="Tutorials"></span>
<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
==チュートリアル==
==チュートリアル==
* [[Sketcher tutorial]] 初心者向け
* [[Sketcher Tutorial]]
* [[Sketcher Micro Tutorial - Constraint Practices]]
</div>
</div>


* [https://forum.freecadweb.org/viewtopic.php?f=36&t=30104 Sketcher tutorial] by chrisb. This is a 70-page long PDF document that serves as a detailed manual for the sketcher. It explains the basics of Sketcher usage, and goes into a lot of detail about the creation of geometrical shapes, and each of the constraints.
* [https://forum.freecadweb.org/viewtopic.php?f=36&t=30104 Sketcher Lecture] by chrisb. This is a more than 80 page PDF document that serves as a detailed manual for the Sketcher. It explains the basics of Sketcher usage, and goes into a lot of detail about the creation of geometrical shapes, and each of the constraints.
* [[Basic Sketcher Tutorial|Basic Sketcher Tutorial]] for beginners
* [[Basic_Sketcher_Tutorial|Basic Sketcher Tutorial]] for beginners
* [[Sketcher Micro Tutorial - Constraint Practices|Sketcher Micro Tutorial - Constraint Practices]]
* [[Sketcher_Micro_Tutorial_-_Constraint_Practices|Sketcher Micro Tutorial - Constraint Practices]]
* [[Sketcher requirement for a sketch|Sketcher requirement for a sketch]] Minimum requirement for a sketch and Complete determination of a sketch
* [[Sketcher_requirement_for_a_sketch|Sketcher requirement for a sketch]] Minimum requirement for a sketch and Complete determination of a sketch

== Scripting ==

The [[Sketcher_scripting|Sketcher scripting]] page contains examples on how to create constraints from Python scripts.

== Examples ==

For some ideas of what can be achieved with Sketcher tools, have a look at: [[Sketcher_Examples|Sketcher examples]].

[[Image:Sketcher_ExampleHinge-01.gif|80px|link=]]
[[Image:Sketcher ExampleHinge-15.png|90px|link=]]




Line 311: Line 503:
</div>
</div>


{{Sketcher Tools navi{{#translation:}}}}
{{Sketcher_Tools_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
[[Category:Workbenches{{#translation:}}]]
[[Category:Workbenches{{#translation:}}]]

Latest revision as of 11:07, 7 May 2024

This page has been marked for translation. But it is still a work in progress!!!
Sketcher workbench icon

はじめに

スケッチャーワークベンチパートデザインワークベンチやその他のワークベンチで使用するための2次元形状を作成するために使われます。 ほとんどのCADモデルでは2次元形状が開始点となることが普通です・・まず簡単な2次元スケッチを'押し出して'3次元形状を作り、その形状の表面に穴を開けるための2次元スケッチを追加したり、スケッチで'突起'(押し出し形状)を定義したりします。 スケッチャーはブーリアン演算と並んで3次元形状デザイン作成の中核を成す機能なのです。

Together with boolean operations defined in the Part Workbench, the Sketcher Workbench, or "The Sketcher" for short, forms the basis of the constructive solid geometry (CSG) method of building solids. Together with PartDesign Workbench operations, it also forms the basis of the feature editing methodology of creating solids. But many other workbenches use sketches as well.

スケッチャーワークベンチの特徴はなんといっても拘束です・・これによって2次元形状を厳密な幾何定義に従って拘束することが可能です。また拘束用ソルバーによって2次元形状の拘束範囲を計算したり、スケッチの自由度を対話的に検査したりすることが可能です。

スケッチャーに向かないもの

スケッチャーは2次元図面を作成するためのものではありません。ソリッド形状を作成するとスケッチは自動的に非表示になります。寸法はスケッチ編集モード時のみ表示されます。

A fully constrained sketch

Constraints

拘束とは何なのか?

拘束は物体の自由度を制限するために使用されます。例えばラインは拘束がない場合は4つの自由度を持ちます。つまり水平方向、垂直方向への移動と拡大縮小と回転が可能です。

水平拘束、垂直拘束、あるいは(他のラインか座標軸の一つに対する)角度拘束を適用すると回転が制限され自由度は3つに減ります。片方の短点を原点に対してロックすることでさらに2つの自由度が減ります。最後にサイズ拘束を適用すれば最後の自由度が無くなります。こうしてラインは完全拘束状態になります。

複数のオブジェクトがある場合は相互に拘束が可能です。二本のラインがあった場合、点一致拘束を使用することでそれぞれの端点をつなぎ合わせることができます。また二本のラインの間の角度を設定したり、二本のラインが垂直になるよう設定することも可能です。ラインに対しては円弧や円の接線となるように拘束することもできます。

拘束には二種類あります。幾何拘束と寸法拘束です。これらについては下の'ツール'セクションで詳しく説明します。

Edit constraints

When a driving dimensional constraint is created, and if the Ask for value after creating a dimensional constraint preference is selected (default), a dialog opens to edit its value.

Sketcher_Edit_Constraint.png

You can enter a numerical value or an expression, and it is possible to name the constraint to facilitate its use in other expressions. You can also check the Reference checkbox to switch the constrain to reference mode.

To edit the value of an existing dimensional constraint do one of the following:

  • Double-click the constraint value in the 3D view.
  • Double-click the constraint in the Sketcher Dialog.
  • Right-click the constraint in the Sketcher Dialog and select the Change value option from the context menu.

Reposition constraints

Dimensional constraints can be repositioned in the 3D view by dragging. Hold down the left mouse button over the constraint value and move the mouse. The symbols of geometric constraints are positioned automatically and cannot be moved.

Profile sketches

To create a sketch that can be used as a profile for generating solids certain rules must be followed:

  • The sketch must contain only closed contours. Gaps between endpoints, however small, are not allowed.
  • Contours can be nested, to create voids, but should not self-intersect or intersect other contours.
  • Contours cannot share edges with other contours. Duplicate edges must be avoided.
  • T-connections, that is more than two edges sharing a common point, or a point touching an edge, are not allowed.

These rules do not apply to construction geometry (default color blue), which is not shown outside edit mode, or if the sketch is used for a different purpose. Depending on the workbench and the tool that will use the profile sketch, additional restrictions may apply.

Drawing aids

The Sketcher Workbench has several drawing aids and other features that can help when creating geometry and applying constraints.

Continue modes

There are two continue modes: Geometry creation "Continue Mode" and Constraint creation "Continue Mode". If these are checked (default) in the preferences, related tools will restart after finishing. To exit an continuous tool press Esc or the right mouse button. This must be repeated if a continuous geometry tool has already received input. You can also exit a continuous tool by starting another geometry or constraint creation tool. Note that pressing Esc if no tool is active will exit sketch edit mode. Uncheck the Esc can leave sketch edit mode preference if you often inadvertently press Esc too many times.

Auto constraints

In sketches that have Auto constraints checked (default) several constraints are applied automatically. The icon of a proposed automatic constraint is shown next to the cursor when it is placed correctly. Left-Clicking will then apply that constraint. This is a per-sketch setting that can be changed in the Sketcher Dialog or by changing the ビューAutoconstraints property of the sketch.

The following constraints are applied automatically:

Snapping

introduced in version 0.21

It is possible to snap to grid lines and grid intersection, to edges of geometry and midpoints of lines and arcs, and to certain angles. Please note that snapping does not produce constraints in and of itself. For example, only if Auto constraints is switched on will snapping to an edge produce a Point on object constraint. But just picking a point on the edge would then have the same result.

On-View-Parameters

introduced in version 1.0

Depending on the selected option in the preferences only the dimensional On-View-Parameters or both the dimensional and the positional On-View-Parameters can be enabled. Positional parameters allow the input of exact coordinates, for example the center of a circle, or the start point of a line. Dimensional parameters allow the input of exact dimensions, for example the radius of a circle, or the length and angle of a line. On-View-Parameters are not available for all tools.

Determining the center point of a circle with the positional parameters enabled

Determining the radius of a circle with the dimensional parameters enabled

If values are entered and confirmed by pressing Enter or Tab, related constraints are added automatically. If two parameters are displayed at the same time, for example the X and Y coordinate of a point, it is possible to enter one value and pick a point to define the other. Depending on the object additional constraints may be required to fully constrain it. Constraints resulting from On-View-Parameters take precedence over those that may result from Auto constraints.

Arc created by entering all On-View-Parameters with resulting automatically created constraints

Coordinate display

If the Show coordinates beside cursor while editing preference is checked (default), the parameters of the current geometry tool (coordinates, radius, or length and angle) are displayed next to the cursor. This is deactivated while On-View-Parameters are shown.

Selection methods

While a sketch is in edit mode the following selection methods can be used:

3D view element selection

As elsewhere in FreeCAD, an element can be selected in the 3D view with a single left mouse click. But there is no need to hold down the Ctrl key when selecting multiple elements. Holding down that key is possible though and has the advantage that you can miss-click without losing the selection. Edges, points and constraints can be selected in this manner.

3D view box selection

Box selection in the 3D view works without using Std BoxSelection or Std BoxElementSelection:

  1. Make sure that no tool is active.
  2. Do one of the following:
    • Click in an empty area and drag a rectangle from left to right to select elements that lie completely inside the rectangle.
    • Click in an empty area and drag a rectangle from right to left to also select elements that touch or cross the rectangle.

You can box-select edges and points, constraints cannot be box-selected.

3D view connected geometry selection

introduced in version 1.0

Double-clicking an edge in the 3D view will select all edges directly and indirectly connected with that edge via endpoints. There is no need for the edges to be connected with Coincident constraints, endpoints need only have the same coordinates.

Sketcher Dialog selection

Edges and points can also be selected from the Elements section of the Sketcher Dialog, and constraints from the Constraints section of that dialog.

Copy, cut and paste

introduced in version 1.0

The standard keyboard shortcuts, Ctrl+C, Ctrl+X and Ctrl+V, can be used to copy, cut and paste selected Sketcher geometry including related constraints. But these tools are also available from the Sketch → Sketcher tools menu. They can be used within the same sketch but also between different sketches or separate instances of FreeCAD. Since the data is copied to the clipboard in the form of Python code, it can be used in other ways too (e.g. shared on the forum).

Tools

ツール

スケッチャーワークベンチのツールはスケッチャーワークベンチをロードすると表示されるSketcherメニューに配置されています。

Some tools are also available from the 3D view context menu while a sketch is in edit mode, or from the context menus of the Sketcher Dialog.

introduced in version 0.21: If a sketch is in edit mode the Structure toolbar is hidden as none of its tools can then be used.

General

Sketcher toolbar

  • Edit sketch: Opens the Sketcher Dialog to edit an existing sketch.
  • Reorient sketch: Places a sketch on one of the main planes with an optional offset. It can also be used to detach a sketch.
  • Validate sketch: Can analyze and repair a sketch that is no longer editable or has invalid constraints, or add missing coincident constraints.
  • Mirror sketch: Mirrors sketches across their X axis, Y axis, or origin.

Sketcher Edit Mode toolbar

  • View section: Toggles a temporary section plane that hides any objects and parts of objects in front of the sketch plane.

Sketcher edit tools toolbar

Other

  • Stop operation: Stops any currently running geometry or constraint creation tool.

Sketcher geometries

These are tools for creating objects.

  • Create (poly)line:
  • Polyline: Creates a series of line and arc segments connected by their endpoints. The tool has several modes.
  • Create arc:
  • Create circle/ellipse:
  • Ellipse by center: Creates an ellipse by its center, an endpoint of one of its axes, and a point along the ellipse. introduced in version 1.0: Or by both endpoints of one of its axes and a point along the ellipse.
  • Create rectangle:
  • Create regular polygon:
  • Square: Creates a square. Idem.
  • Octagon: Creates an octagon. Idem.
  • Regular polygon: Creates a regular polygon. The number of sides can be specified.
  • Create slot:
  • Slot: Creates a slot.
  • Create B-spline:
  • Toggle construction geometry: Either toggles the geometry creation tools to/from construction mode, or toggles selected geometry to/from construction geometry.

Sketcher constraints

These are tools for creating constraints. Some constraints require the use of Helper constraints.

  • Dimensional constraints:
  • Dimension: Is the context-sensitive constraint tool of the Sketcher Workbench. Based on the current selection, it offers appropriate dimensional constraints, but also geometric constraints. introduced in version 1.0
  • Horizontal distance: Fixes the horizontal distance between two points or the endpoints of a line. If a single point is pre-selected, the distance is relative to the origin of the sketch.
  • Vertical distance: Fixes the vertical distance between two points or the endpoints of a line. If a single point is pre-selected, the distance is relative to the origin of the sketch.
  • Distance: Fixes the length of a line, the distance between two points, the perpendicular distance between a point and a line; or, introduced in version 0.21, the distance between the edges of two circles or arcs, or between the edge of a circle or arc and a line; or, introduced in version 1.0, the length of an arc.
  • Auto radius/diameter: Fixes the radius of arcs and B-spline weight circles, and the diameter of circles.
  • Radius: Fixes the radius of circles, arcs and B-spline weight circles.
  • Diameter: Fixes the diameter of circles and arcs.
  • Angle: Fixes the angle between two edges, the angle of a line with the horizontal axis of the sketch, or the aperture angle of a circular arc.
  • Lock: Applies Horizontal distance and Vertical distance constraints to points. If a single point is selected the constraints reference the origin of the sketch. If two or more points are selected the constraints reference the last point in the selection.
  • Coincident: Creates a coincident constraint between points, or a concentric constraint.
  • Horizontal/vertical constraints:
  • Horizontal: Constrains lines or pairs of points to be horizontal.
  • Vertical: Constrains lines or pairs of points to be vertical.
  • Parallel: Constrains lines to be parallel.
  • Perpendicular: Constrains two lines to be perpendicular, or two edges, or an edge and an axis, to be perpendicular at their intersection. The constraint can also connect two edges, forcing them to be perpendicular at the joint.
  • Tangent or collinear: Constrains two edges, or an edge and an axis, to be tangent. The constraint can also connect two edges, forcing them to be tangent at the joint. If two lines are selected they are made collinear.
  • Equal: Constrains edges to have an equal length (lines) or curvature (other edges except B-splines).
  • Symmetric: Constrains two points to be symmetrical around a line or axis, or around a third point.
  • Block: Blocks edges in place with a single constraint. It is mainly intended for B-splines.
  • Refraction (Snell's law): Constrains two lines to follow the law of refraction of light as it penetrates through an interface.
  • Toggle constraints:
  • Toggle driving/reference constraint: Toggles the dimensional constraint creation tools between driving and reference mode, or toggles selected dimensional constraints between those modes.

Sketcher tools

  • Create fillet/chamfer:
  • Edit edge:
  • Trim: Trims an edge at the nearest intersections with other edges.
  • Split: Splits an edge while transferring most constraints.
  • Extend: Extends or shortens a line or an arc to an arbitrary location, or to a target edge or point.
  • External geometry: Projects edges and/or vertices belonging to objects outside the sketch onto the sketch plane.
  • Carbon copy: Copies all geometry and constraints from another sketch into the active sketch.
  • Symmetry: Creates mirrored copies of selected elements.

Sketcher B-spline tools

  • Insert knot: Inserts a knot into a B-spline or increases the multiplicity of an existing knot.

Sketcher visual

  • Show/hide B-spline information layer:

Obsolete tools

  • Clone: Clones a Sketcher element. Not available in version 1.0 and above.
  • Close shape: Creates a closed shape by applying coincident constraints to endpoints. Not available in version 0.21 and above.
  • Corner-preserving fillet: Creates a fillet between two non-parallel lines while preserving their corner point. Not available in version 1.0 and above.
  • Connect edges: Connect Sketcher elements by applying coincident constraints to endpoints. Not available in version 0.21 and above.
  • Copy: Copies a Sketcher element. Not available in version 1.0 and above.
  • Move: Moves the selected geometry taking as reference the last selected point. Not available in version 1.0 and above.
  • Rectangular array: Creates an array of selected Sketcher elements. Not available in version 1.0 and above.

Preferences

Best practices

Every CAD user develops their own way of working over time, but there are some useful general principles to follow.

  • A series of simple sketches is easier to manage than a single complex one. For example, a first sketch can be created for the base 3D feature (either a pad or a revolve), while a second one can contain holes or cutouts (pockets). Some details can be left out, to be realized later on as 3D features. You can choose to avoid fillets in your sketch if there are too many, and add them as a 3D feature.
  • Always create a closed profile, or your sketch won't produce a solid, but rather a set of open faces. If you don't want some of the objects to be included in the solid creation, turn them to construction elements with the Construction Mode tool.
  • Use the Auto constraints feature to limit the number of constraints you'll have to add manually.
  • As a general rule, apply geometric constraints first, then dimensional constraints, and lock your sketch last. But remember: rules are made to be broken. If you're having trouble manipulating your sketch, it may be useful to constrain a few objects first before completing your profile.
  • If possible, center your sketch to the origin (0,0) with the Lock constraint. If your sketch is not symmetric, locate one of its points to the origin, or choose nice round numbers for the lock distances.
  • If you have the possibility to choose between the Length constraint and the Horizontal or Vertical distance constraints, prefer the latter. Horizontal and Vertical distance constraints are computationally cheaper.
  • In general, the best constraints to use are: Horizontal and Vertical constraints; Horizontal and Vertical length constraints; point-to-point Tangency. If possible, limit the use of these: the general Length constraint; edge-to-edge Tangency; Point on object constraint; Symmetric constraint.
  • If in doubt about the validity of a sketch once it is complete (features turn green), close the Sketcher dialog and use Validate sketch.

チュートリアル

Scripting

The Sketcher scripting page contains examples on how to create constraints from Python scripts.

Examples

For some ideas of what can be achieved with Sketcher tools, have a look at: Sketcher examples.