Part Module/ru: Difference between revisions

From FreeCAD Documentation
(Created page with "== Настройки ==")
(Created page with "* Импорт из STL или OBJ : Как импортировать файлы STL/OBJ в FreeCAD * Export_to_STL_or_OBJ/ru|Экспорт...")
(41 intermediate revisions by 2 users not shown)
Line 10: Line 10:
{{TOCright}}
{{TOCright}}
== Введение ==
== Введение ==
Возможности твердотельного моделирования FreeCAD базируются на ядре [http://ru.wikipedia.org/wiki/Open_CASCADE Open Cascade Technology] (OCCT), системе САПР профессионального качества с возможностями продвинутого создания и манипулирования трёхмерными объектами. [[Image:Workbench_Part.svg|24px]] [[Part Workbench/ru|Верстак Part]] это слой, базирующийся на библиотеках OCCT, дающие пользователям доступ к примитивам и функциям OCCT. Практически все функции двумерного и трёхмерного черчения в каждом верстаке ([[Image:Workbench_Draft.svg|24px]] [[Draft Workbench/ru|Draft]], [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher Workbench/ru|Sketcher]], [[Image:Workbench_PartDesign.svg|24px]] [[PartDesign Workbench/ru|PartDesign]] и т.д.) базируются на этих функциях, предоставляемых верстаком Part. Следовательно, верстак Part считается центральным компонентом возможностей моделирования FreeCAD.
Возможности твердотельного моделирования FreeCAD базируются на ядре [[OpenCASCADE/ru|OpenCASCADE Technology]] (OCCT), системе САПР профессионального качества с возможностями продвинутого создания и манипулирования трёхмерными объектами. [[Image:Workbench_Part.svg|24px]] [[Part Workbench/ru|Верстак Part]] это слой, базирующийся на библиотеках OCCT, дающие пользователям доступ к примитивам и функциям OCCT. Практически все функции двумерного и трёхмерного черчения в каждом верстаке ([[Image:Workbench_Draft.svg|24px]] [[Draft Workbench/ru|Draft]], [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher Workbench/ru|Sketcher]], [[Image:Workbench_PartDesign.svg|24px]] [[PartDesign Workbench/ru|PartDesign]] и т.д.) базируются на этих функциях, предоставляемых верстаком Part. Следовательно, верстак Part считается центральным компонентом возможностей моделирования FreeCAD.


Объекты, создаваемые верстаком Part относительно просты, они предназначены для использования в булевых операциях (объединения и вырезания) для построения более сложных фигур. '''Эта парадигма моделирования известна как процесс [[constructive solid geometry/ru|конструктивной блочной геометрии]] (CSG, КБГ), и это традиционная методология, используемая в ранних системах САПР.''' С другой стороны, [[PartDesign Workbench/ru|верстак PartDesign]] предлагает более современный процесс создания фигур: он использует параметрически заданные эскизы, которые выдавливаются для формирования базовых твёрдых тел, которые потом модифицируются параметрическими трансформациями ([[feature editing/ru|редактирования свойств]]) до получения конечного объекта.
Объекты, создаваемые верстаком Part относительно просты, они предназначены для использования в булевых операциях (объединения и вырезания) для построения более сложных фигур. '''Эта парадигма моделирования известна как процесс [[constructive solid geometry/ru|конструктивной блочной геометрии]] (CSG, КБГ), и это традиционная методология, используемая в ранних системах САПР.''' С другой стороны, [[PartDesign Workbench/ru|верстак PartDesign]] предлагает более современный процесс создания фигур: он использует параметрически заданные эскизы, которые выдавливаются для формирования базовых твёрдых тел, которые потом модифицируются параметрическими трансформациями ([[feature editing/ru|редактирования свойств]]) до получения конечного объекта.
Line 18: Line 18:
[[Image:Part_Workbench_relationships.svg|600px]]
[[Image:Part_Workbench_relationships.svg|600px]]


{{Caption|Верстак Part Workbench это базовый слой, предоставляющий чертёжные функции OCCT всем верстакам FreeCAD}}
{{Caption|Верстак Part Workbench это базовый слой, предоставляющий чертёжные функции OCCT всем верстакам FreeCAD.}}


== Инструменты ==
== Инструменты ==
Line 33: Line 33:
* [[Image:Part_Cone.svg|32px]] [[Part_Cone/ru|Конус]]: Рисует конус с указанными размерами
* [[Image:Part_Cone.svg|32px]] [[Part_Cone/ru|Конус]]: Рисует конус с указанными размерами
* [[Image:Part_Torus.svg|32px]] [[Part_Torus/ru|Тор]]: Рисует тор (кольцо) с указанными размерами
* [[Image:Part_Torus.svg|32px]] [[Part_Torus/ru|Тор]]: Рисует тор (кольцо) с указанными размерами
* [[File:Part_Tube.svg|32px]] [[Part_Tube/ru|Tube]]: рисует трубу, задав ее внутренний и внешний радиус. {{Version|0.19}}
* [[Image:Part_Primitives.svg|32px]] [[Part_Primitives/ru|Создать примитивы]]: Инструмент добавления любого из определённых геометрических примитивов
* [[Image:Part_Primitives.svg|32px]] [[Part_Primitives/ru|Создать примитивы]]: Инструмент добавления любого из определённых геометрических примитивов
* [[Image:Part_Shapebuilder.svg|32px]] [[Part_Builder/ru|Построитель форм]]: Инструмент создания более сложных форм из различных параметрических геометрических примитивов
* [[Image:Part_Shapebuilder.svg|32px]] [[Part_Builder/ru|Построитель форм]]: Инструмент создания более сложных форм из различных параметрических геометрических примитивов
Line 49: Line 50:
* [[Image:Part_Sweep.svg|32px]] [[Part_Sweep/ru|Сдвиг]]: Развёртывает один или более профилей вдоль заданной трассы
* [[Image:Part_Sweep.svg|32px]] [[Part_Sweep/ru|Сдвиг]]: Развёртывает один или более профилей вдоль заданной трассы


* [[Image:Part_CompOffsetTools.png|48px]] [[Part_CompOffsetTools/ru|Offset tools]]:
* [[Image:Part_CompOffsetTools.png|48px]] [[Part_CompOffsetTools/ru|Инструменты смещения]]:
** [[Image:Part_Offset.svg|32px]] [[Part_Offset/ru|Смещение]]: Создаёт увеличенную копию оригинального объекта
** [[Image:Part_Offset.svg|32px]] [[Part_Offset/ru|Смещение 3D]]: Создаёт увеличенную копию оригинального объекта
** [[Image:Part_Offset2D.svg|32px]] [[Part_Offset2D/ru|2D Offset]]: Создает параллельный провод на определенном расстоянии от оригинала или увеличивает/сжимает плоскую грань. {{Version|0.17}}
** [[Image:Part_Offset2D.svg|32px]] [[Part_Offset2D/ru|2D смещение]]: Создает параллельный провод на определенном расстоянии от оригинала или увеличивает/сжимает плоскую грань. {{Version|0.17}}


* [[Image:Part_Thickness.svg|32px]] [[Part_Thickness/ru|Толщина]]: Назначает толщину поверхностям формы.
* [[Image:Part_Thickness.svg|32px]] [[Part_Thickness/ru|Толщина]]: Назначает толщину поверхностям формы.


* [[Image:Part_ProjectionOnSurface.png|32px]] [[Part_ProjectionOnSurface/ru|Projection on surface]]: создаёт проекцию логотипа, текста или любой грани, полилинии, кромки на поверхность. С проекцией можно сделаь твёрдое тело или полилинию. {{Version|0.19}}
* [[File:Part_ProjectionOnSurface.svg|32px]] [[Part_ProjectionOnSurface/ru|Projection on surface]]: создаёт проекцию логотипа, текста или любой грани, полилинии, кромки на поверхность. С проекцией можно сделаь твёрдое тело или полилинию. {{Version|0.19}}


* [[Image:Part_Compound.svg|48px]] [[Part_CompCompoundTools/ru|Compound Tools]]:
* [[Image:Part_Compound.svg|48px]] [[Part_CompCompoundTools/ru|Соединить]]:
** [[Image:Part_Compound.svg|32px]] [[Part_Compound/ru|Make compound]]: Создаёт объект, соединяющий в себе выбранные объекты.
** [[Image:Part_Compound.svg|32px]] [[Part_Compound/ru|Сделать соединение]]: Создаёт объект, соединяющий в себе выбранные объекты.
** [[Image:Part_ExplodeCompound.svg|32px]] [[Part_ExplodeCompound/ru|Explode Compound]]: Tool to split up compounds of shapes
** [[Image:Part_ExplodeCompound.svg|32px]] [[Part_ExplodeCompound/ru|Разъединить соединение]]: Инструмент расщепления соединения фигур
** [[Image:Part Compound‏‎Filter.svg|32px]] [[Part Compound‏‎Filter/ru|Compound Filter]]: The CompoundFilter can be used to extract the individual pieces.
** [[Image:Part Compound‏‎Filter.svg|32px]] [[Part Compound‏‎Filter/ru|Фильтр соединений]]: Фильтр соединений может использоваться для выделения отдельных частей.


* [[Image:Part_Booleans.svg|32px]] [[Part_Boolean/ru|Boolean]]: Производит булевы операции над объектами
* [[Image:Part_Booleans.svg|32px]] [[Part_Boolean/ru|Boolean]]: Производит булевы операции над объектами
* [[Image:Part_Fuse.svg|32px]] [[Part_Union/ru|Объединение]]: Сплавляет (объединяет) два объекта
* [[Image:Part_Fuse.svg|32px]] [[Part_Union/ru|Объединение]]: Сплавляет (объединяет) два объекта
* [[Image:Part_Common.svg|32px]] [[Part_Common/ru|Пересечение]]: Извлекает общую часть (пересечение) двух объектов
* [[Image:Part_Common.svg|32px]] [[Part_Common/ru|Пересечение]]: Извлекает общую часть (пересечение) двух объектов
* [[Image:Part_Cut.svg|32px]] [[Part_Cut/ru| Обрезать]]: Обрезает (вычитает) один объект из другого
* [[Image:Part_Cut.svg|32px]] [[Part_Cut/ru|Обрезать]]: Обрезает (вычитает) один объект из другого


* [[Image:Part_CompJoinFeatures.png|48px]] [[Part CompJoinFeatures/ru|Join features]]: Сложные сопряжения для объектов со стенками (Например, труб) {{Version|0.16}}
* [[Image:Part_CompJoinFeatures.png|48px]] [[Part CompJoinFeatures/ru|Join features]]: Сложные сопряжения для объектов со стенками (Например, труб) {{Version|0.16}}
Line 73: Line 74:


* [[Image:Part_CompSplittingTools.png|48px]] [[Part CompSplittingTools/ru|Splitting tools]]: {{Version|0.17}}
* [[Image:Part_CompSplittingTools.png|48px]] [[Part CompSplittingTools/ru|Splitting tools]]: {{Version|0.17}}
** [[Image:Part_BooleanFragments.svg|32px]] [[Part_BooleanFragments/ru|Boolean fragments]]:делает все части, которые могут быть получены с помощью логических операций между объектами {{Version|0.17}}
** [[Image:Part_BooleanFragments.svg|32px]] [[Part_BooleanFragments/ru|Boolean fragments]]: создаёт все фрагменты, которые могут быть получены булевыми операциями между объектами {{Version|0.17}}
** [[Image:Part SliceApart.svg|32px]] [[Part_SliceApart/ru|Slice a part]]: инструмент для разделения фигур путем пересечения с другими формами
** [[Image:Part SliceApart.svg|32px]] [[Part_SliceApart/ru|Slice a part]]: инструмент для разделения фигур путем пересечения с другими фигурами
** [[Image:Part_Slice.svg|32px]] [[Part_Slice/ru|Slice]]: Разбивает объект на части путем пересечения с другим объектом {{Version|0.17}}
** [[Image:Part_Slice.svg|32px]] [[Part_Slice/ru|Slice]]: разбивает объект на части путем пересечения с другим объектом {{Version|0.17}}
** [[Image:Part_XOR.svg|32px]] [[Part_XOR/ru|XOR]]: удаляет пространство, разделенное четным числом объектов (симметричная версия [[Part_Cut/ru|Cut]]) {{Version|0.17}}
** [[Image:Part_XOR.svg|32px]] [[Part_XOR/ru|XOR]]: удаляет пространство, общее для чётного числа объектов (симметричная версия [[Part_Cut/ru|Cut]]) {{Version|0.17}}


* [[Image:Part Defeaturing.svg|32px]] [[Part_Defeaturing/ru|Defeaturing]]: {{Version|0.18}}
* [[Image:Part Defeaturing.svg|32px]] [[Part_Defeaturing/ru|Удаление элемента]]: {{Version|0.18}}
* [[Image:Part_Section.svg|32px]] [[Part_Section/ru|Section]]: Создает сечение, как пересечением секущей плоскости и объекта
* [[Image:Part_Section.svg|32px]] [[Part_Section/ru|Раздел]]: Создает сечение, как пересечением секущей плоскости и объекта
* [[Image:Part_CrossSections.svg|32px]] [[Part_SectionCross/ru|Поперечные сечения...]]: Создаёт одно или более поперечных сечений через выбранную форму
* [[Image:Part_CrossSections.svg|32px]] [[Part_SectionCross/ru|Поперечные сечения...]]: Создаёт одно или более поперечных сечений через выбранную форму
* [[Image:Part Attachment.svg|32px]] [[Part Attachment/ru|Attachment]]: утилита для прикрепления одного объекта к другому.
* [[Image:Part Attachment.svg|32px]] [[Part Attachment/ru|Attachment]]: утилита для прикрепления одного объекта к другому.
Line 85: Line 86:
=== Измерение ===
=== Измерение ===


[[File:Std Measure Menu.png|64px]] [[Std Measure Menu/ru|Measure]]: Обеспечивает линейные и угловые измерения между точками, рёбрами и гранями.
[[File:Part Measure Menu.png|64px]] [[Part Measure Menu/ru|Measure]]: Обеспечивает линейные и угловые измерения между точками, рёбрами и гранями.


* [[Image:Part_Measure_Linear.svg|32px]] [[Part_Measure_Linear/ru|Measure Linear]] позволяет делать линейные изменения.
* [[Image:Part_Measure_Linear.svg|32px]] [[Part_Measure_Linear/ru|Measure Linear]] позволяет делать линейные изменения.
Line 97: Line 98:
===Прочие инструменты===
===Прочие инструменты===


<div class="mw-translate-fuzzy">
* [[Image:Part_Import.svg|32px]] [[Part Import/ru|Импорт]]: Этот инструмент позволяет добавить в текущий документ файл *.IGES, *.STEP, *.BREP.
* [[Image:Part_Import.svg|32px]] [[Part Import/ru|Импорт]]: Этот инструмент позволяет добавить в текущий документ файл *.IGES, *.STEP, *.BREP.
* [[Image:Part_Export.svg|32px]] [[Part Export/ru|Экспорт]]: Этот инструмент позволяет экспортировать деталь в формате *.IGES, *.STEP, *.BREP.
* [[Image:Part_Export.svg|32px]] [[Part Export/ru|Экспорт]]: Этот инструмент позволяет экспортировать деталь в формате *.IGES, *.STEP, *.BREP.
Line 104: Line 106:
* [[Part ConvertToSolid/ru|Convert to solid]]: Преобразует форму в твердое тело.
* [[Part ConvertToSolid/ru|Convert to solid]]: Преобразует форму в твердое тело.
* [[Part ReverseShapes/ru|Обратная фигура]]: Отражает нормали всех граней выбранного объекта.
* [[Part ReverseShapes/ru|Обратная фигура]]: Отражает нормали всех граней выбранного объекта.
</div>


* создать копию:
* создать копию:
* [[Image:Part_SimpleCopy‎.svg|32px]] [[Part CreateSimpleCopy/ru|Создать простую копию]]: Создаёт простую копию выбранного объекта.
* [[Image:Part_SimpleCopy‎.svg|32px]] [[Part SimpleCopy/ru|Создать простую копию]]: Создаёт простую копию выбранного объекта.
** [[File:Part_TransformedCopy.svg|32px]] [[Part_TransformedCopy/ru|Create transformed copy]]: creates a transformed copy of the selected object. {{Version|0.19}}
** [[File:Part_TransformedCopy.svg|32px]] [[Part_TransformedCopy/ru|Create transformed copy]]: creates a transformed copy of the selected object. {{Version|0.19}}
** [[File:Part_ElementCopy.svg|32px]] [[Part_ElementCopy/ru|Create shape element copy]]: creates a copy from an element (vertex, edge, face) of the selected object. {{Version|0.19}}
** [[File:Part_ElementCopy.svg|32px]] [[Part_ElementCopy/ru|Create shape element copy]]: creates a copy from an element (vertex, edge, face) of the selected object. {{Version|0.19}}
Line 113: Line 116:
* [[Image:Part_CheckGeometry.svg|32px]] [[Part CheckGeometry/ru|Проверка геометрии]]: Проверяет геометрию выбранных объектов на ошибки.
* [[Image:Part_CheckGeometry.svg|32px]] [[Part CheckGeometry/ru|Проверка геометрии]]: Проверяет геометрию выбранных объектов на ошибки.


=== Context menu items ===
== Настройки ==


*[[Std_SetAppearance|Appearance]]: determines appearance of the whole part (color transparency etc.).
* [[Image:Preferences-import-export.svg|32px]] [[Import_Export_Preference|Preference ...]] Import Export
* [[File:Part_ColorFace.svg|32px]] [[Part_FaceColors|Set colors]]: assigns colors to part faces.


== Настройки ==
== Геометрические концепции OCCT ==


<!--The PartDesign preferences are defined in the Part workbench and both the PartDesign workbench and the Part workbench use them-->
В терминологии OpenCascade геометрические примитивы и (топологические) формы различны. Геометрическим примитивом может быть точка, линия, окружность, плоскость и т.д. , или даже более сложные типы, такие как кривая B-сплайна или поверхность. Формой может быть вешина, ребро, сеть , грань, твердое тело или соединение всего этого. Геометрические примитивы не созданы специально для того чтобы отображаться на 3D сцене, они используются в качестве строительной геометрии форм. Для примера, ребро можно построить из линии или же из части окружности.
* [[Image:Preferences-part_design.svg|32px]] [[PartDesign_Preferences/ru|Preferences]]: предпочтения, доступные для инструментов Part (верстак Part также использует установки PartDesign).

* [[Image:Preferences-import-export.svg|32px]] [[Import_Export_Preferences/ru|Import Export Preferences]]: настройки, доступные для импорта и экспорта в различные форматы файлов.
В общем, геометрические примитивы это "бесформенные" строительные блоки, а [[Part_TopoShape|топологические формы]] это реальные объекты, построенные на них.
* [[Fine-tuning/ru|Fine-tuning]]: некоторые дополнительные параметры для тонкой настройки поведения Part.

Полный список всех примитивов и форм находится в [http://www.opencascade.org/org/doc/ документации OCC] в разделах Geom_Geometry и TopoDS_Shape. (Альтернатива: [http://opencascade.sourcearchive.com/documentation/6.3.0.dfsg.1-1/classes.html sourcearchive.com]) и поиск '''Geom_*''' (для геометрических примитивов) и '''TopoDS_*''' (для форм). Также вы больше сможете узнать о различиях между ними. Обратите внимание, что к сожалению документация OCC не доступна в Интернете(вы должны скачать архив) и в основном направлена на программистов, а не на конечных пользователей. Но надеемся, что вы найдете здесь достаточно информации для начала.

Геометрические типы на самом деле можно разделить на две основные группы: кривые и поверхности. Из кривых (линия, окружность, ...) вы непосредственно можете строить ребра, из поверхностей (плоскость, цилиндр, ...) могут быть построены грани. Например, такой геометрический примитив как линия - бесконечен, т.е. он задается только вектором направления в то время, как его форма должна быть представлено чем-то ограниченым обладающим начальной и конечной точкой. Также и box -- твердое тело -- которое может быть создано из шести ограниченых плоскостей.

От ребра или грани, вы также можете вернутся к геометрическим примитивам из которых они состоят.

Таким образом, из форм вы можете построить очень сложные детали или , или наоборот, извлечь все субформы из созданой сложной формы.

[[File:Part_TopoShape_relationships.svg|600px]]

{{Caption|The {{incode|Part::TopoShape}} class is the geometrical object that is seen on screen. Essentially all workbenches use these [[Part_TopoShape|TopoShapes]] internally to build and display edges, faces, and solids.}}


== Написание сценариев ==
== Написание сценариев ==


{{Emphasis|See also:}} [[Part scripting|Part scripting]]
Смотри [[Part scripting/ru|Part scripting]]


==Учебники==
Основным структурой данных в модуле Деталей является [http://en.wikipedia.org/wiki/Boundary_representation BRep] тип данных из OpenCascade.
Все содержащиеся в модуле Деталей типы объектов и функции доступны в сценариях на [[Python/ru|Python]]. Это включает в себя геометрические примитивы, такие как Линия[Line] и Окружность[Circle] (или Дуга[Arc]), и целый ряд TopoShapes, таких как Вершины[Vertexes], Ребра[Edges], Сетки[Wires], Грани[Faces], Тела[Solids] и Составные объекты[Compounds]. Каждый из этих объектов, можно создать несколькими способами, и для некоторых из них особенно для TopoShapes, существуют продвинутые операции например логическое сложение/вычитание/пересечение которые также доступны. Чтобы знать больше изучите содержание модуля Деталей, описанное на странице [[FreeCAD Scripting Basics/ru|Основы написания сценариев в FreeCAD]] .


The most basic object that can be created is a [[Part Feature|Part Feature]], which has a simple {{PropertyData|Placement}} property, and basic properties to define its color and appearance.

Another simple object used in 2D geometrical objects is [[Part Part2DObject|Part Part2DObject]], which is the base of [[Sketcher_SketchObject|Sketcher SketchObject]] ([[Sketcher Workbench|Sketcher]]), and most [[Draft Workbench|Draft elements]].

=== Test script ===

Test the creation of [[Part_Primitives|Part Primitives]] with a script. {{Version|0.19}}

{{Code|code=
import parttests.part_test_objects as pto
pto.create_test_file("example_file")
}}

This script is located in the installation directory of the program, and can be examined to see how the basic primitives are built.
{{Code|code=
$INSTALL_DIR/Mod/Part/parttests/part_test_objects.py
}}

=== Примеры ===

Чтобы создать элемент - линию перейдите в консоль Python и введите:

{{Code|code=
import Part,PartGui
doc=App.newDocument()
l=Part.LineSegment()
l.StartPoint=(0.0,0.0,0.0)
l.EndPoint=(1.0,1.0,1.0)
doc.addObject("Part::Feature","Line").Shape=l.toShape()
doc.recompute()
}}

Давайте по подробней, по шагам рассмотрим пример выше:

{{Code|code=
import Part,PartGui
doc=App.newDocument()
}}

загружает модуль деталей и создает новый документ

{{Code|code=
l=Part.LineSegment()
l.StartPoint=(0.0,0.0,0.0)
l.EndPoint=(1.0,1.0,1.0)
}}

Линия на самом деле - отрезок, следовательно задаем начальную и конечную точку.

{{Code|code=
doc.addObject("Part::Feature","Line").Shape=l.toShape()
}}

Это добавляет объект типа Деталь[Part] в документ и назначает форму представления отрезка в свойстве 'Shape' добавленного объекта. Важно понять, здесь мы использовали геометрический примитив (the Part.lineSegment) чтобы создать TopoShape в конце (используя toShape() метод). Только Формы могут быть добавлены в документ. В FreeCAD, геометрические примитивы используются как "строительные конструкций" для Форм.

{{Code|code=
doc.recompute()
}}

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

Заметим что Линия[Line] Segment может быть создана специфическим способом, заданием её начальной и конечной точки напрямую, пример Part.LineSegment(point1,point2) или же мы можем задать линию по умолчанию и задать её свойства позже, как мы и сделали здесь.

A Line can be created also using:

{{Code|code=
import FreeCAD
import Part
DOC = FreeCAD.newDocument()

def mycreateLine(pt1, pt2, objName):
obj = DOC.addObject("Part::Line", objName)
obj.X1 = pt1[0]
obj.Y1 = pt1[2]
obj.Z1 = pt1[2]

obj.X2 = pt2[0]
obj.Y2 = pt2[1]
obj.Z2 = pt2[2]

DOC.recompute()
return obj

line = mycreateLine((0,0,0), (0,10,0), "LineName")

}}



окружность может быть создана схожим образом:

{{Code|code=
import Part
doc = App.activeDocument()
c = Part.Circle()
c.Radius=10.0
f = doc.addObject("Part::Feature", "Circle")
f.Shape = c.toShape()
doc.recompute()
}}

or using:

{{Code|code=
import FreeCAD
import Part
DOC = FreeCAD.newDocument()

def mycreateCircle(rad, objName):
obj = DOC.addObject("Part::Circle", objName)
obj.Radius = rad

DOC.recompute()
return obj

circle = mycreateCircle(5.0, "CircleName")

}}


Опять же заметим, мы использовали окружность (геометрический примитив) чтобы создать из неё форму. Конечно мы можем получить доступ к нашей строительной геометрии потом, выполнив:

{{Code|code=
s = f.Shape
e = s.Edges[0]
c = e.Curve
}}

Здесь мы извлекаем форму нашего объекта f, долее забираем выводим список ребер, в нашем случае будет только одна, потому что мы создали форму из одного оеружности, поэтому мы получим только одну запись в списке ребер, и мы выводим кривую. Каждое ребро это кривая, которая является геометрическим примитивом на котором оно основано.

Читайте главу [[Topological data scripting/ru|Topological data scripting]] чтобы узнать больше.

== Учебники ==
* [[Import_from_STL_or_OBJ/ru|Импорт из STL или OBJ]] : Как импортировать файлы STL/OBJ в FreeCAD
* [[Import_from_STL_or_OBJ/ru|Импорт из STL или OBJ]] : Как импортировать файлы STL/OBJ в FreeCAD
* [[Export_to_STL_or_OBJ/ru|Экспорт в STL или OBJ]] : Как экспортировать в FreeCAD файлы STL/OBJ
* [[Export_to_STL_or_OBJ/ru|Экспорт в STL или OBJ]] : Как экспортировать в FreeCAD файлы STL/OBJ
* [[Whiffle_Ball_tutorial/ru|Whiffle Ball tutorial]] : Как использовать модуль Part
* [[Whiffle_Ball_tutorial/ru|Whiffle Ball tutorial]] : Как использовать модуль Part



{{Docnav/ru
{{Docnav/ru
Line 286: Line 146:
}}
}}


{{Part Tools navi{{#translation:}}}}


{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

{{Part Tools navi{{#translation:}}}}

[[Category:Workbenches{{#translation:}}]]
[[Category:Workbenches{{#translation:}}]]

Revision as of 08:01, 19 October 2020

Part workbench icon

Введение

Возможности твердотельного моделирования FreeCAD базируются на ядре OpenCASCADE Technology (OCCT), системе САПР профессионального качества с возможностями продвинутого создания и манипулирования трёхмерными объектами. Верстак Part это слой, базирующийся на библиотеках OCCT, дающие пользователям доступ к примитивам и функциям OCCT. Практически все функции двумерного и трёхмерного черчения в каждом верстаке ( Draft, Sketcher, PartDesign и т.д.) базируются на этих функциях, предоставляемых верстаком Part. Следовательно, верстак Part считается центральным компонентом возможностей моделирования FreeCAD.

Объекты, создаваемые верстаком Part относительно просты, они предназначены для использования в булевых операциях (объединения и вырезания) для построения более сложных фигур. Эта парадигма моделирования известна как процесс конструктивной блочной геометрии (CSG, КБГ), и это традиционная методология, используемая в ранних системах САПР. С другой стороны, верстак PartDesign предлагает более современный процесс создания фигур: он использует параметрически заданные эскизы, которые выдавливаются для формирования базовых твёрдых тел, которые потом модифицируются параметрическими трансформациями (редактирования свойств) до получения конечного объекта.

Объекты Part сложнее, чем сеточные объекты, создаваемые в верстаке Mesh, поскольку они дают более сложные операции вроде когерентных булевых операций, историю модификации и параметрическое поведение.

Верстак Part Workbench это базовый слой, предоставляющий чертёжные функции OCCT всем верстакам FreeCAD.

Инструменты

Инструменты модуля деталей расположены в меню Деталь.

Примитивы

Эти инструменты создают примитивные объекты.

  • Куб: Рисует прямоугольный параллелепипед с указанными размерами
  • Цилиндр: Рисует цилиндр с указанными размерами
  • Сфера: Рисует сферу с указанными размерами
  • Конус: Рисует конус с указанными размерами
  • Тор: Рисует тор (кольцо) с указанными размерами
  • Tube: рисует трубу, задав ее внутренний и внешний радиус. introduced in version 0.19
  • Создать примитивы: Инструмент добавления любого из определённых геометрических примитивов
  • Построитель форм: Инструмент создания более сложных форм из различных параметрических геометрических примитивов

Изменение объектов

Это инструменты для изменения существующих объектов. Они позволяют вам выбирать, какой объект вы будете изменять.

  • Выдавить: Вытягивает плоские грани объекта
  • Вращать: Создает объект вращением одного объекта вокруг оси
  • Зеркальное отражение: Отражает выбранные объекты на данной зеркальной плоскости
  • Скругление: Скругляет ребра объекта
  • Фаска: Делает фаску на гранях объектов
  • Создать линейчатую поверхность: Этот инструмент создает линейчатую поверхность между двумя линиями или краями выбранных выше.
  • Лофт: Выполняет лофтинг от одного профиля к другому
  • Сдвиг: Развёртывает один или более профилей вдоль заданной трассы
  • Толщина: Назначает толщину поверхностям формы.
  • Projection on surface: создаёт проекцию логотипа, текста или любой грани, полилинии, кромки на поверхность. С проекцией можно сделаь твёрдое тело или полилинию. introduced in version 0.19
  • Boolean: Производит булевы операции над объектами
  • Объединение: Сплавляет (объединяет) два объекта
  • Пересечение: Извлекает общую часть (пересечение) двух объектов
  • Обрезать: Обрезает (вычитает) один объект из другого

Измерение

File:Part Measure Menu.png Measure: Обеспечивает линейные и угловые измерения между точками, рёбрами и гранями.

  • Measure Linear позволяет делать линейные изменения.
  • Measure Angular позволяет делать угловые измерения.
  • Measure Refresh обновляет измерения на экране.
  • Clear All очищает все измерения.
  • Toggle All показывает или скрывает все измерения.
  • File:Part Measure Toggle 3d.svg Toggle 3D показывает или скрывает трёхмерные измерения.
  • Toggle Delta показывает или скрывает дельта-измерения.

Прочие инструменты

Context menu items

  • Appearance: determines appearance of the whole part (color transparency etc.).
  • Set colors: assigns colors to part faces.

Настройки

  • Preferences: предпочтения, доступные для инструментов Part (верстак Part также использует установки PartDesign).
  • Import Export Preferences: настройки, доступные для импорта и экспорта в различные форматы файлов.
  • Fine-tuning: некоторые дополнительные параметры для тонкой настройки поведения Part.

Написание сценариев

Смотри Part scripting

Учебники