Draft Arc 3Points

Draft Arc 3Points

Menu location
Drafting → Arc tools → Arc by 3 points
2D Drafting → Arc by 3 points
Workbenches
Draft, BIM
Default shortcut
A T
Introduced in version
0.19
See also
Draft Arc, Draft Circle

Description

The Draft Arc 3Points command creates a circular arc on the current working plane from three points that define its circumference. The center and radius are calculated from these points.

A Draft Arc is in fact a Draft Circle with a DataFirst Angle that is not the same as its DataLast Angle.

Arc defined by three points on its circumference

Usage

See also: Draft Tray, Draft Snap and Draft Constrain.

  1. There are several ways to invoke the command:
    • Press the Arc by 3 points button.
    • Draft: Select the Drafting → Arc tools → Arc by 3 points option from the menu.
    • BIM: Select the 2D Drafting → Arc by 3 points option from the menu.
    • Use the keyboard shortcut: A then T.
  2. The Arc by 3 points task panel opens. See Options for more information.
  3. Pick the first point in the 3D view, or type coordinates and press the Enter point button.
  4. Pick the second point in the 3D view, or type coordinates and press the Enter point button.
  5. Pick the third point in the 3D view, or type coordinates and press the Enter point button.

Options

The single character keyboard shortcuts available in the task panel can be changed. See Draft Preferences. The shortcuts mentioned here are the default shortcuts (for version 1.0).

Notes

Preferences

See also: Preferences Editor and Draft Preferences.

Properties

See Draft Circle.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Arc by 3 points use the make_arc_3points method of the Draft module:

arc = make_arc_3points(points, placement=None, face=False, support=None, map_mode="Deactivated", primitive=False)
For example: support=[(obj, ("Face1"))].

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

points = [App.Vector(0, 0, 0),
          App.Vector(5, 10, 0),
          App.Vector(10, 0, 0)]

arc = Draft.make_arc_3points(points)

doc.recompute()