From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Draft Rotate and the translation is 17% complete.
Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский
Arrow-left.svg Previous: Draft Move.svg Move
Next: Scale Draft Scale.svg Arrow-right.svg

Draft Rotate.svg Draft Rotate

poziția meniului
Draft → Rotate
Draft, Arch
Prezentat în versiune
A se vedea, de asemenea,
nici unul


Acest instrument rotește sau copiază obiectele selectate cu un unghi dat în jurul unui punct de pe work plane curent. Dacă nu este selectat niciun obiect, veți fi invitat să selectați unul ..

The command can be used on 2D objects created with the Draft Workbench or Sketcher Workbench, but also on many 3D objects such as those created with the Part Workbench, PartDesign Workbench or Arch Workbench.

Draft Rotate example.jpg

Rotating an object around a center point

Cum se folosește

See also: Draft Snap and Draft Constrain.

  1. Select objects you wish to rotate or copy
  2. Press the Draft Rotate.png Draft Rotate button, or press R then O keys
  3. Click a center point on the 3D view, or type a coordinate
  4. Click a second point on the 3D view, or give a reference angle
  5. Click a third point on the 3D view, or give a rotation angle


The single character keyboard shortcuts and the modifier key mentioned here can be changed. See Draft Preferences.

  • Press X, Y or Z after a point to constrain the next point on the given axis.
  • To enter coordinates manually, simply enter the numbers, then press ENTER between each X, Y and Z component.
  • Press T or click the checkbox to check/uncheck the Continue button. If continue mode is on, the Rotate tool will restart after you finish or close it, allowing you to rotate or copy the objects another time without pressing the Rotate button again.
  • Pressing ALT or C or clicking the Copy button will make a copy of the objects, instead of rotating them. If you keep ALT pressed after clicking the third point, you will be able to place more copies, until you release the ALT key.
  • Press CTRL while drawing to force snapping your point to the nearest snap location, independently of the distance.
  • Press SHIFT while drawing to constrain your next point horizontally or vertically in relation to the rotation center.
  • Press ESC or the Cancel button to abort the current command.


  • An Object that is attached cannot be rotated with the Draft Rotate command. To rotate it either its DateSupport object has to be rotated, or its DateAttachment Offset has to be changed.


See also: Preferences Editor and Draft Preferences.

  • To change the number of decimals used for the input of coordinates and angles: Edit → Preferences... → General → Units → Units settings → Number of decimals.
  • To store and reuse the same copy mode setting across commands: Edit → Preferences... → Draft → General settings → Draft tools options → Global copy mode.
  • To reselect the base objects after copying objects: Edit → Preferences... → Draft → General settings → Draft tools options → Select base objects after copying.



The Rotate tool can by used in macros and from the python console by using the following function:

rotated_list = rotate(objectslist, angle, center=Vector(0,0,0), axis=Vector(0,0,1), copy=False)
  • Rotates the given object or the objects contained in the given list with the given angle around the given center if provided, using axis as a rotation axis.
  • If axis is omitted, the rotation will be around the vertical Z axis.
  • If copymode is True, the actual objects are not moved, but copies are created instead.
  • Returns the objects (or their copies is copymode was True).


import FreeCAD as App
import Draft

doc = App.newDocument()

polygon1 = Draft.make_polygon(3, radius=300)
Draft.move(polygon1, App.Vector(1000, 0, 0))

# Rotation around the origin
angle1 = 45
rot2 = Draft.rotate(polygon1, angle1, copy=True)
rot3 = Draft.rotate(polygon1, 2*angle1, copy=True)
rot4 = Draft.rotate(polygon1, 4*angle1, copy=True)

polygon2 = Draft.make_polygon(3, radius=1000)
polygon3 = Draft.make_polygon(5, radius=500)
Draft.move(polygon2, App.Vector(2000, 0, 0))
Draft.move(polygon3, App.Vector(2000, 0, 0))

# Rotation around another point
angle2 = 60
cen = App.Vector(3100, 0, 0)
list2 = [polygon2, polygon3]
rot_list2 = Draft.rotate(list2, angle2, center=cen, copy=True)
rot_list3 = Draft.rotate(list2, 2*angle2, center=cen, copy=True)
rot_list4 = Draft.rotate(list2, 4*angle2, center=cen, copy=True)


Arrow-left.svg Previous: Draft Move.svg Move
Next: Scale Draft Scale.svg Arrow-right.svg