Draft Scale

From FreeCAD Documentation
Revision as of 11:34, 20 October 2020 by Yorik (talk | contribs)
Jump to navigation Jump to search
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 Downgrade.svg Downgrade
Next: Edit Draft Edit.svg Arrow-right.svg

Draft Scale.svg Draft Scale

Menu location
Draft → Scale
Workbenches
Draft, Arch
Default shortcut
S C
Introduced in version
-
See also
Draft Clone, Draft Offset


Description

The Draft Scale.svg Draft Scale tool scales or copies selected objects around a base point.

The Scale tool can produce a copy or a Draft Clone at a defined scale. Use Draft Offset to produce a scaled copy of a wire set at a certain offset. A simple copy with no scaling can be produced with Draft Move.

This tool can be used on 2D shapes created with the Workbench Draft.svg Draft Workbench but can also be used on many types of 3D objects such as those created with the Workbench Part.svg Part or Workbench PartDesign.svg PartDesign workbenches.

Draft Scale example.jpg

Scaling one object from a reference point to a second point


Usage

  1. Select the objects that you wish to scale.
  2. Press the Draft Scale.svg Draft Scale button, or press S then C keys. If no object is selected, you will be invited to select one.
  3. Click a first point on the 3D view, or type a coordinate and press the Draft AddPoint.svg add point button. This serves as the base point of the operation.
  4. Set the X, Y, and Z factors, and the appropriate result options, then press Enter or the OK button to finish the operation.

Options

  • To enter coordinates manually, simply enter the numbers, then press Enter between each X, Y and Z component. You can press the Draft AddPoint.svg add point button when you have the desired values to insert the point.
  • Fill in the X, Y and Z factors to define the scaling along that direction.
    • Click the "Uniform scaling" checkbox to lock the X, Y and Z factors to the same value.
    • Click the "Working plane orientation" checkbox to lock the X, Y and Z scaling along the current Working Plane; otherwise, global X, Y and Z directions are used.
  • Three options control the result of the scaling operation:
    • Create a clone. A Draft Clone of the original object will be created. This will work for all object types.
Note: even if the scaling factors are left at their default values (1.0, 1.0, 1.0), once the clone is created you will be able to change these factors manually in the property editor.
  • Modify original. The original object will have its size modified. This will only work with Draft objects and non-parametric Part shapes.
  • Create a copy. A scaled copy of the original object will be created. This will work for all object types, but only the copies of Draft objects will be parametric.
Note: a copy is a completely different object from the original shape; it will be created at the specified scale, and then will have its own set of properties. On the other hand, a Draft Clone is linked to the original shape and the only property that can be changed is the scale.
  • Image planes created with the Image workbench are also supported (but not in clone mode).

Scripting

See also: Draft API and FreeCAD Scripting Basics.

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

scaledlist = scale(objectslist, delta=Vector(1,1,1), center=Vector(0,0,0), copy=False, legacy=False)
  • Scales the objects in objectslist by the factors specified by the components of delta, defined as a FreeCAD.Vector, and using center as base point.
    • objectslist is either a single object or a list of objects.
  • If copy is True copies are created instead of modifying the original objects.
  • If legacy is True, direct copy mode is used (outdated), otherwise a parametric copy is made.
  • scaledlist is returned with the original scaled objects, or with the new clones.
    • scaledlist is either a single object or a list of objects, depending on the input objectslist.

Example:

import FreeCAD, Draft

Polygon1 = Draft.makePolygon(3, radius=1200)
delta1 = FreeCAD.Vector(2.3, 0.75, 0)

clone_1 = Draft.scale(Polygon1, delta1, copy=True)

Polygon2 = Draft.makePolygon(5, radius=750)
delta2 = FreeCAD.Vector(-2, -1.5, 0)

clone_2 = Draft.scale([Polygon1, Polygon2], delta2, copy=True)
Draft.move(clone_2, FreeCAD.Vector(3500, 1000, 0))
Arrow-left.svg Previous: Draft Downgrade.svg Downgrade
Next: Edit Draft Edit.svg Arrow-right.svg