Draft: Upgrade/Апгрейд

From FreeCAD Documentation
Revision as of 04:34, 21 February 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Draft Upgrade

Системное название
Draft Upgrade
Расположение в меню
Черчение → Обновить
Верстаки
Draft, Arch
Быстрые клавиши
U P
Представлено в версии
-
См. также
Перестроить

Описание

Этот инструмент изменяет выбранные объекты по-разному. Если ни один объект не выбран, вам будет предложено выбрать его.

The Upgrade tool performs things such as creating faces and fusing different elements. This tool works with 2D Draft elements. To fuse 3D solids use Part Union and related Boolean operations of the Part Workbench, and PartDesign Boolean of the PartDesign Workbench.

The counterpart to this tool is the Draft Downgrade operation.

Open wire upgraded to a closed wire, then to a face; a closed square upgraded to a face, and then fused with the previous face

Использование

  1. Выберите один или несколько объектов, которые вы хотите обновить.
  2. Нажмите кнопку Draft Upgrade или нажмите U, затем P

The selected objects are modified or upgraded according to the following conditions, in order:

  1. If there are more than one face in the selection, the faces are merged (union).
  2. If there is only one face in the selection, nothing is done.
  3. If there is only one open wire in the selection, it gets closed, making a face.
  4. If there are only edges in the selection, all edges are joined into a wire, and the wire is closed if possible.
  5. If none of the above is possible, a compound object is created.

It is worth trying to upgrade a selection several times to see if a better shape is obtained. For example:

  1. Upgrading two Draft Lines connected at one end will result in a non-editable wire.
  2. Upgrading this element again will add a third line and close the non-editable wire.
  3. Upgrading this element again will add a face to the closed, non-editable wire.
  4. Upgrading this element again will turn it into a Draft Wire, which can be fully edited, and all its properties modified.

The resulting wire can be better manipulated than the original lines. The fusion of single lines can also be done directly with the Draft Wire tool. Some fusion operations can also be done with the Part Union tool.

Опции

Выбранные объекты модифицируются / обновляются в соответствии со следующими условиями (в порядке):

  • если в выборе выделено более одного грань , грани объединяются (объединяются)ь
  • if there is only one face in the selection, nothing is done
  • if there is only one open wire in the selection, it gets closed
  • if there are only edges in the selection, all edges are joined into a wire (closed if possible)
  • если ни одно из указанных выше не возможно, создается составной объект

Скриптование

Инструмент Апгрейд можно использовать из скриптов python и макросов следующим образом:

upgrade_list = upgrade(objects, delete=False, force=None)
addList, deleteList = upgrade(objects, delete=False, force=None)
  • Upgrades the given objects, which can be a single object or a list of objects.
  • If delete is True, old objects are deleted.
  • If force is given, it is the internal function to call to force a certain way of upgrading. It can be: "makeCompound", "closeGroupWires", "makeSolid", "closeWire", "turnToParts", "makeFusion", "makeShell", "makeFaces", "draftify", "joinFaces", "makeSketchFace", "makeWires", or "turnToLine".
  • upgrade_list is returned, which is a list containing two lists: a list of new objects (addList) and a list of objects to be deleted (deleteList).

Пример:

import FreeCAD, Draft

Circle = Draft.makeCircle(1000)
Rectangle = Draft.makeRectangle(2000, 800)

addList1, deleteList1 = Draft.upgrade([Circle, Rectangle], delete=False)
fused = addList1[0]

Line1 = Draft.makeLine(FreeCAD.Vector(2000, 0, 0), FreeCAD.Vector(2500, 1500, 0))
Line2 = Draft.makeLine(FreeCAD.Vector(2500, 1500, 0), FreeCAD.Vector(3000, -1000, 0))
addList2, deleteList2 = Draft.upgrade([Line1, Line2], delete=False)

simple_wire = addList2[0]
addList3, deleteList3 = Draft.upgrade(simple_wire, delete=False)

closed_wire = addList3[0]
addList4, deleteList4 = Draft.upgrade(closed_wire, delete=False)

face = addList4[0]
addList5, deleteList5 = Draft.upgrade(face, delete=False)