Draft Wire/zh-cn: Difference between revisions

From FreeCAD Documentation
No edit summary
(Created page with "* 利用指定的一个点列表{{incode|pointslist}}来创建一个{{incode|Wire}}对象。 ** 列表中的每个点都被定义为{{incode|FreeCAD.Vector}},单位为毫米...")
Line 79: Line 79:
}}
}}


* 利用指定的一个点列表{{incode|pointslist}}来创建一个{{incode|Wire}}对象。
* Creates a {{incode|Wire}} object with the given list of points, {{incode|pointslist}}.
** Each point in the list is defined by its {{incode|FreeCAD.Vector}}, with units in millimeters.
** 列表中的每个点都被定义为{{incode|FreeCAD.Vector}},单位为毫米。
** Alternatively, the input can be a {{incode|Part.Wire}}, from which points are extracted.
** 或者, 输入也可以是一个{{incode|Part.Wire}},从中提取各点。
* If {{incode|closed}} is {{incode|True}}, or if the first and last points are identical, the wire is closed.
* 如果{{incode|closed}}{{incode|True}},或者如果连线中的第一个点与最后一个点为同一点,则连线是闭合的。
* If a {{incode|placement}} is given, it is used; otherwise the shape is created at the origin.
* 如果指定了{{incode|placement}},则在此位置创建连线;否则在原点处创建连线。
* If {{incode|face}} is {{incode|True}}, and the wire is closed, the wire will make a face, that is, it will appear filled.
* 如果{{incode|face}}{{incode|True}},且连线是闭合的,则连线将构成一个面,即表现为一个填充图形。


示例:
示例:

Revision as of 17:12, 25 June 2019

Draft Wire

Menu location
Draft → Wire
Workbenches
Draft, Arch
Default shortcut
W I
Introduced in version
0.7
See also
Draft Line, Draft BSpline

描绘

利用连线工具可创建一条折线(一系列互连的线段)。本工具利用底图工具栏中的底图线条样式进行绘制。除了允许用户输入2个以上的点之外,连线工具与底图线段工具的行为完全相同。

B样条工具与连线工具的功能相似,区别仅在于前者中的每条线段为曲线而非直线。利用Use Draft WireToBSpline工具可令两者互相转换。

多点定一连线

如何使用

  1. 按下 Draft Wire按钮,或先按W键再按I键。
  2. 在3D视图中点击第一个点,或输入一个坐标再按 add point按钮。
  3. 在3D视图中单击另一个点,或输入一个坐标再按 add point按钮。
  4. Esc键或Close按钮来结束本次编辑。

双击树状视图中的元素或点击 Draft Edit按钮即可编辑连线。接下来,您可以将其中的点移到一个新位置,或点击 add point remove point按钮再点选连线来增添其中的点。

融合多条线段

如果选中了若干条相连的线段,并按下 Draft Wire按钮,便会将它们转换为一条连线并退出当前的命令。introduced in version 0.17

请注意: 不同线段的首尾准确重合才能进行融合,反之则不可。必要时,可以手动调整线段首尾端点的坐标,或利用Draft Snap搭配Draft Endpoint模式来令端点重合。

选项

  • A键或 Finish按钮来结束当前连线的绘制,并关闭对此连线的编辑。
  • O键或 Close按钮令当前连线闭合,即一条线段将连接当前连线首尾两点,从而构成一个面。而构成一个面则最少需要三个点。
  • W键或 Wipe按钮来移除刚画好的线段,但是将继续保持从前一个点的位置继续编辑连线。
  • U键或 Set WP按钮根据前一个点的方位来调整当前的工作平面。
  • 在创建一个点后,按XYZ键来在对应轴上约束下一个点。
  • 为了手动输入坐标,每当设置好X、Y、Z分量后都要按下Enter键。当您需要以特定坐标值插入一个点时,可点击 add point按钮。
  • R键或点击relative多选框切换至相对 模式。若开启了相对模式,则后一个相对于前一个的坐标而定;否则采用绝对坐标,即相对原点(0,0,0)定后一个点的坐标。
  • T键或点击continue多选框切换至连续(绘制)模式。若开启了连续模式,则连线工具在绘制一条连线后会自动重启,即允许您在不用点击连线工具的情况下,继续绘制下一条连线。
  • L键或点击filled多选框切换至填充模式。若开启了填充模式,则一条闭合的连线将创建出一个填充面(数据Make Face true); 否则,闭合的连线将不会创建出一个面(数据Make Face false)。
请注意: 若连线存在自相交的情况,便不能对其进行填充存在,因为它将无法创建对应真面(proper face)。如果对连线填充后却无法看到它本身的形状,就手动将数据Make Face设置为false来查看连线。
  • 按住Ctrl键,将当前所绘点强制放在与之最近的捕捉位置处。
  • 按住Shift键,将下一个点的位置约束于上一个的水平方向或垂直方向上。
  • Ctrl+Z组合键或点击 Undo按钮来撤销当前操作,返回上一个操作点。
  • Esc键或Close按钮来终止当前连线命令;但此前绘制好的线段仍会保留。

属性

连线对象享有Draft Line中的所有属性,但是大多属性仅对连线而言才有意义。

Data

  • 数据Start: specifies the first point in the wire.
  • 数据End: specifies the last point in the wire, not counting the initial point if the wire is closed.
  • 数据Closed: specifies if the wire is closed or not. If the wire is initially open, this value is false; setting it to true will draw a line segment to close the wire. If the wire is initially closed, this value is true; setting it to false will remove the last line segment, and make the wire open.
  • 数据Chamfer Size: specifies the size of the chamfers (straight segments) created on the corners of the wire.
  • 数据Fillet Radius: specifies the radius of the fillets (arc segments) created on the corners of the wire.
  • 数据Make Face: specifies if the wire makes a face or not. If it is true a face is created, otherwise only the edges are considered part of the object. This property only works if 数据Closed is true.
Note: do not set 数据Make Face to true if the wire intersects itself, as it won't create a proper face.
  • 数据Subdivisions: specifies the number of interior nodes in each segment of the wire. introduced in version 0.16
  • 数据Length: (read-only) specifies the length of the entire wire.

View

  • 视图End Arrow: if it is true it will display a symbol at the last point of the wire, so it can be used as an annotation line.
  • 视图Arrow Size: specifies the size of the symbol displayed at the end of the wire.
  • 视图Arrow Type: specifies the type of symbol displayed at the end of the wire, which can be "Dot", "Circle", "Arrow", or "Tick".
  • 视图Pattern: specifies a Draft Pattern with which to fill the face of the closed wire. This property only works if 数据Make Face is true, and if 视图Display Mode is "Flat Lines".
  • 视图Pattern Size: specifies the size of the Draft Pattern.

脚本

参见: Draft APIFreeCAD Scripting Basics

借助下列函数即可在Python控制台中使用连线绘制工具:

Wire = makeWire(pointslist, closed=False, placement=None, face=None, support=None)
Wire = makeWire(Part.Wire, closed=False, placement=None, face=None, support=None)
  • 利用指定的一个点列表pointslist来创建一个Wire对象。
    • 列表中的每个点都被定义为FreeCAD.Vector,单位为毫米。
    • 或者, 输入也可以是一个Part.Wire,从中提取各点。
  • 如果closedTrue,或者如果连线中的第一个点与最后一个点为同一点,则连线是闭合的。
  • 如果指定了placement,则在此位置创建连线;否则在原点处创建连线。
  • 如果faceTrue,且连线是闭合的,则连线将构成一个面,即表现为一个填充图形。

示例:

import FreeCAD, Draft

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1000, 1000, 0)
p3 = FreeCAD.Vector(2000, 0, 0)

Wire1 = Draft.makeWire([p1, p2, p3], closed=True)
Wire2 = Draft.makeWire([p1, 2*p3, 1.3*p2], closed=True)
Wire3 = Draft.makeWire([1.3*p3, p1, -1.7*p2], closed=True)