PartDesign Конструктивный элемент

From FreeCAD Documentation
This page is a translated version of the page PartDesign Feature and the translation is 88% complete.
Other languages:

Введение

Конструктивный элемент PartDesign является «шагом» в процессе моделирования, происходящим внутри Тела PartDesign. Например, каждый раз, когда вы добавляете Куб с помощью PartDesign AdditiveBox, вы добавляете констуктивный элемент; когда вы добавляете фаску к кромке с помощью PartDesign Chamfer, вы добавляете еще один конструктивный элемент; когда вы вырезаете отверстие с помощью sketch и PartDesign Pocket, вы добавляете ещё один конструктивный элемент.

Изменение PartDesign Тела последовательностью из трех конструктивных элементов.

Есть много типов элементов, которые могут добавить или удалить объем исходного твердого тела. Слово «элемент» относится к самой операции, а также к твёрдому телу, полученному после этой операции.

Чтобы узнать больше о создании твердотельных объектов с помощью верстака PartDesign, смотрите редактирование конструктивных элементов.

Применение

Почти все инструменты в верстаке PartDesign предназначены для добавления элементов в PartDesign Body. Доступ к этим инструментам можно получить из меню и кнопок панели инструментов, когда выбран объект или подэлемент (вершина, кромка, грань).

Элементы могут быть вставлены в различные категории:

Наследование

Упрощенная диаграмма взаимосвязей между основными объектами в программе. Объекты PartDesign::Feature используются для построения параметрических трёхмерных тел и, таким образом, являются производными от базового объекта Part::Feature.

Scripting

См. так же: Основы скриптов FreeCAD, и скриптовые объекты.

Смотрите элементы Part ждя получения общей информации о добавлении объектов из консоли Python.

Смотрите PartDesign Body для получения общей информации о добавлении тела. Когда тело существует, к нему можно прикрепить элементы с помощью метода Body addObject().

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject('PartDesign::Body', 'Body')
obj.Label = "Custom label"

feature = App.ActiveDocument.addObject('PartDesign::AdditiveBox', 'Box')
feature.Width = 200
feature.Length = 300
feature.Height = 500
obj.addObject(feature)
App.ActiveDocument.recompute()

feature2 = App.ActiveDocument.addObject('PartDesign::SubtractiveBox', 'Box')
feature2.Width = 50
feature2.Length = 200
feature2.Height = 400
obj.addObject(feature2)
App.ActiveDocument.recompute()