Sketcher ConstrainDistance

From FreeCAD Documentation

Sketcher ConstrainDistance

Menu location
Sketch → Sketcher constraints → Constrain distance
Workbenches
Sketcher
Default shortcut
K D
Introduced in version
-
See also
Sketcher Constrain horizontal distance, Sketcher Constrain vertical distance

Description

Constrain distance defines the length of a line, the perpendicular distance between a point and a line, the distance between two points, or, introduced in version 0.21, the distance between the edges of two circles or between the edge of a circle and a line.

Usage

  1. Pick one line, or one point and one line, or two points, or the edges of two circles, or the edge of one circle and one line.
  2. There are several ways to invoke the command:
    • Press the Constrain distance button in the Sketcher toolbar.
    • Use the K then D keyboard shortcut.
    • Use the Sketch → Sketcher constraints → Constrain distance entry from the top menu.
  3. A pop up dialog opens to edit or confirm the value. Press OK to validate.

Note: the constraint tool can also be started with no prior selection (apart from circle to circle and circle to line cases). To set the perpendicular distance between a point and a line, the point needs to be selected first. By default the command will be in continue mode to create new constraints; press the right mouse button or Esc once to quit the command.

Hint

If applicable please consider using the Horizontal distance or Vertical distance constraints instead. These constraints are more robust and faster to calculate than the ConstrainDistance tool.

Scripting

Distance from origin:

Sketch.addConstraint(Sketcher.Constraint('Distance', Edge, PointOfEdge, -1, 1, App.Units.Quantity('123.0 mm')))

Distance between two vertices:

Sketch.addConstraint(Sketcher.Constraint('Distance', Edge1, PointOfEdge1, Edge2, PointOfEdge2, App.Units.Quantity('123.0 mm')))

Length of line (the GUI allows selecting the edge itself, but it is just a shorthand for using the two extremities of the same line):

Sketch.addConstraint(Sketcher.Constraint('Distance', Line, 1, Line, 2, App.Units.Quantity('123.0 mm')))

Distance from point (Edge, PointOfEdge) to perpendicular point on line (Line):

Sketch.addConstraint(Sketcher.Constraint('Distance', Edge, PointOfEdge, Line, 0, App.Units.Quantity('123.0 mm')))

Distance between the edges of two circles:

Sketch.addConstraint(Sketcher.Constraint('Distance', Circle1, 0, Circle2, 0, App.Units.Quantity('123.0 mm')))

The Sketcher scripting page explains the values which can be used for Edge, Edge1, Edge2, PointOfEdge, PointOfEdge1, PointOfEdge2, Line, Circle1 and Circle2, and contains further examples on how to create constraints from Python scripts.