Draft Move: Difference between revisions

From FreeCAD Documentation
m (letter)
(Moved to "how to use")
Line 88: Line 88:
}}
}}
<translate>
<translate>

==Limitations== <!--T:12-->
* When moving a document object that is based on a [[Sketcher Sketch]], for example, a [[PartDesign Pad]] or [[PartDesign Revolution]], you must move the original sketch. If you move the derived object, it will just go back to the position defined by the sketch.


== Snapping, Constraining, and more == <!--T:13-->
== Snapping, Constraining, and more == <!--T:13-->

Revision as of 19:11, 12 November 2018

Draft Move

Menu location
Draft → Move
Workbenches
Draft, Arch
Default shortcut
M V
Introduced in version
0.7
See also
Draft Array, Path Array

Description

The Move tool moves or copies the selected objects from one point to another. If no object is selected, you will be invited to select one.

To produce various copies in different arrangements use Draft Array, Draft PathArray and Draft PointArray.

How to use

  1. Select the objects you wish to move or copy.
  2. Press the Draft Move button, or press M then V keys.
  3. Click a first point on the 3D view, or type a coordinate and press the add point button. This serves as the base point of the operation.
  4. Click another point on the 3D view, or type a coordinate and press the add point button. This is the new position of the base point.

The move operation can be used on 2D shapes created with the Draft Workbench or Sketcher Workbench, but can also be used on many types of 3D objects such as those created with the Part Workbench or Arch Workbench.

Options

  • 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. You can press the add point button when you have the desired values to insert the point.
  • Press R or click the checkbox to toggle relative mode. If relative mode is on, the coordinates of the next point are relative to the last one; if not, they are absolute, taken from the origin (0,0,0).
  • Press T or click the checkbox to toggle continue mode. If continue mode is on, the Move tool will restart after you finish the operation, allowing you to move or copy the objects again without pressing the tool button again.
  • Press P or click the checkbox to toggle copy mode. If copy mode is on, the Move tool will keep the original shape in its place but will make a copy in the second point.
You can use both T and P to place several copies in sequence. In this case, the duplicated element is the last placed copy.
  • Hold Alt after the first point to also toggle copy mode. Keeping Alt pressed after clicking on the second point will allow you to continue placing copies; release Alt to finish the operation and see all copies.
  • Hold Ctrl while moving to force snapping your point to the nearest snap location, independently of the distance.
  • Hold Shift while moving to constrain your next point horizontally or vertically in relation to the last one.
  • Press Esc or the Close button to abort the current command; copies already placed will remain.

Scripting

See also: FreeCAD Scripting Basics, Draft API, and the autogenerated API documentation.

The Move tool can be used in macros and from the Python console by using the following function:

movedlist = move(objectslist, vector, copy=False)
  • Moves the base point of the objects in objectlist by the displacement and direction indicated by vector.
This vector is relative to the base point of the object, which means that if an object is moved 2 units, and then another 2 units, it will have moved 4 units in total from its original position.
  • If copy is True copies are created instead of moving the original objects.
  • movedlist is returned with the original moved objects, or with the new copies.

Example:

import FreeCAD, Draft

Polygon1 = Draft.makePolygon(5, radius=1000)
Polygon2 = Draft.makePolygon(3, radius=500)
Polygon3 = Draft.makePolygon(6, radius=220)

Draft.move(Polygon1, FreeCAD.Vector(500, 500, 0))
Draft.move(Polygon1, FreeCAD.Vector(500, 500, 0))
Draft.move(Polygon2, FreeCAD.Vector(1000, -1000, 0))
Draft.move(Polygon3, FreeCAD.Vector(-500, -500, 0))

# Select the objects to create a selection list
List1 = [Polygon1, Polygon2, Polygon3]

vector = FreeCAD.Vector(-2000, -2000, 0)
List2 = Draft.move(List1, vector, copy=True)
List3 = Draft.move(List1, -2*vector, copy=True)

Snapping, Constraining, and more

Preferences

Moving is affected by the snapping preferences found in Draft Preferences. Go to Edit → Preferences → Draft → Grid and snapping.

File:Pref Draft Snapping.png

By default the option "Always snap (disable snap mod)" is active, which means that you don't need to press a modifier key to activate the snapping tools. The default keys are:

  • Shift constraint modifier, to constraint the movement of the cursor along the X, Y, or Z axis.
  • Ctrl snap modifier, to snap the cursor to specific modes given by Draft Snap.
  • Alt alternative modifier, to activate an alternative function for the tool.

Moving along a specific axis

In order to move along a specific axis, you must first select a working plane containing this axis (see the selecting working plane page for more information).

After selecting the first point to move, start to move roughly in the axis direction and hold the SHIFT key. FreeCAD will automatically find which axis you are trying to follow and stick to this axis.

(This tool is especially powerful if you want to align a point to another one, regarding to an axis only).

More on constrain move here

Snapping

If you have a point that you want to directly match on a solid, you can use snapping see the snapping page on how to activate the snap. Select the first point (using snap or not), and then hover to the second point until you see it highlighted.

By default the snapping mode is activated, but you may have it deactivated in the preferences (see preceding section), in that case, you will have to hold the Snapping key Ctrl by default.

Alt Mode

Alt mode allows you to copy and object instead of moving it only.