Draft Scale/tr: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(20 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand/tr|Name=Draft Scale|Name/tr=Draft Scale|Workbenches=[[Draft Module/tr|Draft]], [[Arch Module/tr|Arch]]|MenuLocation=Draft → Scale|Shortcut=S C|SeeAlso=[[Draft Clone/tr|Draft Clone]]}}

{{Docnav
|[[Draft_Rotate|Rotate]]
|[[Draft_Mirror|Mirror]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Rotate.svg
|IconR=Draft_Mirror.svg
|IconC=Workbench_Draft.svg
}}

<div class="mw-translate-fuzzy">
{{GuiCommand/tr
|Name=Draft Scale
|Name/tr=Ölçekle
|MenuLocation=Draft → Scale
|Workbenches=[[Draft_Workbench/tr|Draft]], [[Arch_Workbench/tr|Arch]]
|Shortcut={{KEY|S}} {{KEY|C}}
|SeeAlso=[[Draft Clone/tr|Draft Clone]]
}}
</div>


==Description==
==Description==


This tool scales selected object(s) around a base point. If no object is selected, you will be invited to select one. It can also be used to mirror objects.
The [[Image:Draft_Scale.svg|24px]] '''Draft Scale''' command scales or copies selected objects around a base point. In subelement mode the command scales selected points and edges of [[Draft_Line|Draft Lines]] and [[Draft_Wire|Draft Wires]].


The command can be used on 2D objects created with the [[Draft_Workbench|Draft Workbench]] or [[Sketcher_Workbench|Sketcher Workbench]], but also on many 3D objects such as those created with the [[Part_Workbench|Part Workbench]], [[PartDesign_Workbench|PartDesign Workbench]] or [[Arch_Workbench|Arch Workbench]].
[[Image:Draft_Scale_example.jpg|400px]]


[[Image:Draft_Scale_example.png|400px]]
==How to use==
{{Caption|Scaling an object around a base point}}


==Usage==
# Select objects you wish to scale

# Press the {{KEY|[[Image:Draft Scale.png|16px]] [[Draft Scale]]}} button, or press {{KEY|S}} then {{KEY|C}} keys
See also: [[Draft_Snap|Draft Snap]] and [[Draft_Constrain|Draft Constrain]].
# Click a first point on the 3D view, or type a [[Draft_Coordinates|coordinate]]

# Click another point on the 3D view, or type a [[Draft_Coordinates|coordinate]]
# Optionally select one or more objects, or one or more subelements of [[Draft_Line|Draft Lines]] or [[Draft_Wire|Draft Wires]].
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Draft_Scale.svg|16px]] [[Draft_Scale|Draft Scale]]}} button.
#* Select the {{MenuCommand|Modification → [[Image:Draft_Scale.svg|16px]] Scale}} option from the menu.
#* Use the keyboard shortcut: {{KEY|S}} then {{KEY|C}}.
# If you have not yet selected an object: select an object in the [[3D_view|3D view]].
# The {{MenuCommand|Scale}} task panel opens. See [[#Options|Options]] for more information.
# If subelements have been selected: check the {{MenuCommand|Modify subelements}} checkbox to switch on subelement mode.
# Pick the base point in the [[3D_view|3D view]], or type coordinates and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button.
# Enter the X, Y and Z scale factors.
# Press {{KEY|Enter}} or the {{Button|OK}} button to finish the command.


==Options==
==Options==


===First task panel===
* To enter coordinates manually, simply enter the numbers, then press {{KEY|ENTER}} between each X, Y and Z component.

* The x, y and z components of the second point define the scale factor. For example, (1,1,1) would do nothing, (2,2,2) would scale 2x in all directions, (-1,1,1) would mirror in x direction.
The single character keyboard shortcuts mentioned here can be changed. See [[Draft_Preferences|Draft Preferences]].
* Pressing {{KEY|ALT}} or {{KEY|C}} or clicking the {{KEY|'''Copy'''}} button will make a copy of the objects, instead of scaling the original. If you keep {{KEY|ALT}} pressed after clicking the second point, you will be able to place more copies, until you release the {{KEY|ALT}} key.

* Press {{KEY|CTRL}} while drawing to force [[Draft_Snap|snapping]] your point to the nearest snap location, independently of the distance.
* To manually enter the coordinates for the base point enter the X, Y and Z component, and press {{KEY|Enter}} after each. Or you can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button when you have the desired values. It is advisable to move the pointer out of the [[3D_view|3D view]] before entering coordinates.
* Pressing {{KEY|SHIFT}} will lock x and y values together, so the shape is not deformed.
* Press {{KEY|G}} or click the {{MenuCommand|Global}} checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the [[Draft_SelectPlane|working plane]] coordinate system. {{Version|0.20}}
* Press {{KEY|ESC}} or the {{KEY|'''Cancel'''}} button to abort the current command.
* The other checkboxes in this task panel, displayed in FreeCAD version 0.19 and earlier, are ignored by the command.
* The resulting object is a [[Draft Clone]], which allows you to change the scale values after it has been created.
* Press {{KEY|S}} to switch [[Draft_Snap|Draft snapping]] on or off.
* Mirroring objects works by inverting the sign of one of the directions. For example, (-1,1,1) mirrors horizontally (on the X axis), and (1,-1,1) vertically (on the Y axis).
* Press the {{Button|Close}} button to abort the command.

===Second task panel===

* Enter the X, Y and Z factors to define the scaling. The values must be larger than zero.
* Check the {{MenuCommand|Uniform scaling}} checkbox to lock the X, Y and Z factors to the same value. In FreeCAD version 0.19 and earlier for this setting to take effect one of the scale factors has to be changed.
* If the {{MenuCommand|Working plane orientation}} checkbox is checked the scale factors are relative to the [[Draft_SelectPlane|working plane]] coordinate system, else they are relative to the global coordinate system.
* If the {{MenuCommand|Copy}} checkbox is checked a scaled copy of the original object is created. This only works for Draft objects that have a {{PropertyData|Points}} property, such as [[Draft_Wire|Draft Wires]].
* If the {{MenuCommand|Modify subelements}} checkbox is checked the command will use the selected subelements instead of the whole objects. The subelements must belong to [[Draft_Line|Draft Lines]] or [[Draft_Wire|Draft Wires]].
* If the {{MenuCommand|Create a clone}} checkbox is checked scaled [[Draft_Clone|clones]] of the original objects are created. This works for all object types. For objects that are not Draft objects, or for Draft objects that do not have a {{PropertyData|Points}} property, this option {{Emphasis|must}} be selected.
* Press the {{Button|Pick from/to points}} button and pick two additional points in the [[3D_view|3D view]] to calculate the scale factors. This will automatically check the {{MenuCommand|Uniform scaling}} checkbox. The X, Y and Z scale factors will therefore be equal and will be set to the distance between the base point and the 'from' point, divided by the distance between the base point and the 'to' point.
* Press {{KEY|Esc}} or the {{Button|Cancel}} button to abort the command.

==Notes==

* The command can also scale [[Image_CreateImagePlane|Image Planes]], but not in clone mode.

==Preferences==

See also: [[Preferences_Editor|Preferences Editor]] and [[Draft_Preferences|Draft Preferences]].

* To change the number of decimals used for the input of scale factors ({{Version|0.20}}) and coordinates: {{MenuCommand|Edit → Preferences... → General → Units → Units settings → Number of decimals}}.
* To change the number of decimals used for the input of scale factors ({{VersionMinus|0.19}}): {{MenuCommand|Edit → Preferences... → Draft → General settings → General Draft Settings → Internal precision level}}.
* To reselect the base objects after copying objects: {{MenuCommand|Edit → Preferences... → Draft → General settings → Draft tools options → Select base objects after copying}}.


==Scripting==
==Scripting==


See also: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
The Scale tool can by used in [[macros]] and from the python console by using the following function:

To scale objects use the {{incode|scale}} method of the Draft module.


{{Code|code=
{{Code|code=
scaled_list = scale(objectslist, scale=Vector(1,1,1), center=Vector(0,0,0), copy=False)
scale (objects,vector,[center,copy,legacy])
}}
}}


* {{incode|objectslist}} contains the objects to be scaled. It is either a single object or a list of objects.
* Scales the objects contained in objects (that can be a list of objects or an object) of the given scale factors defined by the given vector (in X, Y and Z directions) around the given center.
* {{incode|scale}} is the vector that specifies by the X, Y and Z scale factors.
* If legacy is True, direct (old) mode is used, otherwise a parametric copy is made.
* {{incode|center}} is the center point of the scaling operation.
* If copy is True, the actual objects are not moved, but copies are created instead.
* If {{incode|copy}} is {{incode|True}} copies are created instead of scaling the original objects.
* The objects (or their copies) are returned.
* {{incode|scaled_list}} is returned with the original scaled objects, or with the new copies. It is either a single object or a list of objects, depending on {{incode|objectslist}}.


Example:
Example:


{{Code|code=
{{Code|code=
import FreeCAD,Draft
import FreeCAD as App
import Draft
Draft.scale(FreeCAD.ActiveDocument.ActiveObject,FreeCAD.Vector(2,2,2))

doc = App.newDocument()

pts = [App.Vector(0, 0, 0), App.Vector(500, 500, 0), App.Vector(600, 0, 0)]
wire1 = Draft.make_wire(pts, closed=True)
doc.recompute()

scale1 = App.Vector(2.3, 0.75, 0)
wire2 = Draft.scale(wire1, scale1, copy=True)
doc.recompute()

scale2 = App.Vector(-2, -1.5, 0)
wires = Draft.scale([wire1, wire2], scale2, copy=True)
doc.recompute()
}}
}}



<languages/>
{{Docnav
|[[Draft_Rotate|Rotate]]
|[[Draft_Mirror|Mirror]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Rotate.svg
|IconR=Draft_Mirror.svg
|IconC=Workbench_Draft.svg
}}

{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Revision as of 20:18, 24 January 2022

Ölçekle

Menü konumu
Draft → Scale
Tezgahlar
Draft, Arch
Varsayılan kısayol
S C
Versiyonda tanıtıldı
-
Ayrıca bkz
Draft Clone

Description

The Draft Scale command scales or copies selected objects around a base point. In subelement mode the command scales selected points and edges of Draft Lines and Draft Wires.

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.

Scaling an object around a base point

Usage

See also: Draft Snap and Draft Constrain.

  1. Optionally select one or more objects, or one or more subelements of Draft Lines or Draft Wires.
  2. There are several ways to invoke the command:
    • Press the Draft Scale button.
    • Select the Modification → Scale option from the menu.
    • Use the keyboard shortcut: S then C.
  3. If you have not yet selected an object: select an object in the 3D view.
  4. The Scale task panel opens. See Options for more information.
  5. If subelements have been selected: check the Modify subelements checkbox to switch on subelement mode.
  6. Pick the base point in the 3D view, or type coordinates and press the Enter point button.
  7. Enter the X, Y and Z scale factors.
  8. Press Enter or the OK button to finish the command.

Options

First task panel

The single character keyboard shortcuts mentioned here can be changed. See Draft Preferences.

  • To manually enter the coordinates for the base point enter the X, Y and Z component, and press Enter after each. Or you can press the Enter point button when you have the desired values. It is advisable to move the pointer out of the 3D view before entering coordinates.
  • Press G or click the Global checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the working plane coordinate system. introduced in version 0.20
  • The other checkboxes in this task panel, displayed in FreeCAD version 0.19 and earlier, are ignored by the command.
  • Press S to switch Draft snapping on or off.
  • Press the Close button to abort the command.

Second task panel

  • Enter the X, Y and Z factors to define the scaling. The values must be larger than zero.
  • Check the Uniform scaling checkbox to lock the X, Y and Z factors to the same value. In FreeCAD version 0.19 and earlier for this setting to take effect one of the scale factors has to be changed.
  • If the Working plane orientation checkbox is checked the scale factors are relative to the working plane coordinate system, else they are relative to the global coordinate system.
  • If the Copy checkbox is checked a scaled copy of the original object is created. This only works for Draft objects that have a VeriPoints property, such as Draft Wires.
  • If the Modify subelements checkbox is checked the command will use the selected subelements instead of the whole objects. The subelements must belong to Draft Lines or Draft Wires.
  • If the Create a clone checkbox is checked scaled clones of the original objects are created. This works for all object types. For objects that are not Draft objects, or for Draft objects that do not have a VeriPoints property, this option must be selected.
  • Press the Pick from/to points button and pick two additional points in the 3D view to calculate the scale factors. This will automatically check the Uniform scaling checkbox. The X, Y and Z scale factors will therefore be equal and will be set to the distance between the base point and the 'from' point, divided by the distance between the base point and the 'to' point.
  • Press Esc or the Cancel button to abort the command.

Notes

  • The command can also scale Image Planes, but not in clone mode.

Preferences

See also: Preferences Editor and Draft Preferences.

  • To change the number of decimals used for the input of scale factors (introduced in version 0.20) and coordinates: Edit → Preferences... → General → Units → Units settings → Number of decimals.
  • To change the number of decimals used for the input of scale factors (version 0.19 and below): Edit → Preferences... → Draft → General settings → General Draft Settings → Internal precision level.
  • To reselect the base objects after copying objects: Edit → Preferences... → Draft → General settings → Draft tools options → Select base objects after copying.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To scale objects use the scale method of the Draft module.

scaled_list = scale(objectslist, scale=Vector(1,1,1), center=Vector(0,0,0), copy=False)
  • objectslist contains the objects to be scaled. It is either a single object or a list of objects.
  • scale is the vector that specifies by the X, Y and Z scale factors.
  • center is the center point of the scaling operation.
  • If copy is True copies are created instead of scaling the original objects.
  • scaled_list is returned with the original scaled objects, or with the new copies. It is either a single object or a list of objects, depending on objectslist.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

pts = [App.Vector(0, 0, 0), App.Vector(500, 500, 0), App.Vector(600, 0, 0)]
wire1 = Draft.make_wire(pts, closed=True)
doc.recompute()

scale1 = App.Vector(2.3, 0.75, 0)
wire2 = Draft.scale(wire1, scale1, copy=True)
doc.recompute()

scale2 = App.Vector(-2, -1.5, 0)
wires = Draft.scale([wire1, wire2], scale2, copy=True)
doc.recompute()