Draft Rectangle: Difference between revisions

From FreeCAD Documentation
mNo edit summary
m (Added {{KEY}} shortcut to {{GuiCommand}})
(46 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<languages/>
<translate>
<translate>
<!--T:18-->
{{Docnav
|[[Draft_Polygon|Polygon]]
|[[Draft_Text|Text]]
|[[Draft_Module|Draft]]
|IconL=Draft_Polygon.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_Text.svg
}}

<!--T:1-->
<!--T:1-->
{{GuiCommand
{{GuiCommand|Name=Draft Rectangle|Workbenches=[[Draft Module|Draft]], [[Arch Module|Arch]]|MenuLocation=Draft -> Rectangle|Shortcut=R E|SeeAlso=[[Part Box|Part Box]]}}
|Name=Draft Rectangle
|MenuLocation=Draft → Rectangle
|Workbenches=[[Draft Module|Draft]], [[Arch Module|Arch]]
|Shortcut={{KEY|R}} {{KEY|E}}
|SeeAlso=[[Draft Ellipse|Draft Ellipse]], [[Part Box|Part Box]]
|Version=0.7
}}


==Description== <!--T:2-->
==Description== <!--T:2-->
The rectangle tool creates a rectangle by picking two opposite points. It takes the [[Draft Linestyle|linewidth and color]] previously set on the Tasks tab.
The Rectangle tool creates a rectangle by picking two points. It uses the [[Draft Linestyle|Draft Linestyle]] set on the [[Draft Tray|Draft Tray]].


<!--T:3-->
<!--T:11-->
You can optionally add a 45 degree chamfer or circular fillet to every corner of the rectangle, and you can divide the rectangle into a series of equal-sized rows and columns.

</translate>
[[Image:Draft_Rectangle_example.jpg|400px]]
[[Image:Draft_Rectangle_example.jpg|400px]]
<translate>
<!--T:3-->
{{Caption|Rectangle defined by the two corner points}}

==Usage== <!--T:4-->
# Press the {{Button|[[Image:Draft Rectangle.png|16px]] [[Draft Rectangle|Draft Rectangle]]}} button, or press {{KEY|R}} then {{KEY|E}} keys.
# Click a first corner point on the 3D view, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
# Click another point on the 3D view that is opposite the first one, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
:The second point must not be constrained to the X, Y, or Z axes, or the resulting rectangle will be malformed.

<!--T:12-->
The rectangle can be edited by double clicking on the element in the tree view, or by pressing the {{Button|[[Image:Draft Edit.svg|16px]] [[Draft Edit|Draft Edit]]}} button. Then you can move the points to a new position.


==How to use== <!--T:4-->
<!--T:13-->
The length and width of the rectangle can be changed after creation by changing its properties.
# Press the {{KEY|[[Image:Draft Rectangle.png|16px]] [[Draft Rectangle]]}} button, or press {{KEY|R}} then {{KEY|E}} keys
# Click a first corner point on the 3D view, or type a [[Draft_Coordinates|coordinate]]
# Click another opposite point on the 3D view, or type a [[Draft_Coordinates|coordinate]]. The rectangle will also be a face, even if it appears as wireframe.


==Options== <!--T:5-->
==Options== <!--T:5-->
* To enter coordinates manually, simply enter the numbers, then press {{KEY|Enter}} between each X, Y and Z component. You can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button when you have the desired values to insert the point.
* Press {{KEY|X}}, {{KEY|Y}} or {{KEY|Z}} after a point to constrain the next point on the given axis.
* Press {{KEY|R}} or click the checkbox to toggle ''relative'' mode. If relative mode is on, the coordinates of the second point are relative to the first one; if not, they are absolute, taken from the origin (0,0,0).
* To enter coordinates manually, simply enter the numbers, then press {{KEY|ENTER}} between each X, Y and Z component.
* Press {{KEY|R}} or click the checkbox to check/uncheck the {{KEY|'''Relative'''}} button. 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 (0,0,0) origin point.
* Press {{KEY|T}} or click the checkbox to toggle ''continue'' mode. If continue mode is on, the Rectangle tool will restart after you give the second point, allowing you to draw another rectangle without pressing the tool button again.
* Press {{KEY|T}} or click the checkbox to check/uncheck the {{KEY|'''Continue'''}} button. If continue mode is on, the Rectangle tool will restart after you finish or close it, allowing you to draw another one without pressing the Rectangle button again.
* Press {{KEY|L}} or click the checkbox to toggle ''filled'' mode. If filled mode is on, the rectangle will create a filled face ({{PropertyData|Make Face}} {{TRUE}}); if not, the rectangle will not make a face ({{PropertyData|Make Face}} {{FALSE}}).
* Press {{KEY|CTRL}} while drawing to force [[Draft_Snap|snapping]] your point to the nearest snap location, independently of the distance.
* Hold {{KEY|Ctrl}} while drawing to force [[Draft_Snap|snapping]] your point to the nearest snap location, independently of the distance.
* Press {{KEY|SHIFT}} while drawing to [[Draft_Constrain|constrain]] your next point horizontally or vertically in relation to the last one.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.
* Press {{KEY|I}} or the {{KEY|'''Filled'''}} button to have the rectangle to appear as a face after it has been closed. This simply sets the View->Property of the Rectangle to "Flat lines" or "Wireframe", so it can easily be changed later.
* Press {{KEY|ESC}} or the {{KEY|'''Cancel'''}} button to abort the current Line command.
* Rectangles, when in "Flat Lines" display mode, can display a hatch pattern, by setting their "Pattern" property.


==Properties== <!--T:6-->
==Properties== <!--T:6-->

* {{PropertyData|Length}}: Specifies the length of the rectangle
=== Data === <!--T:14-->
* {{PropertyData|Width}}: Specifies the width of the rectangle
* {{PropertyData|Chamfer Size}}: Specifies the size of chamfered corners
* {{PropertyData|Length}}: specifies the length of the shape in the X axis direction.
* {{PropertyData|Fillet Radius}}: Specifies a curvature radius to give to the corners of the rectangle
* {{PropertyData|Height}}: specifies the height of the shape in the Y axis direction.
* {{PropertyData|Chamfer Size}}: specifies the diagonal length of the 45&#176; chamfer at each corner of the rectangle.
* {{PropertyView|Texture Image}}: Allows to give the path to an image file to be mapped on the rectangle. It is up to you to give the rectangle the same proportion as the image if you want to avoid distortions. Blanking this property will remove the image.
* {{PropertyData|Fillet Radius}}: specifies the radius of the 90&#176; fillet at each corner of the rectangle.
* {{PropertyView|Pattern}}: Specifies a hatch pattern to fill the wire with
* {{PropertyData|Rows}}: specifies the number of equal-sized rows in which the original shape is divided; by default, 1 row.
* {{PropertyView|Pattern Size}}: Specifies the size of the hatch pattern
* {{PropertyData|Columns}}: specifies the number of equal-sized columns in which the original shape is divided; by default, 1 column.
* {{PropertyData|Make Face}}: specifies if the shape makes a face or not. If it is {{TRUE}} a face is created, otherwise only the perimeter is considered part of the object.

=== View === <!--T:15-->
* {{PropertyView|Pattern}}: specifies a [[Draft Pattern|Draft Pattern]] with which to fill the face of the shape. This property only works if {{PropertyData|Make Face}} is {{TRUE}}, and if {{PropertyView|Display Mode}} is "Flat Lines".
* {{PropertyView|Pattern Size}}: specifies the size of the [[Draft Pattern|Draft Pattern]].
* {{PropertyView|Texture Image}}: specifies the path to an image file to be mapped on the face of the shape. Blanking this property will remove the image.
:The rectangle should have the same proportions as the image to avoid distortions in the mapping.


==Scripting== <!--T:7-->
==Scripting== <!--T:7-->
{{Emphasis|See also:}} [[Draft API|Draft API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
The Rectangle tool can by used in [[macros]] and from the python console by using the following function:

<!--T:16-->
The Rectangle tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function:


</translate>
</translate>
{{Code|code=
<syntaxhighlight>
makeRectangle (length, width, [placement], [facemode])
Rectangle = makeRectangle(length, height, placement=None, face=None, support=None)
}}
</syntaxhighlight>
<translate>
<translate>


<!--T:8-->
<!--T:8-->
* Creates a Rectangle object with length in X direction and height in Y direction.
* Creates a {{incode|Rectangle}} object with {{incode|length}} in the X direction and {{incode|height}} in the Y direction, with units in millimeters.
** The length will be parallel to the X axis if no other placement in given.
* If a placement is given, it is used.
* If a {{incode|placement}} is given, it is used; otherwise the shape is created at the origin.
* If facemode is False, the rectangle is shown as a wireframe, otherwise as a face.
* If {{incode|face}} is {{incode|True}}, the shape will make a face, that is, it will appear filled.
* The current Draft linewidth and color will be used.
* Returns the newly created object.


<!--T:9-->
<!--T:9-->
Example:
Example:
</translate>
</translate>
{{Code|code=
<syntaxhighlight>
import FreeCAD,Draft
import FreeCAD, Draft

Draft.makeRectangle(10,4)
Rectangle1 = Draft.makeRectangle(4000, 1000)
</syntaxhighlight>
Rectangle2 = Draft.makeRectangle(1000, 4000)

ZAxis = FreeCAD.Vector(0, 0, 1)
p3 = FreeCAD.Vector(1000, 1000, 0)
place3 = FreeCAD.Placement(p3, FreeCAD.Rotation(ZAxis, 45))

Rectangle3 = Draft.makeRectangle(3500, 250, placement=place3)
}}
<translate>

<!--T:17-->
{{Docnav
|[[Draft_Polygon|Polygon]]
|[[Draft_Text|Text]]
|[[Draft_Module|Draft]]
|IconL=Draft_Polygon.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_Text.svg
}}

<!--T:19-->
{{Draft Tools navi}}

<!--T:20-->
{{Userdocnavi}}
</translate>
{{clear}}
{{clear}}
<languages/>

Revision as of 17:06, 29 January 2020

Draft Rectangle

Menu location
Draft → Rectangle
Workbenches
Draft, Arch
Default shortcut
R E
Introduced in version
0.7
See also
Draft Ellipse, Part Box

Description

The Rectangle tool creates a rectangle by picking two points. It uses the Draft Linestyle set on the Draft Tray.

You can optionally add a 45 degree chamfer or circular fillet to every corner of the rectangle, and you can divide the rectangle into a series of equal-sized rows and columns.

Rectangle defined by the two corner points

Usage

  1. Press the Draft Rectangle button, or press R then E keys.
  2. Click a first corner point on the 3D view, or type a coordinate and press the add point button.
  3. Click another point on the 3D view that is opposite the first one, or type a coordinate and press the add point button.
The second point must not be constrained to the X, Y, or Z axes, or the resulting rectangle will be malformed.

The rectangle can be edited by double clicking on the element in the tree view, or by pressing the Draft Edit button. Then you can move the points to a new position.

The length and width of the rectangle can be changed after creation by changing its properties.

Options

  • 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 second point are relative to the first 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 Rectangle tool will restart after you give the second point, allowing you to draw another rectangle without pressing the tool button again.
  • Press L or click the checkbox to toggle filled mode. If filled mode is on, the rectangle will create a filled face (DataMake Face true); if not, the rectangle will not make a face (DataMake Face false).
  • Hold Ctrl while drawing to force snapping your point to the nearest snap location, independently of the distance.
  • Press Esc or the Close button to abort the current command.

Properties

Data

  • DataLength: specifies the length of the shape in the X axis direction.
  • DataHeight: specifies the height of the shape in the Y axis direction.
  • DataChamfer Size: specifies the diagonal length of the 45° chamfer at each corner of the rectangle.
  • DataFillet Radius: specifies the radius of the 90° fillet at each corner of the rectangle.
  • DataRows: specifies the number of equal-sized rows in which the original shape is divided; by default, 1 row.
  • DataColumns: specifies the number of equal-sized columns in which the original shape is divided; by default, 1 column.
  • DataMake Face: specifies if the shape makes a face or not. If it is true a face is created, otherwise only the perimeter is considered part of the object.

View

  • ViewPattern: specifies a Draft Pattern with which to fill the face of the shape. This property only works if DataMake Face is true, and if ViewDisplay Mode is "Flat Lines".
  • ViewPattern Size: specifies the size of the Draft Pattern.
  • ViewTexture Image: specifies the path to an image file to be mapped on the face of the shape. Blanking this property will remove the image.
The rectangle should have the same proportions as the image to avoid distortions in the mapping.

Scripting

See also: Draft API and FreeCAD Scripting Basics.

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

Rectangle = makeRectangle(length, height, placement=None, face=None, support=None)
  • Creates a Rectangle object with length in the X direction and height in the Y direction, with units in millimeters.
    • The length will be parallel to the X axis if no other placement in given.
  • If a placement is given, it is used; otherwise the shape is created at the origin.
  • If face is True, the shape will make a face, that is, it will appear filled.

Example:

import FreeCAD, Draft

Rectangle1 = Draft.makeRectangle(4000, 1000)
Rectangle2 = Draft.makeRectangle(1000, 4000)

ZAxis = FreeCAD.Vector(0, 0, 1)
p3 = FreeCAD.Vector(1000, 1000, 0)
place3 = FreeCAD.Placement(p3, FreeCAD.Rotation(ZAxis, 45))

Rectangle3 = Draft.makeRectangle(3500, 250, placement=place3)